相关疑难解决方法(0)

在Visual Studio 2008中未正确设置WindowsSdkDir?

我正在尝试构建一些需要Windows 7.0 SDK头文件和库的C++代码.我的VC++目录设置为:

$(VCInstallDir)include
$(VCInstallDir)atlmfc\include
$(WindowsSdkDir)\include
$(WindowsSdkDir)\common\include
$(FrameworkSDKDir)include
Run Code Online (Sandbox Code Playgroud)

我的$(WindowsSdkDir)变量设置为C:\Program Files\Microsoft SDKs\Windows\v7.0\- 我使用SDK的"Visual Studio注册"配置工具来设置它,它在注册表中看起来是正确的.我已经检查过HKLM\SOFTWARE\Microsoft\Microsoft SDKs\Windows(和同样的Wow6432Node.

尽管如此,Visual C++仍在从中获取头文件 C:\Program Files\Microsoft SDKs\Windows\v6.0A\

怎么了,怎么解决?

winapi visual-studio-2008

17
推荐指数
2
解决办法
3万
查看次数

错误无法打开文件'kernel32.lib'

我在Windows 7上安装了VS2013和VS2015.

我有一个现有的C++ Dll项目正在建设正常但现在突然间它不会使用VS2015构建并给我错误:

LINK : fatal error LNK1104: cannot open file 'kernel32.lib'
Run Code Online (Sandbox Code Playgroud)

从这篇文章:致命错误LNK1104:无法打开文件'kernel32.lib'我去找了kernel32.lib文件,它位于这里:

C:\Program Files (x86)\Windows Kits\8.1\Lib\winv6.3\um\x86
Run Code Online (Sandbox Code Playgroud)

当我转到我的项目属性 - >链接器 - >输入并选择宏时,我看到这条路径确实存在:

在此输入图像描述

我的平台工具集设置为Visual Studio 2013 - Windows XP(v120_xp),它始终设置为.

为什么我的项目突然停止建设?什么可能出错?

visual-c++ kernel32 visual-studio-2015

8
推荐指数
3
解决办法
3万
查看次数

Visual Studio错误:LNK1104:无法打开文件'kernel32.lib' - 仅在WP8项目/ Win32版本中

我最近遇到了这个问题(前几天一切正常):Visual Studio 2012开始拒绝构建原生WP8项目.

今天,我从模板'Windows Phone Direct3D App(Native Only)'创建了新的解决方案,以检查我是否在WP上正确支持我新创建的DLL.我尝试编译这个项目,首先没有任何更改或额外的引用 - 由VS生成的纯代码.但是,它因给定错误而失败.我非常清楚这是什么意思,可能的原因是什么,但我无法理解,在这种情况下它来自何处.奇怪的是:这只发生在'Win32'配置中,ARM编译很好:

1>------ Build started: Project: PhoneDirect3DApp, Configuration: Debug ARM ------
.......

Build Summary
-------------
00:11.742 - Success - Debug ARM - PhoneDirect3DApp\PhoneDirect3DApp.vcxproj
Run Code Online (Sandbox Code Playgroud)

但Win32没有:

1>------ Build started: Project: PhoneDirect3DApp, Configuration: Debug Win32 ------
.......
1>LINK : fatal error LNK1104: cannot open file 'kernel32.lib'

Build Summary
-------------
00:09.725 - Failed  - Debug Win32 - PhoneDirect3DApp\PhoneDirect3DApp.vcxproj
Run Code Online (Sandbox Code Playgroud)

我的标准(本机C++/Win32)项目也按预期工作(在Win32和x64平台目标中).

项目配置:(在两个平台中)

链接::输入:

d3d11.lib;%(AdditionalDependencies)
Run Code Online (Sandbox Code Playgroud)

链接::忽略:

ole32.lib;%(IgnoreSpecificDefaultLibraries)
Run Code Online (Sandbox Code Playgroud)

VC++目录:

Microsoft.ARM.Cpp.User:

$(WP80ToolSetPath)lib\arm;$(WindowsSDK_LibraryPath_ARM);
Run Code Online (Sandbox Code Playgroud)

Microsoft.Win32.Cpp.User:

$(VCInstallDir)lib;$(VCInstallDir)atlmfc\lib;$(WP80ToolSetPath)lib\x86;$(WindowsSDK_LibraryPath_x86)
Run Code Online (Sandbox Code Playgroud)

有什么想法可能是错误的或错误配置?我的想法已经不多了,我以前从未见过这样的东西.

顺便说一句,我注意到了另一个变化:当我尝试在ARM配置中编译WP8项目时,总是出现错误,说"不支持在桌面上构建ARM应用程序"(或类似的东西).现在ARM编译没有问题.这是正常的吗?

c++ linker-errors visual-studio-2012 windows-phone-8 windows-phone-8-sdk

6
推荐指数
1
解决办法
3万
查看次数