2012-05-12 94 views
0

我有這個頭在我的課Qt庫鏈接錯誤

#include <windows.h> 
#include <mmreg.h> 
#include <msacm.h> 
#include <wmsdk.h> 

#pragma comment(lib, "msacm32.lib") 
#pragma comment(lib, "wmvcore.lib") 
#pragma comment(lib, "winmm.lib") 
#pragma intrinsic(memset,memcpy,memcmp) 

當我嘗試使用功能CreateStreamOnHGlobal(mp3HGlobal, FALSE, &mp3Stream);我得到這個錯誤:

playlist.obj:-1: error: LNK2019: unresolved external symbol [email protected] referenced in function "public: int __thiscall Playlist::getLengthInSeconds(class QString)" ([email protected]@@[email protected]@@Z) 

我試圖添加msacm32.lib但我發現名稱爲MSAcm32.lib,而Qt不認識它;還與winmm.lib,誰的名字WinMM.lib。我不知道要添加什麼,該怎麼做才能讓我的程序工作。我能做什麼?

回答

0

如果

Qt doesn't recognize it

你的意思是,連接錯誤沒有得到解決,下面可能會有幫助。

根據http://msdn.microsoft.com/en-us/library/windows/desktop/aa378980(v=vs.85).aspx您還應鏈接到Ole32.libCreateStreamOnHGlobal。如果在添加ole32.lib之後發生其他鏈接器錯誤,快速谷歌或MSDN搜索將顯示哪些lib文件丟失。

此外,FYI窗口不區分大小寫。

+0

我嘗試添加Ole32.lib添加庫...,我嘗試過外部系統,但是當我選擇它時,名稱與紅色,我不能按下。可能是什麼問題呢?編譯器在Visual Studio中。我有用Visual Studio編寫的相同的程序(函數),它的工作原理。 –

+0

我明白了。謝謝! –