Wie erstelle ich eine Ressource dll? Die DLL wird eine Reihe von. Png-Dateien haben. In gewisser Weise sollten diese .png-Dateien von der DLL verfügbar gemacht werden. Meine Anwendung müsste diese DLL beziehen, um eine PNG-Datei zu erhalten.Wie erstelle ich eine Ressource dll
Antwort
Eine Ressource DLL ist die gleiche wie jede andere DLL, es hat nur wenig oder gar keinen Code und relativ mehr Ressourcen.
Microsoft keine vordefinierte Ressourcentyp für PNG-Dateien, aber Sie können Ihre eigenen
Die minimal mögliche Ressourcen-DLL definieren, ist nur eine kompilierte RC-Datei an den Linker wie diese übergeben.
//save this as resources.rc (supply your own .png file)
#define RT_PNG 99
#define ID_DIGG 1
ID_DIGG RT_PNG "image\\digg.png"
dann diese Befehle an einer Eingabeaufforderung auszuführen.
rc resources.rc
link /dll /noentry /machine:x86 resources.res
Das ist es. Der erste Befehl kompiliert resources.rc in resources.res Der zweite Befehl macht resources.res in eine DLL.
Sie sollten jetzt eine DLL namens resources.dll
haben, die eine einzelne PNG-Datei enthält. In der Praxis werden Sie natürlich die #defines
in eine Header-Datei setzen, die Sie mit dem Code teilen, der die DLL verwendet.
Um die DLL in C++ zu verwenden, würde Ihr Code in etwa so aussehen.
#define RT_PNG MAKEINTRESOURCE(99)
#define ID_DIGG MAKEINTRESOURCE(1)
HMODULE hMod = LoadLibraryEx("resources.dll", NULL, LOAD_LIBRARY_AS_DATAFILE);
if (NULL != hMod)
{
HRSRC hRes = FindResource(hMod, RT_PNG, ID_DIGG);
if (NULL != hRes)
{
HGLOBAL hgbl = LoadResource(hMod, hRes)
void * pPng = LockResource(hgbl);
UINT32 cbPng = SizeofResource(hMod, hRes);
// pPng now points to the contents of your your .png file
// and cbPng is its size in bytes
}
// Don't free the library until you are done with pPng
// FreeLibrary(hMod);
}
- 1. Wie erstelle ich eine PNG-Ressource?
- 2. Wie erstelle ich eine starke benannte Interop-DLL für shdocvw.dll
- 3. Wie erstelle ich eine .pyd Datei?
- 4. Wie erstelle ich JSON aus einer Jersey Ressource?
- 5. Wie erstelle ich eine virtuelle Datei?
- 6. Wie erstelle ich eine Mehrfachfrage?
- 7. Wie erstelle ich eine Transaktionsnummer?
- 8. Wie erstelle ich eine MKMapView?
- 9. Wie erstelle ich eine Gemfile?
- 10. Wie erstelle ich eine Ressourcendatei für eine Konsolenanwendung?
- 11. Wie erstelle ich eine Importbibliothek (.lib) UND eine DLL in Visual C++?
- 12. Ressource in DLL statt Hauptanwendung finden
- 13. Create DLL: Wie kann ich eine DLL verwenden, um eine neue DLL zu erstellen?
- 14. Wie animiere ich eine Ressource in XAML?
- 15. Wie sollte ich eine REST-Ressource aktualisieren?
- 16. Wie Ressource-ID ohne eine Ressource
- 17. Wie dokumentiere ich eine C# dll
- 18. Wie erstelle ich eine generische Erweiterungsmethode?
- 19. Laravel 4: Wie erstelle ich eine Bestätigungsmail?
- 20. Wie erstelle ich eine nggrid benutzerdefinierte Fußzeile
- 21. Wie erstelle ich eine Erweiterungsmethode (F #)?
- 22. Wie erstelle ich eine BigQuery-Ansicht?
- 23. Wie erstelle ich eine Playlist für RealPlayer?
- 24. Wie erstelle ich heute eine Sprache?
- 25. Wie erstelle ich eine Suchmaschine mit Filtern?
- 26. Wie erstelle ich eine Drop-Down-Liste?
- 27. Wie erstelle ich eine silverlight editierbare Listbox?
- 28. Wie erstelle ich eine SMTP-Mail?
- 29. Wie erstelle ich eine eindeutige Host-ID?
- 30. C# UWP Wie erstelle ich eine Sicherungsdatei
wow ... Dank lot..this sieht aus wie eine nützliche Informationen :) –
durch diese Technik verwendet wird, kann ich die meine selbst erstellte IE-Toolbar in Echtzeit auf das Symbol Schaltfläche ändern? – karikari
@ Karikari: Ich denke nicht. Ich kann nicht, wie diese Technik mit Änderungen in Echtzeit hilft. Die Ressourcen in der DLL sind zur Verknüpfungszeit definiert, sie sind nicht dynamisch. –