3

如果我需要在正常命令提示符下使用 microsoft C# 编译器,它会在此处说明如何设置环境变量(通过运行 VSVARS32.BAT)。我执行它,然后我可以运行“csc”(编译器)。但是,当我关闭运行 VSVARS32.BAT 的命令行窗口时,效果似乎消失了

有没有办法使环境变量永久化,以便我可以从应用程序运行 csc.exe?

4

4 回答 4

3

我建议您创建一个新的 .bat 文件来启动 vcvars.bat,然后是您的应用程序。这将确保正确设置环境。

于 2010-07-26T21:57:58.833 回答
1

VSVAR32.bat 文件只是修改了一些环境变量(将目录附加到路径,设置 LIB 和 INCLUDE 等)。您始终可以对主 Windows 环境进行相同的更改,以便所有后续进程(从控制面板“系统”小程序)继承它们。

相当多的其他开发工具使用相同的环境变量(包括早期的 Visual Studio 版本)。当您想在同一台 PC 上使用需要冲突设置的开发工具时,在主环境中进行配置更改并不是那么方便(这就是为什么微软将它们放在 MSVAR32.bat 中而不是修改主环境的原因)。,因此仅在需要时应用这些设置很有用,因为它们与其他开发工具所需的设置冲突。如果您想在同一台 PC 上使用不同的开发工具,将这些更改放在主环境中会出现问题。

另一种可能是让您的应用程序调用 csc.exe 以与 MSVAR32.bat 相同的方式修改它传递给子进程的环境。

于 2010-07-27T16:34:02.013 回答
0

尝试在 windows 目录下的 autoexec.NT 文件中添加运行命令。

于 2010-07-17T14:44:39.583 回答
0

就像 laurent-rpnet 所说,你可以在你的 autoexec.nt 文件中调用它。或者,您可以将它设置的环境变量添加到控制面板 | 中的列表中。系统 | 高级 | 环境变量。

或者您可以创建一个 make 文件并将它们放入其中(或调用 bat),然后使用该 make 文件从命令行构建您的项目。

于 2010-07-17T14:47:31.837 回答