문제

누구든지 경험이 있거나 지식이 있습니까? VFP에서 .NET 컴파일러?

광범위한 VFP9 응용 프로그램을 보유한 회사에서 일하고 있으며 .NET에서 앱을 실행할 수있는 빠른 방법을 찾고 있습니다. 이 컴파일러가 실행 가능한 옵션인지 확인하기 위해이 컴파일러를 확인하라는 요청을 받았지만 지금까지는 "Hello World"세계 애플리케이션조차도 실행되지 않습니다.

그 마지막 발언에 자격을 갖추기 위해 : 정말 간단한 Fox 앱을 "컴파일"할 수 있지만 생성 된 .NET 실행 파일은 성공적으로 실행되지 않습니다. 소스를 해부하여 C#으로 바꾸었지만 일반적으로 많은 오류가 포함되어 있습니다 (100+).

나는 전체 기술을 손에서 무시하고 싶은 유혹을 받고 있지만 Fox 사용자 커뮤니티에 대한 흥분과 흥분에 대한 많은 지원이있는 것 같습니다. 누구든지 이것에 대한 통찰력이 있습니까?

여기에 있습니다 링크 VFP에서 .NET 컴파일러로

도움이 되었습니까?

해결책

이제 VFP에서 .NET 컴파일러에 대한 경험이 있습니다. 여기.

이것은 실제로 .NET의 컴파일러이며 COM Interop 또는 웹 서비스와 관련이 없습니다. 모든 것은 Compiler와 함께 제공되는 SharpDevelop을 중심으로 제작되었습니다. 효과적으로 SharpDevelop을 발사하고 FoxPro PRG를 입력 할 수 있습니다. Intellisense에는 가득 차 있으며 모든 Fox 명령과 기능이 지원되는 경우가 많습니다. 컴파일을 때리면 다른 쪽에서 나오는 것은 전체 .NET 어셈블리입니다.

어셈블리를 실행하면 VFP 인스턴스가없고 COM 인터 로프가 보이지 않습니다. 어떻게 작동합니까? 그 뒤에있는 사람들은 Fox 함수에 매핑되는 .NET 함수를 만들었습니다. 예를 들어 strtofile ()를 호출하는 경우 실제로 실행되는 코드입니다 (반사판의 불가사의가 가져 왔음).

public static void StrToFile(string cExpression, string cFileName)
{
    if (File.Exists(cFileName))
    {
        File.Delete(cFileName);
    }
    FileStream stream = new FileStream(cFileName, FileMode.CreateNew, FileAccess.ReadWrite);
    StreamWriter writer = new StreamWriter(stream);
    writer.Write(cExpression);
    writer.Flush();
    writer.Close();
    stream.Close();
}

이것이 의미하는 바는 Fox에서 매우 생산적이지만 필요한 .NET 솔루션이라면 FOX에서 코딩하고 .NET 어셈블리를 생성 할 수 있다는 것입니다.

그러나 모든 것이 위의 strtofile 예만큼 멋지게 구현되는 것은 아니기 때문에 약간의주의를 기울일 것입니다. Fox 형태와 같은 모델을 모델링하는 방식은 매우 끔찍하지만 (기존 Fox 형태를 취하여 SharpDevelop에 추가하여 .NET 형식으로 바꿀 수 있음). 누군가가 더 자세한 내용을 원한다면 이것에 대해 기꺼이 확장 할 것입니다.

다른 팁

VFP는 .NET 제품에 직접 "컴파일"하지 않습니다. 그러나 COM을 통해이를 통해 단일 또는 멀티 스레드 DLL로 프로젝트를 만들 수 있습니다.

define class MyVFPForDotNet as custom OLEPUBLIC
  cSomeProperty = ""
  nOtherProperty = ""

  Function Init()
     cSomeProperty = curdir()

  endfunc

  Function SendBackAMessage()
     return "Hello World"
  endfunc

  function CallWithParms( cParm1 as String, nParm2 as Integer, dSomeDate as DateTime )
     .. do whatever

     return "whatever"
  endfunc

enddefine

그런 다음 COM 인터 로프로 추가 할 수 있으며 메소드 및 속성을 .NET에서 사용할 수 있습니다. 기능은 VFP, 쿼리, 자동화 등으로 거의 모든 것을 수행 할 수 있으며 XMLADAPTER를 수행하여 XML 문자열을 생성하여 단일 또는 다중 커서 세트를 하나의 큰 청크로 또는 여러 통화로 개별적으로 반환하여 다른 방법으로 개별적으로 반환 할 수 있습니다.

행운을 빕니다.

BTW ... .NET을 통해 변환 / 액세스를 찾고있는 VFP 개발자에게는 다가오는 세미나가 제공됩니다. 하나에 http://www.oakleafsd.com/, 또 다른 http://www.eps-software.com/

.NET의 VFP Developer Studio의 양식에 대한 추가 정보 : Etecnologia는 SharpDevelop에서 VFP 양식으로 설계된 양식이 선택적으로 SVG로 컴파일 될 것이라고 발표했습니다. SVG를 SWF로 변환합니다. 또한 이전에 SharpDevelop에서 설계된 VFP 양식을 위해 XAML을 출력하기 위해 최선을 다했습니다. 또한 .NET 제어, COM 컨트롤 및 Java 컨트롤이 모두 개발자 스튜디오와 함께 제공되는 사용자 정의 #D로 설계된 VFP 양식에서 모두 사용할 수 있다고 들었습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top