VS2015 编译器命令行调用的问题

时间:2022-08-02 02:07:00
建立了一个测试工程叫MyTest2015,在它工程文件夹下建立一个bat文件,预期用devenv的命令行来实现编译。

1.当用如下命令行时:
devenv "MyTest2015.sln" /Rebuild Debug /project "MyTest2015\MyTest2015.vcxproj" /projectconfig Debug
提示 参数错误,可是我查询到 微软官方的示例也是一样的写法,竟然还会参数错误!!!如图:
VS2015 编译器命令行调用的问题

2.当用如下命令行时:
devenv "MyTest2015.sln" /Rebuild Debug /project "MyTest2015\MyTest2015.vcxproj" [/projectconfig Debug]
可以 成功编译通过,可是有一点瑕疵,如图所示:
VS2015 编译器命令行调用的问题


那请问,如何写命令,能成功编译通过且没有任何的报错提示?

6 个解决方案

#1


可能是VS的环境没有初始化好,  安装好VS后, 开始菜单 的VS程序组中 找到 VS20XX 命令提示, 运行这个,然后进入你的项目目录编译应该就可以了

#2


引用 1 楼 zgl7903 的回复:
可能是VS的环境没有初始化好,  安装好VS后, 开始菜单 的VS程序组中 找到 VS20XX 命令提示, 运行这个,然后进入你的项目目录编译应该就可以了

还是不行 VS2015 编译器命令行调用的问题
我看了这个命令提示符的bat内容,大概就是修改PATH等环境变量

#3


devenv "MyTest2015.sln" /Rebuild Debug /project "MyTest2015\MyTest2015.vcxproj"
你贴的图片中好像devenv后面有两个引号?

#4


VS的BUG? 
我用2008的 正常通过

Visual studio 2008 命令提示

E:\Temp\SDIv9.1>devenv "SDIV9.1.sln" /Rebuild Debug /Project "SDIV9.1\SDIV9.1.vc
proj" /ProjectConfig Debug

Microsoft (R) Visual Studio 9.0.30729.1 版。
版权所有(C) Microsoft Corp。保留所有权利。
1>------ 已启动全部重新生成: 项目: SDIv9.1, 配置: Debug Win32 ------
1>正在删除项目“SDIv9.1”(配置“Debug|Win32”)的中间文件和输出文件
1>正在编译...
1>stdafx.cpp
1>正在编译...
1>CalendarBar.cpp
1>ClassView.cpp
1>CntrItem.cpp
1>FileView.cpp
1>MainFrm.cpp
1>OutputWnd.cpp
1>PropertiesWnd.cpp
1>SDIv9.1.cpp
1>SDIv9.1Doc.cpp
1>SDIv9.1View.cpp
1>ViewTree.cpp
1>正在生成代码...
1>正在编译资源...
1>Microsoft (R) Windows (R) Resource Compiler Version 6.1.6723.1
1>Copyright (C) Microsoft Corporation.  All rights reserved.
1>正在编译资源清单...
1>Microsoft (R) Windows (R) Resource Compiler Version 6.1.6723.1
1>Copyright (C) Microsoft Corporation.  All rights reserved.
1>正在链接...
1>LINK : 没有找到 E:\Temp\SDIv9.1\Debug\SDIv9.1.exe 或上一个增量链接没有生成它;
正在执行完全链接
1>正在嵌入清单...
1>Microsoft (R) Windows (R) Resource Compiler Version 6.1.6723.1
1>Copyright (C) Microsoft Corporation.  All rights reserved.
1>生成日志保存在“file://e:\Temp\SDIv9.1\SDIv9.1\Debug\BuildLog.htm”
1>SDIv9.1 - 0 个错误,0 个警告
========== 全部重新生成: 成功 1 个,失败 0 个,跳过 0 个 ==========

E:\Temp\SDIv9.1>

#5


引用 3 楼 VisualEleven 的回复:
devenv "MyTest2015.sln" /Rebuild Debug /project "MyTest2015\MyTest2015.vcxproj"
你贴的图片中好像devenv后面有两个引号?

你是说去掉末尾的/projectconfig Debug吗
没有连续的两个引号,中间是有空格的

#6


