2012-05-04 2 views
3

동료 컴퓨터에 간단한 f # 콘솔 앱을 배포하려하지만 계속 실패하고 있습니다. 앱 아이콘을 두 번 클릭하면 콘솔 창이 나타나지만 Microsoft 오류보고 창이 나타나 오류 보고서를 보내고 싶으면 콘솔 창에서 일부 텍스트가 깜박입니다. 오류 메시지처럼 보이지만 창이 너무 빨리 닫히지 않습니다. 이상한 점은 비슷한 C# 응용 프로그램을 만들면 작동한다는 것입니다. 릴리스 모드에서 .net 4 클라이언트 프레임 워크를 대상으로합니다. 여기 f # console 앱이 작동하지 않습니다. C# console app does

는 F # 코드가 (작동하지 않습니다) 코드입니다 :

open System 

printfn "print test" 
Console.ReadLine() |> ignore 

C# 코드 (하지 작업) :

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 

namespace TestCApplication 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 
      Console.WriteLine("Testing..."); 
      Console.ReadLine(); 
     } 
    } 
} 
+3

실행이 오류를 읽어 보시기 바랍니다. – SLaks

+0

@SLaks. 좋은 전화, 나는 그것을 생각하지 않았다. 시도해 볼게. – Brad

+2

코드에서 대상 컴퓨터에 FSharp.Core 라이브러리가 있어야합니다. 그들은 거기에 선물을합니까? –

답변

5

봐 당신은 일반적으로 다음 위치에 FSharp.Core 한 표시됩니다

C : \의 Program Files (x86) \ 참조 어셈블리 \ 마이크로 소프트 \ FSharp \ 2.0 \ 런타임 \ 4.0 \ FSharp.Core.dll 윈도우 7 (64 비트) PC

또한

런타임 다운로드를 얻기 위해 F 번호 사이트에서 볼에

.

http://research.microsoft.com/en-us/um/cambridge/projects/fsharp/release.aspx

편집 : 여기 런타임 다운로드 직접 링크 (감사 ildjarn)입니다 : 기존 콘솔 창에서

http://www.microsoft.com/en-us/download/details.aspx?id=13450

+1

해당 페이지에서 F # redist 링크가 없습니다. 직접 링크는 [여기]입니다 (http://go.microsoft.com/fwlink/?LinkID=186910). – ildjarn

+5

F # 런타임을 모두 설치하지 않으려면 FSharp.Core 참조를'Copy Local : true'로 설정하면 실행 파일 옆의 출력 디렉토리에 표시됩니다. 그냥 두 파일을 함께 복사하십시오. –

8

당신의 C# 조각의 F 번호 아날로그 것 F # 코드가 아니라 다음과 같아야합니다.

System.Console.WriteLine "print test" 
System.Console.ReadLine() |> ignore 

위의 2 줄 안의 응용 프로그램은 C# 코드 조각과 비슷하게 원시 .NET에서만 실행되지만 F # 코드에서 printfn 함수를 사용하면 특정 F # 관련 핵심 구성 요소가 대상 컴퓨터에 배포되어야합니다. 가능성이없는 경우. 후자는 관찰 된 행동을 설명합니다. 당신의 F # 프로젝트의 참조에서