在python脚本中调用msbuild

时间:2013-01-25 19:16:20

标签: python visual-studio msbuild subprocess

您好我想在python脚本中执行msbuild

因为我没有在visual studio开发人员命令提示符下运行它, 我跑

 "C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\vcvarsall.bat"

然后我做

  msbuild example.props

如何在python中运行它? 我试着做

 subprocess.call('\"C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\\vcvarsall.bat\"\n')

然后致电

 subprocess.call(['msbuild', filename]) # filename is string variable

但是我收到一条错误消息,说它找不到指定的文件.. 我很确定应该有办法做到这一点,但我找不到如何.. 谢谢你的帮助!

1 个答案:

答案 0 :(得分:0)

由于您没有使用shell=True call选项,因此每次通话基本上是相互隔离的。因此,获取.bat文件对第二次调用没有影响。在两个呼叫上添加shell=True,以便第一个呼叫可以影响第二个呼叫。

注意:我在此仅推荐shell=True,因为很明显这只是在一个平台(Windows)上运行,因此不存在跨平台问题。