DLLからリソースを読み込むには?

解決


モグラ  2004-07-18 07:16:59  No: 54026

はじめまして。
私は今、DLLにMIDIファイルをリソースとして組み込み、そのリソースを読み込んでMIDIを演奏するプログラムを作ろうとしているのですが、DLLからMIDIファイルを読み込む事ができません。
コードの一部を下に書きます。どこか間違っていたら教えてください。お願いします。

/*---MidiDll.c(一部)---*/
HRSRC hRes;
hRes=FindResource(NULL,"MIDIA","MIDI_DAT");
if(hRes==NULL)
    return FALSE;//ここでFALSEが返ってしまう

/*---MidiDll.rc---*/
MIDIA MIDI_DAT DISCARDABLE "myMidi.mid" //myMidi.midはMIDIファイル


YuO  2004-07-18 08:14:02  No: 54027

FindResourceの最初の引数をちゃんと指定してやる必要があります。
NULLを指定した場合,EXEファイルのリソースを読みにいきます。

あと,関数が失敗したなら,ちゃんとGetLastErrorで原因を調べるべきです。
そのことなしに,デバッグはできないと思いますが……。


モグラ  2004-07-18 08:58:13  No: 54028

YuO様、ありがとうございます。
モジュールのハンドルを指定したところ、正しく読み込む事ができました。
これからはまずGetLastErrorとFormatMessageでエラーの原因を調べることにします。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加