2010-07-16 40 views
3

我有一個奇怪的問題。我正在使用MFC開發一個漂亮的遊戲。我需要使用多線程聲音。所以我正在嘗試使用BASS庫。低音庫沒有鏈接,所有其他工作完美

由於一個超出我的理解的原因,我無法獲得bass.lib鏈接。所有其他庫(openGL庫等)鏈接完美。

  1. 心中已經加入「#包括 「base.h」 我是* .h MFC對話框文件(試用過的.cpp和.h)中。

  2. 我使用的是全局函數在CPP文件中聲明的線程:

    UINT SetMusicThread(LPVOID帕拉姆);

  3. 調用在新線程 「的OnInitDialog()」:

    AfxBeginThread(SETM usicThread,GetSafeHwnd(),THREAD_PRIORITY_NORMAL,0,0,NULL);

  4. 爲現在的功能只是試圖啓動第一流:只是試圖通過步驟設置:

    UINT SetMusicThread(LPVOID帕拉姆) { //原聲*聲音=(原聲*)參數; str = BASS_StreamCreateFile(FALSE,Sound [SoundPosition],0,0,0); //創建句柄到音樂 str = BASS_StreamCreateFile(FALSE,Sound [SoundPosition],0,0,0);創建句柄到音樂 。 //檢查是否有效 if(!str) { //無效,自由對象 // FreeMusicThread(); return FALSE; } }

  5. str是一個全球性的HSTEAM。

  6. 程序編譯好,但不與messege鏈接:

    錯誤6錯誤LNK2019:在功能 「無符號整型__cdecl SetMusicThread(無效*)」 引用解析外部符號_BASS_StreamCreateFile @ 20(SetMusicThread? @@ YAIPAX @ Z)MonstersDlg.obj Monsters

  7. 將bass.lib添加到「Addisionals dependencies」,甚至試圖將它放在我的項目和SDK庫的LIB中....嘗試我能想到的每一件事情......

任何人都可以幫助我......我失去了什麼?

10x

+0

base.h? HSTEAM?張貼代碼片段,不要談論它。發佈下載鏈接。 – 2010-07-16 13:50:42

+0

嘗試在#include「bass.h」之前添加'#define BASSDEF(f)(WINAPI * f)'。 – Eanmos 2017-08-19 17:42:53

回答

1

我認爲bass.h創建一個靜態庫。

您需要通過按下sdk(當您的項目打開時),將實際的lib添加到您的項目中:Project - > Settings,按下Link選項卡並在對象/庫模塊中添加實際的低音路徑的.lib。 (說明在VS 5.0中,所以在較新的SDK版本中可能存在差異)

+0

10倍,我做到了這一切,將bass.lib添加到鏈接器,同樣的事情你用opengl文件或任何外部文件.... mabye我不明白你,但如果我這樣做,它是其中之一我做的所有步驟....沒有工作 – Erez 2010-07-16 13:57:41

+0

你不應該添加它作爲Addisional依賴你應該基本上將它添加到你的dsp文件。你不應該添加文件,yolu應該插入PATH。 – Sunscreen 2010-07-16 14:02:22

+0

好吧,10倍,現在我很困惑...大聲笑 我想我不知道你是什麼意思.... 項目下沒有設置,只是屬性,引導你到鏈接器,然後依賴關係.... 什麼是dsp文件?什麼路徑添加和在哪裏? 這是一個非常新的方向,試圖找到一個解決方案遍及網絡....如果你可以幫助我一些我會非常感激.... 10x – Erez 2010-07-16 14:20:35

相關問題