ページ 11

実行ファイルのsoundフォルダ内にある全てのwavファイルを取得する

Posted: 2010年6月03日(木) 13:35
by みなみ
実行したexeの同階層にあるsoundフォルダの中身から
wavファイルの名前のみをすべて取して表示するPGを書いております。
DXライブラリを使っているのですが強制終了してしまいます。
これを直すことはできないのでしょうか?
HANDLE hFind;
WIN32_FIND_DATA fd;

int dxLibのmain関数{

    FindFirstFile("\\sound\\*.wav", &fd); //

    while(1){

        do {
            /* 結果の表示 */
            DrawFormatString(400,200,GetColor(255,255,255),"%s",fd.cFileName);
        } while(FindNextFile(hFind, &fd));
    
        /* 検索終了 */
        FindClose(hFind);
    }

}

Re:実行ファイルのsoundフォルダ内にある全てのwavファイルを取得する

Posted: 2010年6月03日(木) 13:51
by シエル
ざっとしか見てませんが、FindNextFileが終わって一つ目のループ抜けた後に、
FindCloseを何回も無限ループしてるからではないでしょうか?

Re:実行ファイルのsoundフォルダ内にある全てのwavファイルを取得する

Posted: 2010年6月03日(木) 14:56
by dic
int dxLibのmain関数{

    FindFirstFile("\\sound\\*.wav", &fd); //

    while(1){

        do {
            /* 結果の表示 */
            DrawFormatString(400,200,GetColor(255,255,255),"%s",fd.cFileName);
        } while(FindNextFile(hFind, &fd));
   
    }

    /* 検索終了 */
    FindClose(hFind);

}
FindCloseの呼び出す位置が違ってますね