2009年7月30日木曜日

リソースのみのDLLを作成する方法

  1. Win32プロジェクトから,空のDLLプロジェクトを作成する.
  2. プロジェクトのプロパティから,リンカ詳細を選択する.
  3. エントリポイントなしの設定を,はいに設定する.

リソースのみのDLLは,LoadLibraryEx関数LOAD_LIBRARY_AS_DATAFILE_EXCLUSIVEフラグを指定して呼び出して使用する.

  • Windows XP/2000では,LOAD_LIBRARY_AS_DATAFILE_EXCLUSIVEフラグはサポートされないので,LOAD_LIBRARY_AS_DATAFILEフラグを使用する.
  • DLLの使用方法によっては異なるフラグを指定する必要がある.

また,リンカのコマンドライン・オプションに/ltcgが含まれていると,ビルド時(デフォルトではリリースビルド時のみ)に警告が出る.これを解除するには,プロジェクトのプロパティで以下の設定を行う.

  1. リンカ最適化を選択する.
  2. リンク時のコード生成の設定を,既定値に設定する.
参考:Creating a Resource-Only DLL(VS 2008)Creating a Resource-Only DLL(VS 2010)

0 件のコメント:

コメントを投稿