.wavファイルを再生するオーディオプレーヤーを作成しようとしています。ファイルのwaveデータをWAVEHDR構造体に読み込むための関数ReadWaveFile(CString szFilename)を作成しました。この関数では
BOOL CWavePlay::ReadWaveFile(CString szFilename)
{
hmmio = mmioOpen((LPTSTR)&szFilename,NULL,MMIO_READ);
ASSERT(hmmio); //error here: hmmio=0x00000000
if(hmmio==0)
return FALSE;
....
}
指定されたファイルを開くためにこの関数にファイルパスを渡すと、mmioOpenは常に0を返します。そして、mmioOpen APIでファイルパスを明示的に渡すと、コードが機能するのが困惑します。つまり、有効なハンドルが返されます。なぜこれが起こっているのか、誰かが説明できますか?