2012-12-23 51 views
2

我試圖製作一個程序,我可以在其中播放音樂,即mp3文件。我試圖通過使用winmm庫來做到這一點。第一次當我嘗試連接它時,編譯器給出了我意識到程序沒有與庫正確鏈接的錯誤,但後來我在鏈接器設置中添加了庫文件,現在程序執行正常(沒有錯誤 - 表明它已正確鏈接),但沒有音樂我找不出什麼問題。我目前使用codeblocks,它使用gcc compiler.Can任何人都可以解釋問題是什麼,爲什麼音樂不播放?如果有人能幫助我,我會很感激! :)在C中使用winmm庫C

我的代碼(它簡單地打印文本,但沒有音樂播放):

#include <stdio.h> 
#pragma comment (lib, "winmm.a") 
#include <windows.h> 
#include <mmsystem.h> 


int main() 
{ 
    printf("Hello world!\n"); 

    mciSendString("play song.mp3",NULL,NULL,NULL); 

    printf("\nY"); 

    mciSendString("pause song.mp3",NULL,NULL,NULL); 
    mciSendString("close song.mp3",NULL,NULL,NULL); 

    printf("\ndone"); 

    return 0; 
} 
+1

** **從未忽略WINAPI函數的返回值。您將無法診斷錯誤。 –

回答

4

MCI命令立即返回。這意味着您在播放開始之前幾乎立即暫停並關閉mp3。望着的文檔,你必須使用Wait Flag

mciSendString("play song.mp3 wait",NULL,NULL,NULL); 
+1

omg謝謝sooo多!我的代碼工作! :D:D yaiyy thanx !! :D:D:D – leMS