Visual Studio无法识别我的MFC库以获取我的网络摄像头激光测距仪代码

use*_*892 13 c++ mfc visual-studio

我尝试直接从互联网上复制源代码,因为下面发现的错误,我无法构建/调试整个文件.

请帮忙

Error occurred while restoring NuGet packages: System.ArgumentException: The path is not                         of a legal form. at System.IO.Path.NormalizePath(String path, Boolean fullCheck, Int32 maxPathLength,Boolean expandShortPaths)
at System.IO.Path.GetDirectoryName(String path)
at NuGet.VisualStudio.VsUtility.GetNuGetSolutionFolder(Solution solution)
at NuGet.VsEvents.PackageRestorer.UsingOldPackageRestore(Solution solution)
at NuGet.VsEvents.PackageRestorer.BuildEvents_OnBuildBegin(vsBuildScope Scope,   vsBuildAction Action).


1>------ Build started: Project: LaserRange, Configuration: Debug Win32 ------
1>C:\Program Files   (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppBuild.targets(369,5): error MSB8031: Building an MFC project for a non-Unicode character set is deprecated. You must change the project property to Unicode or download an additional library. See http://go.microsoft.com/fwlink/p/?LinkId=286820 for more information.
Run Code Online (Sandbox Code Playgroud)

==========构建:0成功,1失败,0最新,0跳过==========}

roc*_*esh 19

右键单击您的解决方案,转到属性并将项目属性设置为使用Unicode.

  • 如何*完全*这样做?听起来很简单,但是当我在visual studio 2013中右键单击解决方案并转到属性时,我看不到这个选项 (3认同)
  • general-> project default-> character set.但是,我认为工作解决方案是@thoma提到的安装附加组件,尤其是在使用现有项目的代码时. (3认同)

Joe*_*e B 19

问题:我在哪里" 将项目属性更改为Unicode "?

答案:

对于C++,

右键单击项目,然后选择属性,(或Alt-Enter) 属性页应该打开

配置属性下

一般

[ - ] 项目默认值

  **Character Set** : Use Multi-Byte Character Set
Run Code Online (Sandbox Code Playgroud)

- 改成 -

  **Character Set** : Use Unicode Character Set
Run Code Online (Sandbox Code Playgroud)

在屁股疼痛找到它.


小智 14

您需要安装MFC MBCS DLL加载项如您的错误中所述.请参阅以下链接 http://msdn.microsoft.com/library/dn251007.aspx

  • 这比标记的解决方案更加防故障.如果依赖于多字节依赖关系,只要将依赖关系更改为Unicode,就会变得很难看.至少当您翻转重叠的字符空间时. (2认同)