Python中调用设置环境变量的bat

工做中用到一个python脚本,自动化运行某目录下的多个vc工程代码。python

编译工程代码的命令以下,直接运行会失败,系统找不到devenv,咱们须要添加devenv.exe所在的目录到环境变量中。ui

os.system( ' devenv  '+ name+   ' .sln /project  '+ name +  ' .vcproj /Rebuild "debug|win32" /Out  '+ name +  ' .cmp>nul ')

 

 

项目组已经有一个本身编写的添加各类临时环境变量的bat脚本,其中也包含vc的环境变量。因此想在python中直接先调用一下现有脚本再执行编译命令,但发现没效果。缘由听说是os.system是独立的进程,环境变量的修改对后面的语句不生效。

os.system( ' call "../../set_vs_env.bat"  ')  
os.system( ' devenv  '+ name+   ' .sln /project  '+ name +  ' .vcproj /Rebuild "debug|win32" /Out  '+ name +  ' .cmp>nul ')

 

 因此只能2个cmd命令放到一个调用中执行,也就是一次执行多个cmd,cmd命令间用&符链接。spa

cmd =  ' call "../../set_vs_env.bat" &  ' +  ' devenv  '+ name+   ' .sln /project  '+ name +  ' .vcproj /Rebuild "debug|win32" /Out  '+ name +  ' .cmp>nul '   os.system(cmd) 
相关文章
相关标签/搜索