2012-02-07 3 views
1

F # 스크립트 내에서 호출하려고하는 C#으로 작성된 라이브러리가 있습니다. 그러나이 라이브러리는 DevArt의 MySQL 용 dotConnect를 사용합니다.이 프로그램을 사용하는 프로그램에는 어셈블리에 포함 된 licenses.licx 파일의 특정 행이 있어야합니다.F # 스크립트와 함께 license.licx 파일을 사용 하시겠습니까?

누구나 FSI에이 라이센스에 대해 알릴 수있는 방법에 대한 아이디어가 있습니까?

+0

이것은 추측 일 뿐이지 만 스크립트 시작 부분에 [System.ComponentModel.LicenseManager] (http://msdn.microsoft.)를 통해 라이센스를로드 할 수 있습니다. .com/en-us/library/system.componentmodel.licensemanager.aspx "System.ComponentModel.LicenseManager"). –

답변

2

F #은 오픈 소스입니다. 여기에 버전이 있습니다. https://github.com/fsharp/fsharp/. 라이센스 파일로 FSI 버전을 만들 수 있습니까?

+0

고마워, 나는 이것을 시험해보고 그것이 어떻게되는지 볼지도 모른다. 네가 보낸 링크가 ​​모노를위한 것이라고 말했지, 그게 중요한가요? 나는 Windows에있어 – Bob

+0

그 링크가 잘 빌드해야합니다. http://fsharppowerpack.codeplex.com/에서 컴파일러와 fsi가 포함 된 코드도 있습니다. –

3

.licx 파일을 라이브러리를 호출하는 프로그램 (.exe)에 포함해야합니까? 아니면 dotConnect를 호출하고 fsi.exe이라는 다른 라이브러리에 포함시킬 수 있습니까?

  • 두 번째 경우에, 당신은 당신이 필요로하는 dotConnect의 기능을 호출하는 간단한 래퍼를 만들 수 있고 fsi.exe에서 래퍼를 호출합니다.

  • 첫 번째 경우에는 fsi.exe (John이 제안한대로)을 다시 컴파일 할 수 있습니다.

    더 쉬운 방법은 조립 반사를 사용하여 fsi.exe를로드하는 별도의 응용 프로그램합니다 (licx 파일을 포함)을 만든 다음 fsi.exe 상호 작용 루프를 시작 반사를 사용할 수 있습니다
    은 (난 당신이 단지 Shell의 정적 메서드 MainMain를 호출 할 수 있다고 생각 클래스 Microsoft.FSharp.Compiler.Interactive).

+0

라이브러리에 이미 임베드 된 라이센스가 있습니다. 그래서 그것은 첫 번째 사건입니다. 나는 당신의 제안을 시도하고 그것이 어떻게되는지 보게 될 것입니다. 고맙습니다 – Bob

관련 문제