我正在尝试与DirectX SDK取得联系。我设法安装了它,创建了一个新的Win32 Console Project,并添加了以下几行
#include <iostream>
#include <xaudio2.h>
int main(int argc, char *argv[]){
IXAudio2* pXAudio = 0;
IXAudio2MasteringVoice *pXAudioMasterVoice = 0;
HRESULT hr;
CoInitializeEx(NULL, COINIT_MULTITHREADED);
hr = XAudio2Create(&pXAudio, 0, XAUDIO2_DEFAULT_PROCESSOR);
if(FAILED(hr)){
CoUninitialize();
return hr;
}
hr = pXAudio->CreateMasteringVoice(&pXAudioMasterVoice);
if(FAILED(hr)){
pXAudio->Release();
CoUninitialize();
return hr;
}
CoUninitialize();
std::cout << "Done!" << std::endl;
}文档说没有要链接的xaudio2.lib,但它是一个COM-object,但我得到的是LNK2019 - unresolved external symbol "__imp__XAudio2Create@12"
Here是文档。
谢谢你的任何提示。
发布于 2013-04-12 04:33:14
XAudio2Create不是COM,它是一个标准的DLL导出,所以你需要链接到Xaudio2.lib 2.lib。这个库在%Program Files%\Windows Kits\8.0\Lib\win8\um (与Windows8SDK一起安装)中可用。
发布于 2018-08-18 03:13:15
参加聚会太晚了,但我遵循了windows示例here并确保我的包含如下所示:
#include <xaudio2.h>
#pragma comment(lib,"xaudio2.lib")https://stackoverflow.com/questions/15950909
复制相似问题