问题描述
有这么一个C#程序调用CL来编译C文件,就是在程序里用打开CMD进程,然后调用CL命令来编译。因为我是在自己机子上配置好了环境变量,所以能识别CL命令,而对于那些默认情况下不识别CL命令的自己,我要怎么做啊?在代码里设定环境变量么?我问过网上一个人,说是可以将CL编译器和自己的程序打包在一起。请问怎么打包啊。或者这2个思路都是错的。。求大侠指导一下。
解决方案
解决方案二:
将CL编译器以及依赖项和自己的程序放在一起发布,然后将命令cl换成CL编译器的具体地址如:"clXXXX"->"C:\cl.exeXXXX"
解决方案三:
因为VisualC++不是免费的,所以直接捆绑C1或者VC++编译器的一部分可能是非法的。不过这样做的确可行。你可以使用setpath命令来设置环境变量。具体做法可以参考MSDN中C++编译器命令。
解决方案四:
代码里可以设置Environment.SetEnvironmentVariableMethod(String,String)Creates,modifies,ordeletesanenvironmentvariablestoredinthecurrentprocess.
时间: 2024-09-16 20:18:02