メモリに読み込んだ音源のPlaySoundによる再生
HANDLE fh,fh2;
DWORD dummy,dummy2;
case WM_CREATE:
fh=CreateFile(TEXT("F:\\shot.wav"),GENERIC_READ,0,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL); /* ファイルオープン */
fh2=CreateFile(TEXT("F:\\ENDING.WAV"),GENERIC_READ,0,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL); /* ファイルオープン */
/* バッファ確保 */
lpSound = GlobalAlloc(GPTR,GetFileSize(fh,NULL));
lpSound2 = GlobalAlloc(GPTR,GetFileSize(fh2,NULL));
ReadFile(fh ,lpSound ,GetFileSize(fh ,NULL),&dummy ,NULL); /* 読み込み */
ReadFile(fh2,lpSound2,GetFileSize(fh2,NULL),&dummy2,NULL); /* 読み込み */
CloseHandle(fh);
CloseHandle(fh2);
として音源をメモリに読み込み、その後イベント発生時にPlaySound関数で音源をならしているのですが、
PlaySound(lpSound,NULL,SND_ASYNC|SND_MEMORY);
一番最初のイベント発生時に音源読み込みに時間が掛かり即座に鳴りません。次のイベント発生時は同時に鳴るのですが....
一番最初から同時に鳴らすにはどのようにしたら良いでしょうか?
根本的にPlaySound関数では良くないのでしょうか?
御指導の程よろしくお願いします。