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 stellt zudem eine gute Möglichkeit dar, eine Anwendung mit Ressourcen bereitzustellen, die in verschiedene Sprachen lokalisiert wurden. Weitere Informationen finden Sie unter Lokalisierte Ressourcen in MFC-Anwendungen: Satelliten-DLLs.

Erstellen einer DLL als reine Ressource

Zum Erstellen einer DLL als reine Ressource erstellen Sie ein neues Windows-DLL-Projekt (nicht MFC) und fügen dem Projekt die Ressourcen hinzu:

  1. Klicken Sie im Dialogfeld Neues Projekt auf Win32-Projekt. Geben Sie den Projekt- und Projektmappennamen ein, und klicken Sie auf OK.

  2. Klicken Sie im Win32-Anwendungs-Assistenten auf Anwendungseinstellungen. Wählen Sie einen Anwendungstyp der DLL aus. Wählen Sie unter Zusätzliche Optionendie Option Leeres Projektaus. Klicken Sie auf Fertig stellen, um Ihr Projekt zu erstellen.

  3. Erstellen Sie ein neues Ressourcenskript, das die Ressourcen für die DLL (z. B. eine Zeichenfolge oder ein Menü) enthält. Speichern Sie die Datei .rc.

  4. Wählen Sie im Menü Projekt die Option Vorhandenes Element hinzufügen aus, und fügen Sie dann die neue .rc-Datei in das Projekt ein.

  5. Legen Sie die Linkeroption /NOENTRY 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.

  6. Erstellen Sie die DLL.

  1. Klicken Sie im Dialogfeld Neues Projekt auf Windows-Desktopassistent und dann auf Weiter. Geben Sie auf der Seite Neues Projekt konfigurieren den Projekt- und Projektmappennamen ein, und klicken Sie dann auf Erstellen.

  2. Wählen Sie im Dialogfeld Windows-Desktopprojekt einen Anwendungstyp der Dynamic Link Library aus. Wählen Sie unter Zusätzliche Optionendie Option Leeres Projektaus. Klicken Sie auf OK, um das Projekt zu erstellen.

  3. Erstellen Sie ein neues Ressourcenskript, das die Ressourcen für die DLL (z. B. eine Zeichenfolge oder ein Menü) enthält. Speichern Sie die Datei .rc.

  4. Wählen Sie im Menü Projekt die Option Vorhandenes Element hinzufügen aus, und fügen Sie dann die neue .rc-Datei in das Projekt ein.

  5. Legen Sie die Linkeroption /NOENTRY 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.

  6. Erstellen Sie die DLL.

Verwenden einer DLL als reine Ressource

Die Anwendung, die die reine Ressourcen-DLL verwendet, sollte LoadLibraryEx oder eine ähnliche Funktion aufrufen, um eine explizite Verknüpfung mit der DLL zu erstellen. Rufen Sie für den Zugriff auf die Ressourcen die generischen Funktionen FindResource und LoadResource auf, die mit jeder Art von Ressource funktionieren. Alternativ dazu können Sie auch 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.

Siehe auch

Working with Resource Files (Arbeiten mit Ressourcendateien)
Erstellen von C/C++-DLLs in Visual Studio