如何在OSX中从终端运行Windows.Forms C#程序?

如何在OSX中从终端运行Windows.Forms C#程序?,c#,.net,macos,winforms,mono,C#,.net,Macos,Winforms,Mono,我在学校的C#课程中必须使用System.Windows.Forms,但我拥有一台Macbook,Visual Studio说它不存在。我读到,如果我安装了Mono,然后使用mcs hello.cs-pkg:dotnet从终端编译并运行它,我就可以使用WinForms。“hello.cs”只是一个hello World程序,使用System.Windows.Forms。。。它可以编译,但当我执行mono hello.exe时,它会显示: WARNING: The Carbon driver ha

我在学校的C#课程中必须使用System.Windows.Forms,但我拥有一台Macbook,Visual Studio说它不存在。我读到,如果我安装了Mono,然后使用
mcs hello.cs-pkg:dotnet
从终端编译并运行它,我就可以使用WinForms。“hello.cs”只是一个hello World程序,使用System.Windows.Forms。。。它可以编译,但当我执行mono hello.exe时,它会显示:

WARNING: The Carbon driver has not been ported to 64bits, and very few 
parts of Windows.Forms will work properly, or at all
。。。然后是一堆我会留在这里的东西

在OSX | Mono网站上,他们说为了使用Windows.Forms,Mono的体系结构必须是32位,要改变它,我必须这样做:
Mono--arch=32
,但当我这样做时,它似乎什么都没做,如果我编译它并再次运行“hello.exe”,它会打印出我前面提到的内容

请帮帮我!我的Mac电脑很旧,不能在上面运行Windows。

使用旧的
mcs
编译器编译代码:

/Library/Frameworks/Mono.framework/Commands/mcs -pkg:dotnet ./hello.cs
/Library/Frameworks/Mono.framework/Commands/csc ./hello.cs
Microsoft (R) Visual C# Compiler version 2.3.1.61919 (57c81319)
Copyright (C) Microsoft Corporation. All rights reserved.
或者使用较新的基于Rosyln的
csc
编译器:

/Library/Frameworks/Mono.framework/Commands/mcs -pkg:dotnet ./hello.cs
/Library/Frameworks/Mono.framework/Commands/csc ./hello.cs
Microsoft (R) Visual C# Compiler version 2.3.1.61919 (57c81319)
Copyright (C) Microsoft Corporation. All rights reserved.
使用
mono
--arch=32
选项运行它:

/Library/Frameworks/Mono.framework/Commands/mono --arch=32 ./hello.exe
或使用mono32:

/Library/Frameworks/Mono.framework/Commands/mono32 ./hello.exe

我没有Mac电脑,也没有任何想法,但我会问一个简单的问题:你是重新编译并尝试再次运行还是只是再次运行?我不知道这是否会有帮助,但我认为这值得一提。是的,伙计,我试过了,但仍然不起作用。谢谢你的回答!几分钟后它工作得很好。