Q1:代理项目运行未加载pdb
解决:工作目录没设置对应到exe输出目录(这个设置是卸载vcproj.user文件中,如果ignore掉user文件这个设置就没有了)
Q2:MSB6006:“cmd.exe”退出为1
路径解析错误问题,可能的情况:qrc文件路径错误、本地项目路径存在特殊符号。
参考:error MSB6006: “cmd.exe” exited with code 1 running QT application
可能原因:项目路径里面有空格
Q3:VS端编译过慢
分析:仔细查看会发现每次都会重新编译moc_xx.cpp
原因:vs端配置的qt生成moc路径跟实际生成不匹配。实际在GeneratedFiles下生成,但指定路径指定了ConfigurationName。两者不匹配,每次找不到就会重新生成。
解决:moc生成路径指定为GeneratedFiles下,即上图中右侧的情况。GUI中需要一个一个指定,建议打开vcxproj文件,全局搜索上图左侧的内容,全局替换。
Q4:常量中有换行符问题
编码问题,参考另外一篇博客:《C++编码研究》。
Q5:无法编译出一个ui_xx.h,其他均可
查看一下xx.ui的命名,以及在Cpp中包含的头文件名称。
原因:这里的ui是Agency.ui,Cpp头文件名称中包含了”ui_agency.h”。所以是Cpp依赖的头文件不对,依赖的应该是”ui_Agency.h”,依赖错了所以不会编译生成这个头文件。
解决方案:Cpp中包含正确的”ui_Agency.h”。更标准的做法是:应该统一文件命名为全部小写命名,特别是对于Qt的文件!