Stručný návod, jak ve Visual Studiu vytvořit aplikaci, používající dll knihovnu tak, aby vznikl jen jeden výsledný exe soubor a dll knihovna se nemusela k distribuci zvlášť přikládat.
Ve Visual Studiu menu Project / Properties / Resources - v horní liště přepněte zobrazení na Files a do pole pod lištou vložte požadovanou dll knihovnu (normálně metodou přetažení ze složky, ke ji máte uloženou, jako v průzkumníku).
Poté do zdrojového kódu Vaší aplikace přidejte před inicializaci komponenty, která danou dll knihovnu používá toto:
. . . public Form1() { // prilinkovani MojeDllKnihovna.dll AppDomain.CurrentDomain.AssemblyResolve += new ResolveEventHandler(CurrentDomain_AssemblyResolve); // inicializace komponent InitializeComponent(); } System.Reflection.Assembly CurrentDomain_AssemblyResolve(object sender, ResolveEventArgs args) { // prilinkovani MojeDllKnihovna.dll return System.Reflection.Assembly.Load(Properties.Resources.MojeDllKnihovna); } . . .
Poté by se již měl výsledný exe soubor vytvářet s vloženou dll knihovnou jako jeden soubor.
Tento návod jsem sepsal díky příspěvku uživatele mracka michal na http://forum.zive.sk.
Více na [C#] Přilinkování assembly nebo DLL (fórum).
Tento web jsem zakládal na střední, v roce 2008. Je zde hlavně archiv mé tvorby.
Aktuální věci publikuji kvůli úspoře času na Twitter.
Honza
"Člověk má tři cesty, jak moudře jednat. Nejprve přemýšlením, to je ta nejušlechtilejší cesta. Druhá cesta vede napodobováním, ta je cestou nejlehčí, a třetí cesta, zkušenosti, je tou nejtvrdší."