1. 背景
错误提示
错误列表
MSB4019 未找到导入的项目“C:UsersAdministratorDesktopDebug.props”。请确认
声明中的路径正确,且磁盘上存在该文件。 opencv C:UsersAdministratorDesktopopencvopencvopencv.vcxproj)
????从vs的工作目录中将vs项目文件夹移出至其它文件目录下。打开vs项目,点击运行,就会出现如上错误。
2. 解决方法
2.1 打开报错文档。
1、 报错文档具体地址如下图红线所示。
报错文档具体地址
报错文件
2、错误行可从vs错误列表得知,如下图,我的错误行是66行。
错误行
错误代码行:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> <Import Project="$(UserRootDir)Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> <Import Project="....Debug.props" /> </ImportGroup> <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> <Import Project="$(UserRootDir)Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> <Import Project="....Release.props" /> </ImportGroup> <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> <Import Project="$(UserRootDir)Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> </ImportGroup> <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> <Import Project="$(UserRootDir)Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> </ImportGroup> |
从中发现:
第1个ImportGroup与第3,4个ImportGroup比较多了:
1 | <Import Project="....Debug.props" /> |
第2个ImportGroup Label与第3,4个ImportGroup比较多了:
1 | <Import Project="....Release.props" /> |
2.2 删除多出的语句。
1 | <Import Project="....Debug.props" /> |
1 | <Import Project="....Release.props" /> |
注意:记得保存文档。
2.3 重启VS项目。
C1083错误
从中发现:
1、MSB4019错误已经解决;
2、出现C1083错误“无法打开包括文件: “opencv2/opencv.hpp”: No such file or directory opencv”
由此可知:
??属性管理器中的包括文件目录设置错误。
2.4 修改属性管理器包含目录。
1、属性管理器在视图》其它窗口》属性管理器中
属性管理器
2、双击你使用的编译方式,如图我使用的是“Debug|Win32”
选择编译方式
3、根据你当前项目所在的路径修改包含目录。
包含目录
4、如果你使用的是项目属性表,直接添加现有属性表即可
添加现有属性表
3. 总结
??对于vs项目移动工作目录后产生的错误,其原因是属性管理器相关目录的路径错误,故只需先删除vcxproj文件中的路径,然后根据移动后的工作目录路径修改属性管理器相关目录(或者重新添加项目属性表)即可。