windows API 「mciSendString」 の連続再生について
VISUAL BASIC 6.0 で音楽再生ソフトを作ろうとしました。
windows API の「mciSendString」を使って、
例1のようにすると b.wav の音楽しか再生されません。
そこで、例2のようにすると、a.wav と b.wav が再生されましたが、
曲の途中では、"pause" と "resume" の命令が効きません。
連続再生ができて、曲の途中でも "pause" や "resume" の命令が効く方法を知りたいのですが、ご指導をお願いします。
<例1>
Call mciSendString("open c:\a.wav ", "", 0, 0)
Call mciSendString("play c:\a.wav ", "", 0, 0)
Call mciSendString("close c:\a.wav ", "", 0, 0)
Call mciSendString("open c:\b.wav ", "", 0, 0)
Call mciSendString("play c:\b.wav ", "", 0, 0)
Call mciSendString("close c:\b.wav ", "", 0, 0)
<例2>
Call mciSendString("open c:\a.wav ", "", 0, 0)
Call mciSendString("play c:\a.wav wait ", "", 0, 0)
Call mciSendString("close c:\a.wav ", "", 0, 0)
Call mciSendString("open c:\b.wav ", "", 0, 0)
Call mciSendString("play c:\b.wav wait ", "", 0, 0)
Call mciSendString("close c:\b.wav ", "", 0, 0)
お礼
丁寧な回答、ありがとうございます。 操作性云々はまぁ別として、コードを組む上で、 内部的に行っていることがstopもpauseも同じなら、 stopを使った方がいいのではと思っていたわけです。 参考先のページも拝見しましたが、内部で何をやっているかまでは 書いていないため、それならばplay,stopですべてやったって 同じではないかとの判断になりました。 ありがとうございました。