【发布时间】:2015-10-15 10:41:06
【问题描述】:
我已经成功安装了带有 F# 绑定的 MonoDevelop(在 Linux Arch 下)。
如果我尝试一个简单的带有 winforms 的 HelloWorld,我会得到这个奇怪的行为:程序编译和构建成功,但是在加载窗口之后它只是自行关闭并且程序返回并且没有错误消息。
我检查了日志,似乎没有抛出任何错误(此处讨论的错误除外:GLib-CRITICAL **: Source ID XXX was not found when attempting to remove it,无论如何这似乎无关)。
程序代码:
open System.Drawing
open System.Windows.Forms
[<EntryPoint>]
let main argv =
let form = new Form(TopMost = true, Text = "Hello World")
form.Show()
0 // return an integer exit code
如果我尝试通过交互式控制台运行它,窗口就会被冻结:我可以移动它,但我无法关闭它(必须关闭 monodevelop 才能这样做)。
我也尝试通过终端编译它,使用:
fsharpc Program.fs -pkg:dotnet.dll
mono Program.exe
但它的行为方式与我在 MonoDevelop 中运行的方式相同(窗口打开然后关闭)。 除了 F# 似乎工作正常之外,我可以毫无问题地运行控制台程序。
我还尝试在 MonoDevelop 中使用 C# 运行一个简单的 HelloWorld 程序,它运行良好。
有什么建议吗?
【问题讨论】:
标签: winforms f# mono monodevelop