使用System.Windows.Forms破坏Mono C#代码

Pet*_*ton 8 c# compiler-construction mono winforms

几个月前,我开始使用Mono编译的一个相对简单的C#应用​​程序.

我今天尝试恢复这方面的工作,尽管有一个可执行文件证明它编译好之前,它现在抱怨System.Windows.Forms

C:\ Program Files\Mono-2.0.1\bin> mcs ../projects/test_1/test.cs
../projects/test_1/test.cs(2,14):错误CS0234:类型或命名空间名称'命名空间`System'中不存在Windows'.你错过了装配参考吗?
编译失败:1个错误,0个警告

我找到了一个有相同错误的人的论坛帖子,这是推荐的:

mcs Program.cs -r:System.Windows.Forms.dll -r:System.Drawing.dll -v2

但是,-v2参数不起作用,没有它,只有一系列其他命名空间错误(ToolStripButton和类似).

我已经下载了最新的Mono 2.2但这仍然会产生相同的错误.

我该如何解决?

d0k*_*d0k 9

gmcs Program.cs -r:System.Windows.Forms.dll -r:System.Drawing.dll
Run Code Online (Sandbox Code Playgroud)

gmcs 使用.NET 2.0配置文件.

  • 仿制药.最初编译器是mcs的fork/branch来添加泛型.最终,C#2.0中的所有内容都被放入其中.它后来与mcs合并,但是很多人习惯于调用gmcs,名字没有丢弃. (2认同)