Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 在哪里可以找到';winmm.lib';(我使用Visual Studio 2012)_C++_Visual Studio 2012_Directx_Winmm - Fatal编程技术网

C++ 在哪里可以找到';winmm.lib';(我使用Visual Studio 2012)

C++ 在哪里可以找到';winmm.lib';(我使用Visual Studio 2012),c++,visual-studio-2012,directx,winmm,C++,Visual Studio 2012,Directx,Winmm,我的操作系统是64位Windows 7。 我想在中构建DirectX示例 C:\ProgramFiles(x86)\Microsoft DirectX SDK(2010年6月)\Samples\C++\Direct3D10\Tutorials\Tutorial02。 但当我生成错误时,出现了致命错误 LNK1104:“winmm.lib”无法打开该文件 我重新安装了DirectSDK,但没有更改。我还将路径(include,lib)添加到设置中 如果从项目设置中删除“winmm.lib”,则无法

我的操作系统是64位Windows 7。
我想在中构建DirectX示例 C:\ProgramFiles(x86)\Microsoft DirectX SDK(2010年6月)\Samples\C++\Direct3D10\Tutorials\Tutorial02。 但当我生成错误时,出现了致命错误

LNK1104:“winmm.lib”无法打开该文件

我重新安装了DirectSDK,但没有更改。我还将路径(include,lib)添加到设置中

如果从项目设置中删除“winmm.lib”,则无法打开“comctl32.lib”。 属性>链接器>输入中已存在两个LIB


如何解决此问题?

winmm.lib不是DirectX SDK的一部分,而是


最新的Windows SDK版本也进行了大量重组,但其中包含了您正在寻找的库。

如果您试图使用VS 2012或VS 2013构建任何旧版DirectX SDK示例,则需要根据上页面底部的说明修改include/libs路径。最重要的更改是必须颠倒Include/Lib路径顺序:

对于VS 2010,它是:

$(DXSDK\u DIR)包括:$(包括路径)

$(DXSDK\u DIR)Lib\x86$(LibraryPath)
$(DXSDK\u DIR)Lib\x64$(LibraryPath)

对于VS 2012/2013,必须:

$(包括路径)$(DXSDK_目录)包括

$(LibraryPath)$(DXSDK_DIR)Lib\x86
$(LibraryPath)$(DXSDK_DIR)Lib\x64

当然,更好的选择是根本不花时间学习较旧的Direct3D 10 API,而是在上使用最新的Win32桌面教程。事实上,我已经在那里发布了许多旧版DirectX SDK示例,因此它们可以很好地与VS 2012/2013 Express for Windows Desktop和VS 2012/2013 Pro+配合使用,因为根本没有DirectX SDK

阅读以下博文:

并回顾这些CodePlex项目:


只需在stdafx.h中添加下面的行即可

#pragma comment(lib, "winmm.lib")

你在哪里加的路径?您是否检查了硬盘上是否存在winmm.lib?它应该位于
C:/winows/system32
将此路径添加到库路径中这些(两个)都是Windows SDK库:C:\Program Files(x86)\Microsoft SDK\Windows\v7.0A\Lib或更高版本。它肯定不会在
C:/winows/system32
中。我在此文件夹中根本没有一个.Lib文件。可能您正在考虑.dll。
LNK1104:'winmm.lib'无法打开该文件。
您是在混合使用x86\u 64和x86吗?请记住,您不能在32位应用程序中使用64位库,也不能在64位应用程序中使用32位库。启动使用winmm.dll函数的项目时,我收到了“LNK2028未解析令牌(0A00002D)extern C…”消息。如上所述,添加“#pragma comment…”以添加对winmm.lib的引用修复了该问题。