无法打开文件'dxguid.lib'

Dar*_*man 4 c++ directx linker visual-studio

我有恼人的链接器问题 - VS2010声称它找不到这个文件,但它显然存在,并且路径是正确的 - 我在同一个文件夹中使用其他lib,所有工作都没有问题.(d3d9.lib和dinput8.lib)我正在使用2010年2月版的DXSDK(DX9),以防相关.我甚至试过复制/粘贴文件名,所以我知道我没有错误输入它.我的"附加依赖项"行如下所示:

Library.lib;d3d9.lib;dinput8.lib;dxguid.lib;%(AdditionalDependencies)
Run Code Online (Sandbox Code Playgroud)

和附加库目录行(用于Debug构建):

$(DXSDK_DIR)\Lib\;$(SolutionDir)\Debug;%(AdditionalLibraryDirectories)
Run Code Online (Sandbox Code Playgroud)

(Library.lib是我自己的库,存储在$(SolutionDir)\ Debug文件夹中,或Release for Release版本,但这不是问题.)

DXSDK目录包含2个子文件夹,x64和x86,并且两个文件都存在,以及其他两个工作正常的库.(运行Windows 7 64位,所以它应该使用第一个.)任何想法?

Vik*_*pov 9

编辑:dinput8和d3d9库可能已经在标准库中(它们太旧了),这就是为什么之前有效的原因.

目录

$(DXSDK_DIR)\Lib
Run Code Online (Sandbox Code Playgroud)

不是一条完整的道路.它必须是

$(DXSDK_DIR)\Lib\x86
Run Code Online (Sandbox Code Playgroud)

要么

$(DXSDK_DIR)\Lib\x64
Run Code Online (Sandbox Code Playgroud)

取决于你的目标.

如果您正在为32位环境构建项目(转到Configration Manager并检查确切的目标),请使用x86子目录,否则使用x64.