最終更新日 2024-09-25

DllMainのススメ

概要

何もしていないDllMainであっても定義することを推奨します
これによりdllのロード時間が短縮する傾向があります。

dll1.dllとしてコンパイル
#include "HmCppInvoke.h"

using namespace Hidemaru;
using namespace std;

BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpReserved) {
    switch (fdwReason)
    {
    case DLL_PROCESS_ATTACH:
        break;

    case DLL_THREAD_ATTACH:
        break;

    case DLL_THREAD_DETACH:
        break;

    case DLL_PROCESS_DETACH:
        break;
    }
    return TRUE;
}

以降のサンプルでは毎回同じソースとなってしまうため、DllMainは記載してありませんが、
実際には記載してあるものとして考えてください。