首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >F#以编程方式运行.fsx脚本文件

F#以编程方式运行.fsx脚本文件
EN

Stack Overflow用户
提问于 2011-04-13 08:23:19
回答 2查看 2.2K关注 0票数 6

我相信这一定很容易,但我似乎不能让它工作。假设我有一个.fsx脚本文件,并希望以编程方式执行它。我猜一定有人在博客上提到过这一点,但我似乎找不到一个例子来执行我的简单场景。基本上,我想以编程方式复制当您右键单击.fsx文件并选择“使用F#交互运行...”时发生的事情。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-04-14 03:51:45

正如评论中所要求的,您可以将UseShellExecute设置为false,以避免打开Windows shell。这样,您就可以将输出直接放在F# shell中:

代码语言:javascript
复制
open System.Diagnostics

let execScript script =
    let psi = new ProcessStartInfo(@"c:\Program Files\Microsoft F#\v4.0\Fsi.exe")
    psi.Arguments <- script
    psi.UseShellExecute <- false
    let p = Process.Start(psi)
    p.WaitForExit()
    p.ExitCode
票数 2
EN

Stack Overflow用户

发布于 2011-04-13 08:57:01

在随意摆弄了一下命令行参数之后,我终于让它工作了。我觉得回答我自己的问题有点差劲,但希望它仍然能帮助别人。事实证明,我的困惑是命令行参数的正确使用。如果有人有比我放的更优雅或更有用的东西,我会把答案奖励给你。

代码语言:javascript
复制
open System.Diagnostics

let launchExecutable() =
    let proc = new Process()
    proc.StartInfo.FileName <- @"C:\Program Files (x86)\Microsoft F#\v4.0\fsi.exe"
    proc.StartInfo.Arguments <- @"--exec --nologo pathToFSXFile\Test.fsx"
    proc.Start()


launchExecutable();;
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5643120

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档