Erstellen einer DLL als reine Ressource
Eine reine Ressourcen-DLL ist eine DLL, die ausschließlich Ressourcen enthält, z. B. Symbole, Bitmaps, Zeichenfolgen und Dialogfelder. Die Verwendung einer reinen Ressourcen-DLL bietet eine gute Möglichkeit, dieselben Ressourcen von mehreren Programmen gemeinsam nutzen zu lassen. Sie ist außerdem von Vorteil, wenn für eine Anwendung in mehreren Sprachen lokalisierte Ressourcen bereitgestellt werden sollen (siehe Lokalisierte Ressourcen in MFC-Anwendungen: Satelliten-DLLs).
Um eine reine Ressourcen-DLL zu erstellen, erstellen Sie ein neues Win32-DLL-Projekt (MFC-fremd) und fügen dem Projekt die Ressourcen hinzu.
Wählen Sie im Dialogfeld Neues Projekt die Option Win32-Projekt aus, und legen Sie im Win32-Projekt-Assistenten einen DLL-Projekttyp fest.
Erstellen Sie für die DLL ein neues Ressourcenskript, das die Ressourcen (z. B. eine Zeichenfolge oder ein Menü) enthält, und speichern Sie es als RC-Datei.
Wählen Sie im Menü Projekt die Option Vorhandenes Element hinzufügen, und fügen Sie dann die neue RC-Datei in das Projekt ein.
Legen Sie die /NOENTRY-Linkeroption fest. /NOENTRY verhindert, dass der Linker einen Verweis auf _main in die DLL einfügt. Diese Option ist erforderlich, um eine reine Ressourcen-DLL zu erstellen.
Erstellen Sie die DLL.
Die Anwendung, die die reine Ressourcen-DLL verwendet, sollte LoadLibrary aufrufen, um eine explizite Verknüpfung mit der DLL zu erstellen. Um auf die Ressourcen zuzugreifen, rufen Sie die generischen Funktionen FindResource und LoadResource auf, die für jeden beliebigen Ressourcentyp verwendet werden können. Alternativ können Sie eine der folgenden ressourcenspezifischen Funktionen aufrufen:
FormatMessage
LoadAccelerators
LoadBitmap
LoadCursor
LoadIcon
LoadMenu
LoadString
Die Anwendung sollte FreeLibrary aufrufen, sobald die Ressourcen nicht mehr benötigt werden.