2013-06-14 18 views
5

Jak mogę uzyskać argumenty wiersza poleceń w skompilowanym programie F #? Jest to możliwe, jeśli nie używam domyślnego szablonu zArgumenty wiersza poleceń w programie F #?

[<EntryPoint>] 
let Main(args) = ... 

Próbowałem

let args = Sys.argv

i

let args = fsi.CommandLineArgs

ale to nie działa dla mnie :-(

+2

Dlaczego nie chcesz używać tablicy args podane do swojej głównej funkcji? –

Odpowiedz

9

Jeśli nie chcesz Aby użyć tablicy args przekazanej do głównej funkcji, możesz zamiast tego użyć System.Environment.GetCommandLineArgs(). Zauważ, że będzie to nazwa programu uruchamianego jako pierwszy element, w przeciwieństwie do tablicy argumentów podanej dla twojej głównej funkcji.

open System 

[<EntryPoint>] 
let main(args) =  
    printfn "args: %A" args 
    printfn "env.cmdline: %A" <| Environment.GetCommandLineArgs()  
    0 

Uruchom jako args.exe 1 2 3 4:

args: [|"1"; "2"; "3"; "4"|] 
env.cmdline: [|"args.exe"; "1"; "2"; "3"; "4"|] 
Powiązane problemy