我在编写NPPExec脚本(用于Notepad ++)时无法使用Microsoft的csc.exe编译C#源代码。我没有问题让MinGW启动并运行我的c ++东西,但是相同的脚本结构似乎对C#不起作用。有没有人有一个有效的C#NPPExec脚本?
三个快速说明:
当我的mingw安装到没有空格的路径(\ MinGW \ bin)时,我的C#编译器似乎被隐藏在\ Program Files \中,这是一个有多个空格的路径。这有关系吗?
我能够使用Microsoft SDK安装的命令提示符进行编译(我认为它设置了一些环境变量),所以我知道编译器有效。
在NPPExec选项框中,我选择了FOLLOW $(CURRENT_DIRECTORY)。这有关系吗?
感谢。
答案 0 :(得分:16)
这是我用于C#(.NET 3.5)的nppexec脚本,用于编译当前打开的文件并运行:
"c:\WINDOWS\Microsoft.NET\Framework\v3.5\csc.exe" /out:"$(FULL_CURRENT_PATH).exe" "$(FULL_CURRENT_PATH)"
"$(FULL_CURRENT_PATH).exe"
在“插件 - > NppExec”菜单中:
Select "Save all files on execute"
Select "Follow $(CURRENT_DIRECTORY)".
您的问题的答案:
1)使用双引号(“)表示csc的完整路径,如我的配置
2)至少对于.NET 3.5,只有csc的完整路径就足够了,不需要加载VS环境变量
3)最好选择“FOLLOW $(CURRENT_DIRECTORY)”,以便编译的EXE位于同一目录下。