ページ 11

MCIでBGMのループ再生

Posted: 2010年8月08日(日) 14:36
by みけCAT
C言語でゲームを作ってみようと思い、Dev-C++4.9.9.2でプログラムを書いています。
MidiのBGMを付けるために、MCIで再生しようと思いました。
BGMはループ再生をしようと思っています。
最初の再生はできるのですが、再生後に再び再生をするためにMM_MCINOTIFYメッセージで処理をするときに、
mciSendCommandがエラーを吐いて再生できません。
mciGetErrorStringに入れた時のエラーメッセージは
「指定されたコマンドを自動的に開かれたデバイスで実行することはできません。デバイスを閉じた後で再実行してください。」です。
その部分の前にmciSendCommand(mop.wDeviceID,MCI_CLOSE,0,0)を入れても、この関数でまた同じエラーが出ます。
参考にしたサイトはhttp://www13.plala.or.jp/kymats/study/M ... lback.htmlです。
解決法がわかる方がいましたら、教えてくれるとありがたいです。
よろしくお願いします。

Re:MCIでBGMのループ再生

Posted: 2010年8月08日(日) 16:55
by Justy
 その参考サイトの別ページ、一番下「MCIの欠点」を見て下さい。

MCIコマンドによる音楽ファイル再生【Windowsプログラミング研究所】
http://www13.plala.or.jp/kymats/study/M ... _play.html

 オープンしたスレッド以外からは使えません。

Re:MCIでBGMのループ再生

Posted: 2010年8月08日(日) 17:14
by みけCAT
Justy様
できました。
ありがとうございます。