DLLまとめ 04 明示的読み込み
DLLの簡単なまとめです。
DLLの明示的な読み込みについて
明示的な読み込み
まず、LoadLibrary()またはLoadLibraryEx()でDLLをプロセスのアドレス空間にマッピングします。
このときのDLLの検索方法は、特に指定がなければ暗黙的な呼び出しのときと同じです。
次に、GetProcAddress()で関数へのポインタを取得します。
最後に、FreeLibrary()でDLLをアンロードします。
typedef void (*LPFUNC)(); int main() { HMODULE hDLL = LoadLibraryA("myDLL.dll"); if(!hDLL) error(); LPFUNC ptest = (LPFUNC)GetProcAddress(hDLL, "test"); //defファイルで名前をtestにしたとする if (!ptest) error(); ptest(); FreeLibrary(hDLL);