我必须在学校使用System.Windows.Forms作为我的C#课程,但我拥有一台Macbook,而Visual Studio则认为它不存在。我读过如果我安装 Mono 然后使用mcs hello.cs -pkg:dotnet
从终端编译并运行它,我可以使用WinForms。 “hello.cs”只是一个使用System.Windows.Forms的Hello World程序...它编译但是当我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
...然后是一堆我将把它留在pastebin中的东西!
在OSX中| Mono网站他们说,为了使用Windows.Forms Mono的体系结构必须是32位并且要改变它我必须做的事:mono --arch=32
但是当我这样做时,它似乎没有做任何事情,如果我编译它并再次运行“hello.exe”它打印出我之前提到的相同内容。
请帮帮我!我的Mac已经老了,在它上面运行Windows不是一种选择。
答案 0 :(得分:2)
使用旧的mcs
编译器编译hello.cs
代码:
/Library/Frameworks/Mono.framework/Commands/mcs -pkg:dotnet ./hello.cs
或者使用较新的基于Rosyln的csc
编译器:
/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