微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

将Visual Studio 2005 sln迁移到2008,在LIB环境variables中使用vc98path警告,如何解决?

我正在将一个解决scheme从Visual Studio 2005迁移到Visual Studio 2008.在2005年构build解决scheme时,我没有任何问题。 但是,我使用devenv.exe /升级,然后在解决scheme上使用msbuild后,我得到以下警告:

CSC:警告CS1668:“LIB环境variables”中指定的searchpath“ vc98 lib”无效 – “系统找不到指定的path”。 CSC:警告CS1668:“LIB环境variables”中指定的无效searchpath“ vc98 mfc lib” – “系统找不到指定的path。 'CSC:警告CS1668:'LIB环境variables'中指定的'c: program files microsoft visual studio 9.0 vc platformsdk lib'无效的searchpath – '系统找不到指定的path。

我已经检查http://social.msdn.microsoft.com/Forums/en-US/Vsexpressinstall/thread/3f875480-fee2-4bc3-b829-95e220b22a01 ,它不提供任何帮助,因为我的LIB和INCLUDE环境variables没有设置在用户variables或系统variables中。 我已经看了Studio的工具>选项>项目和解决scheme> VC ++目录,没有什么东西引用任何旧的:

文件$(VCInstallDir)lib $(VCInstallDir)atlmfc lib $(VCInstallDir)atlmfc lib i386 $(WindowsSdkDir) lib $(FrameworkSDKDir)lib $(VSInstallDir)$(VSInstallDir)lib

如何获得正在运行的Windows服务应用程序的命令行参数?

如何以编程方式重新启动Windows资源pipe理器进程

如何检测Windows 8操作系统使用C#4.0?

键盘挂钩改变键的行为

存储Windows密码

包含文件

$(VCInstallDir)include $(VCInstallDir)atlmfc include $(WindowsSdkDir)include $(FrameworkSDKDir)include

我使用了诊断输出,以便在调用时可以看到LIBvariables包含的内容

lib = c: Program Files Microsoft Visual Studio 9.0 VC ATLMFC LIB; c: Program Files Microsoft Visual Studio 9.0 VC LIB; C: Program Files Microsoft SDKs Windows v6.0A lib ; vc98 lib; vc98 mfc lib; c: program files microsoft visual studio 9.0 vc platformsdk lib; c: program files microsoft visual studio 9.0 vc lib; c: program files microsoft visual studio 9.0 vc atlmfc lib; LIBPATH = c: Windows Microsoft.NET Framework v3.5; c: Windows Microsoft.NET Framework v2.0.50727; c: Program Files Microsoft Visual Studio 9.0 VC ATLMFC LIB; c : Program Files Microsoft Visual Studio 9.0 VC LIB

所以如果这个vc98不在我的env vars中,或者我的工作室设置和vc98甚至没有安装(也不是redist),那么这个path从哪里来? 什么过程像这样设置LIB env var?

检测进程已经在使用C#.net的窗口中运行

如何在WPF中使用DrawThemeTextEx

.NET:如何创build文件图标叠加

托pipeWindows窗体中的WPF给出问题 – C#

Windows服务自动启动和停止,exception处理问题

在MSDN上找到:

是的,这是一个已知的问题,发生在一些人。 仔细看你的LIB路径。 紧跟ATLMFC,V,SDK – > vc98 lib。 删除这个条目(和下面的条目)。 如果LIB是一个用户变量,那么你需要重新启动VS或者注销并重新登录。 如果它是一个系统变量,那么你将不得不重新启动。 你的错误应该消失。

这是解决方

http://msdn.microsoft.com/en-us/library/tcbs315h(v=vs.80).aspx

它指的是环境变量中的LIB条目

好像你已经覆盖了大部分的东西,所以我能想到的唯一的东西是继承的属性表。

它们在vcproj XML中指定(或者您可以在IDE中检查Property Manager):

<VisualStudioProject> <Configurations> <Configuration Inheritedpropertysheets="stuff.vsprops">...

如果你有一些继承的属性表,去看看文件,看看你有没有明确设置任何vc98 lib路径?

我想知道这是否可能是由于使用编译器开关/ MT和/ MTd从/ ML和/ MLd VS2005发生有关C运行时库的变化?

请参阅这里,看看是否有帮助: http : //msdn.microsoft.com/en-us/library/abx4dbyh.aspx

我在VS.NET2010中遇到了与C#项目非常类似的问题。 它只会影响那些导入C ++ / CLI项目的项目。 这些项目仍然使用v9.0工具集(C ++,C ++ / CLI)和.NET 3.5(C ++ / CLI,C#)进行编译。 你有幸找到问题的根源吗?

我通过将警告1668添加到受影响项目的属性中的忽略警告列表来解决此问题。 这并不理想,但比我的警告列表中的垃圾邮件更好。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