2

音楽、つまりmp3ファイルを再生できるプログラムを作成しようとしています.winmmライブラリを使用してこれを実行しようとしています.最初にリンクしようとしたとき、コンパイラはエラーを出し、そこからプログラムがライブラリと適切にリンクされていませんでしたが、リンカー設定にライブラリファイルを追加したところ、プログラムは正常に実行されるようになりました(エラーはなく、適切にリンクされていることを示唆しています)が、音楽は再生されません。問題は何ですか.私は現在、gccコンパイラを使用するコードブロックを使用しています.誰が問題が何であり、なぜ音楽が再生されないのか説明できますか? 誰かが私を助けることができれば、私は感謝します! :)

私のコード(単にテキストを出力しますが、音楽は再生されません):

#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;
}
4

1 に答える 1

4

MCI コマンドはすぐに戻ります。これは、再生が開始されるほとんど前に、すぐに一時停止して mp3 を閉じることを意味します。ドキュメントを見ると、Wait Flagを使用する必要があります。

mciSendString("play song.mp3 wait",NULL,NULL,NULL);
于 2012-12-23T19:57:19.597 に答える