JanKoWeb: Programování - Visual Studio: c# a vložení dll knihovny přímo do výsledného exe souboru

Visual Studio: c# a vložení dll knihovny přímo do výsledného exe souboru

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.

Reference

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).

Rubrika Programování | Tagy Visual Studio, C#, Exe, Dll, Přilinkování | Ne 27.03.2011 | 9286x

Náhodné články

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

"Naděje je stav ducha, který dává smysl našemu životu."

V. Havel