引用 3 楼 VisualEleven 的回复:
devenv "MyTest2015.sln" /Rebuild Debug /project "MyTest2015\MyTest2015.vcxproj"
你贴的图片中好像devenv后面有两个引号?

去掉末尾的 /projectconfig Debug确实可以,就是不知道会不会有什么影响
VS2015 编译器命令行调用的问题

引用 4 楼 zgl7903 的回复:
VS的BUG? 
我用2008的 正常通过

VS08是没问题,我也试了,但是VS2015不行,关键微软还坑了一把

#1


可能是VS的环境没有初始化好,  安装好VS后, 开始菜单 的VS程序组中 找到 VS20XX 命令提示, 运行这个,然后进入你的项目目录编译应该就可以了

#2


引用 1 楼 zgl7903 的回复:
可能是VS的环境没有初始化好,  安装好VS后, 开始菜单 的VS程序组中 找到 VS20XX 命令提示, 运行这个,然后进入你的项目目录编译应该就可以了

还是不行 VS2015 编译器命令行调用的问题
我看了这个命令提示符的bat内容,大概就是修改PATH等环境变量

#3


devenv "MyTest2015.sln" /Rebuild Debug /project "MyTest2015\MyTest2015.vcxproj"
你贴的图片中好像devenv后面有两个引号?

#4


VS的BUG? 
我用2008的 正常通过

Visual studio 2008 命令提示

E:\Temp\SDIv9.1>devenv "SDIV9.1.sln" /Rebuild Debug /Project "SDIV9.1\SDIV9.1.vc
proj" /ProjectConfig Debug

Microsoft (R) Visual Studio 9.0.30729.1 版。
版权所有(C) Microsoft Corp。保留所有权利。
1>------ 已启动全部重新生成: 项目: SDIv9.1, 配置: Debug Win32 ------
1>正在删除项目“SDIv9.1”(配置“Debug|Win32”)的中间文件和输出文件
1>正在编译...
1>stdafx.cpp
1>正在编译...
1>CalendarBar.cpp
1>ClassView.cpp
1>CntrItem.cpp
1>FileView.cpp
1>MainFrm.cpp
1>OutputWnd.cpp
1>PropertiesWnd.cpp
1>SDIv9.1.cpp
1>SDIv9.1Doc.cpp
1>SDIv9.1View.cpp
1>ViewTree.cpp
1>正在生成代码...
1>正在编译资源...
1>Microsoft (R) Windows (R) Resource Compiler Version 6.1.6723.1
1>Copyright (C) Microsoft Corporation.  All rights reserved.
1>正在编译资源清单...
1>Microsoft (R) Windows (R) Resource Compiler Version 6.1.6723.1
1>Copyright (C) Microsoft Corporation.  All rights reserved.
1>正在链接...
1>LINK : 没有找到 E:\Temp\SDIv9.1\Debug\SDIv9.1.exe 或上一个增量链接没有生成它;
正在执行完全链接
1>正在嵌入清单...
1>Microsoft (R) Windows (R) Resource Compiler Version 6.1.6723.1
1>Copyright (C) Microsoft Corporation.  All rights reserved.
1>生成日志保存在“file://e:\Temp\SDIv9.1\SDIv9.1\Debug\BuildLog.htm”
1>SDIv9.1 - 0 个错误,0 个警告
========== 全部重新生成: 成功 1 个,失败 0 个,跳过 0 个 ==========

E:\Temp\SDIv9.1>

#5


引用 3 楼 VisualEleven 的回复:
devenv "MyTest2015.sln" /Rebuild Debug /project "MyTest2015\MyTest2015.vcxproj"
你贴的图片中好像devenv后面有两个引号?

你是说去掉末尾的/projectconfig Debug吗
没有连续的两个引号,中间是有空格的

#6


引用 3 楼 VisualEleven 的回复:
devenv "MyTest2015.sln" /Rebuild Debug /project "MyTest2015\MyTest2015.vcxproj"
你贴的图片中好像devenv后面有两个引号?

去掉末尾的 /projectconfig Debug确实可以,就是不知道会不会有什么影响
VS2015 编译器命令行调用的问题

引用 4 楼 zgl7903 的回复:
VS的BUG? 
我用2008的 正常通过

VS08是没问题,我也试了,但是VS2015不行,关键微软还坑了一把