次の方法で共有


リソースのみの DLL の作成

リソースのみの DLL とは、リソース以外のものを一切含まず、アイコン、ビットマップ、文字列、ダイアログ ボックスだけを含む DLL です。リソースのみの DLL は、複数のプログラム間でリソース群を共有するのに適しています。また、混合言語を使用できるようにローカライズされたリソースをアプリケーションに提供する方法としても最適です。詳細については、「MFC アプリケーションのローカライズされたリソース : サテライト DLL」を参照してください。

リソースのみの DLL を作成するには、Win32 DLL (非 MFC) プロジェクトを新規作成し、ここにリソースを追加します。

  • [新しいプロジェクト] ダイアログ ボックスの [Win32 プロジェクト] を選択し、Win32 プロジェクト ウィザードの DLL プロジェクト タイプを指定します。

  • DLL 用のリソース (文字列やメニューなど) を含むリソース スクリプトを新規作成し、.rc ファイルに保存します。

  • [プロジェクト] メニューの [既存項目の追加] をクリックし、新しい .rc ファイルをプロジェクトに追加します。

  • /NOENTRY リンカー オプションを指定します。/NOENTRY を指定すると、_main への参照が DLL にリンクされません。リソースのみの DLL を作成する場合は、このオプションを指定する必要があります。

  • DLL をビルドします。

リソースのみの DLL を使用するアプリケーションでは、LoadLibrary を呼び出して DLL に明示的にリンクする必要があります。リソースにアクセスするには、ジェネリック関数 FindResourceLoadResource を呼び出します。これらの関数は、リソースの種類に関係なく動作し、以下のリソース固有関数の中の 1 つを呼び出します。

  • FormatMessage

  • LoadAccelerators

  • LoadBitmap

  • LoadCursor

  • LoadIcon

  • LoadMenu

  • LoadString

アプリケーションはリソースを使い終わった時点で、FreeLibrary を呼び出す必要があります。

さらに詳しくは次のトピックをクリックしてください

参照

概念

Visual C++ の DLL