Tworzenie biblioteki DLL z samymi zasobami
Biblioteka DLL tylko dla zasobów to biblioteka DLL, która nie zawiera żadnych zasobów, takich jak ikony, mapy bitowe, ciągi i okna dialogowe. Używanie biblioteki DLL tylko do zasobów jest dobrym sposobem udostępniania tego samego zestawu zasobów między wieloma programami. Dobrym sposobem jest również zapewnienie aplikacji zasobów zlokalizowanych w wielu językach. Aby uzyskać więcej informacji, zobacz Zlokalizowane zasoby w aplikacjach MFC: biblioteki DLL satelitarne.
Tworzenie biblioteki DLL tylko dla zasobów
Aby utworzyć bibliotekę DLL tylko dla zasobów, należy utworzyć nowy projekt biblioteki DLL systemu Windows (innej niż MFC) i dodać zasoby do projektu:
Wybierz pozycję Projekt Win32 w oknie dialogowym Nowy projekt . Wprowadź nazwy projektu i rozwiązania, a następnie wybierz przycisk OK.
W Kreatorze aplikacji Win32 wybierz pozycję Ustawienia aplikacji. Wybierz typ aplikacji dll. W obszarze Dodatkowe opcje wybierz pozycję Pusty projekt. Wybierz pozycję Zakończ , aby utworzyć projekt.
Utwórz nowy skrypt zasobu zawierający zasoby biblioteki DLL (na przykład ciąg lub menu). Zapisz plik
.rc
.W menu Projekt wybierz pozycję Dodaj istniejący element, a następnie wstaw nowy
.rc
plik do projektu.NOENTRY Określ /konsolidator opcji.
/NOENTRY
uniemożliwia konsolidatorowi łączenie odwołania z_main
biblioteką DLL. Ta opcja jest wymagana do utworzenia biblioteki DLL tylko dla zasobów.Skompiluj bibliotekę DLL.
Wybierz pozycję Kreator pulpitu systemu Windows w oknie dialogowym Nowy projekt i wybierz przycisk Dalej. Na stronie Konfigurowanie nowego projektu wprowadź nazwy projektu i rozwiązania, a następnie wybierz pozycję Utwórz.
W oknie dialogowym Projekt klasyczny systemu Windows wybierz typ aplikacji dynamicznej biblioteki linków. W obszarze Dodatkowe opcje wybierz pozycję Pusty projekt. Wybierz przycisk OK , aby utworzyć projekt.
Utwórz nowy skrypt zasobu zawierający zasoby biblioteki DLL (na przykład ciąg lub menu). Zapisz plik
.rc
.W menu Projekt wybierz pozycję Dodaj istniejący element, a następnie wstaw nowy
.rc
plik do projektu.NOENTRY Określ /konsolidator opcji.
/NOENTRY
uniemożliwia konsolidatorowi łączenie odwołania z_main
biblioteką DLL. Ta opcja jest wymagana do utworzenia biblioteki DLL tylko dla zasobów.Skompiluj bibliotekę DLL.
Używanie biblioteki DLL tylko do zasobów
Aplikacja korzystająca z biblioteki DLL tylko do zasobów powinna wywołać metodę LoadLibraryEx lub powiązaną funkcję, aby jawnie połączyć się z biblioteką DLL. Aby uzyskać dostęp do zasobów, wywołaj funkcje FindResource
ogólne i LoadResource
, które działają na dowolnym rodzaju zasobie. Możesz też wywołać jedną z następujących funkcji specyficznych dla zasobów:
FormatMessage
LoadAccelerators
LoadBitmap
LoadCursor
LoadIcon
LoadMenu
LoadString
Aplikacja powinna wywołać FreeLibrary
wywołanie po zakończeniu korzystania z zasobów.
Zobacz też
Praca z plikami zasobów
Tworzenie bibliotek DLL języka C/C++ w programie Visual Studio