gpt4 book ai didi

c++ - D3D9 Direct3DCreate9() 链接器错误,但所有其他 D3D 函数都有效

转载 作者:行者123 更新时间:2023-11-28 04:19:34 25 4
gpt4 key购买 nike

我正在尝试为“Direct3D9”创建一个包装器,以便在我自己的应用程序中快速轻松地使用“DirectX 9”。除了唯一的函数“Direct3DCreate9”之外,一切都编译得很好。如果我将该函数注释掉,那么所有其他 Direct X 函数都可以正常编译。我从 Microsoft 网站 https://www.microsoft.com/en-us/download/details.aspx?id=6812 下载了 SDK(我以前下载过很多次) .

我尝试在 visual studio 的项目设置中链接 d3d9.lib。我尝试使用 #pragma 评论链接器#pragma comment (lib, "d3d9.lib")

我在网上找不到任何类似的问题。我能找到的唯一相关问题是那些合法地没有链接到图书馆的人。

        bool D3D9::Initialize(HWND i_hWnd)
{
D3DPRESENT_PARAMETERS d3dpp;
ZeroMemory(&d3dpp, sizeof(d3dpp));
d3dpp.Windowed = TRUE;
d3dpp.SwapEffect = D3DSWAPEFFECT_DISCARD;
d3dpp.hDeviceWindow = i_hWnd;

// If I comment this line out, it compiles fine
m_pD3D = Direct3DCreate9(D3D_SDK_VERSION); // LINKER ERROR

HRESULT hr = m_pD3D->CreateDevice(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, i_hWnd, D3DCREATE_SOFTWARE_VERTEXPROCESSING, &d3dpp, &m_pDevice);
return true;
}

当我注释掉调用 Direct3DCreate9 的代码行时,我预计 Direct3DDevice 本身的所有其他 D3D 调用都会出现链接器错误。但是一旦我评论了这一行,编译就没有问题了。

我在 Windows 10 上使用 Visual Studio 2015。

最佳答案

我修好了。

问题是我需要链接到 Microsoft DirectX SDK(2010 年 6 月)\Lib\x86

我正在链接到 Microsoft DirectX SDK(2010 年 6 月)\Lib\x64

关于c++ - D3D9 Direct3DCreate9() 链接器错误,但所有其他 D3D 函数都有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55780149/

25 4 0
文章推荐: javascript - Ionic/Angular Diagnostic.requestRuntimePermission 如何? (文档不完整)
文章推荐: javascript - 网络音频 API - USB 集线器
文章推荐: javascript - React-native-twilio-video-webrtc Android编译错误
文章推荐: html -
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com