Forum » Programiranje » [c#]Kako vgraditi dll datoteke
[c#]Kako vgraditi dll datoteke
bucket ::
Torej je možno kako vgraditi dll datoteke v aplikacijo? Tako da ne nastanejo ob exe fajlu.
Imam tudi source od dll-ja ampak če ga dodam v solution explorerju ga pol nemorem/neznam uporabljat.
Visual Studio 2005
Lp
Imam tudi source od dll-ja ampak če ga dodam v solution explorerju ga pol nemorem/neznam uporabljat.
Visual Studio 2005
Lp
- spremenil: bucket ()
imagodei ::
dll je dll - dynamic link library. Mogoče bi pomagalo, če bi na Wikipediji prebral kaj o tem.
DLL datoteke ne "nastanejo ob exe fajlu". Zelo simpl povedano so dll datoteke zbirka funkcij in ta zbirka daje svoje funkcije na uporabo drugim programom. Z ustreznim klicem funkcije iz DLL-ja lahko izvršljiva datoteka uporablja to funkcijo znotraj sebe. IOW, funkcija za neko pogosto opravilo je že napisana, tvoj program pa samo pokliče to funkcijo iz dll-ja.
Ne vem, kaj hočeš doseči s tem, da bi dll-je vgradil v aplikacijo?
DLL datoteke ne "nastanejo ob exe fajlu". Zelo simpl povedano so dll datoteke zbirka funkcij in ta zbirka daje svoje funkcije na uporabo drugim programom. Z ustreznim klicem funkcije iz DLL-ja lahko izvršljiva datoteka uporablja to funkcijo znotraj sebe. IOW, funkcija za neko pogosto opravilo je že napisana, tvoj program pa samo pokliče to funkcijo iz dll-ja.
Ne vem, kaj hočeš doseči s tem, da bi dll-je vgradil v aplikacijo?
- Hoc est qui sumus -
bucket ::
Vem da ne "nastanejo" se tja skopirajo.
Hočem dosečt to, da ko bom aplikacijo prenesel da prenašam samo exe fajl. Zdaj ko naredim bulid imam še zraven 2 dll-ja (usblib in graphlib; no saj to zdaj nima pomena kaki dll-ji so) in bi rad da bi se to vključilo v exe fajl.
Namesto treh datotek potrebnih za delovanje programa bi rad imel samo eno.
Hočem dosečt to, da ko bom aplikacijo prenesel da prenašam samo exe fajl. Zdaj ko naredim bulid imam še zraven 2 dll-ja (usblib in graphlib; no saj to zdaj nima pomena kaki dll-ji so) in bi rad da bi se to vključilo v exe fajl.
Namesto treh datotek potrebnih za delovanje programa bi rad imel samo eno.
zerox ::
Če pravi da hoče imeti en exe na koncu in ne installerja, ki bi dlle potem zraven namestil in registriral *sigh*.
Mogoče bo pomagal ILMerge
mja.. gr8 timing ;>
Mogoče bo pomagal ILMerge
mja.. gr8 timing ;>
Zgodovina sprememb…
- spremenil: zerox ()
imagodei ::
madzi> "Vem da ne "nastanejo" se tja skopirajo."
Tudi to ni rečeno. Ne vem, kakšne nastavitve imaš in kako ti kodo skompajla, ampak res ni mus, da se ti dll-ji kopirajo v isti direktorij, kot exe.
V bistvu je lepa količina dll-jev, ki jih uporablja mnoštvo nekih programov, nameščenih pod c:\windows\system32
Tudi to ni rečeno. Ne vem, kakšne nastavitve imaš in kako ti kodo skompajla, ampak res ni mus, da se ti dll-ji kopirajo v isti direktorij, kot exe.
V bistvu je lepa količina dll-jev, ki jih uporablja mnoštvo nekih programov, nameščenih pod c:\windows\system32
- Hoc est qui sumus -
bucket ::
V tem primeru se skopira. Za povezavo z usb in risanje grafov mam 2 dll-ja ki sem ju pač downloadal iz neta. Pol sem ju dodal v toolbox in od tam v mojo aplikacijo. Sistemski dll-ji se ne kopirajo.
LP
LP
MrBrdo ::
madzi: DLL moraš vključit v resource aplikacije. Potem pa ob zagonu stvar "extractaš" nekam. Da bi imel DLL ves čas v exe datoteki in ga tudi uporabljal pa ne gre.
http://www.codeproject.com/KB/cs/embedw...
http://support.microsoft.com/kb/319292
V glavnem DLL spravi nekako v resources potem pa ga najdi preko imena in odpreš stream, potem ga lahko skopiraš na poljubno lokacijo.
Edit: ok če imaš .NET assembly/DLL potem bo verjetno ILmerge še bolje. Če bi imel C++ DLL pa bi moral nekako tako postopat.
http://www.codeproject.com/KB/cs/embedw...
http://support.microsoft.com/kb/319292
V glavnem DLL spravi nekako v resources potem pa ga najdi preko imena in odpreš stream, potem ga lahko skopiraš na poljubno lokacijo.
Edit: ok če imaš .NET assembly/DLL potem bo verjetno ILmerge še bolje. Če bi imel C++ DLL pa bi moral nekako tako postopat.
MrBrdo
Zgodovina sprememb…
- spremenilo: MrBrdo ()
nightrage ::
Vključiš dll v projekt (torej tudi referenco) nato izbereš dll in nastaviš dva propertija torej build action: embedded resource in copy to output directory: do not copy! Pri uporabi v aplikaciji naložiš dll dinamično preko reflection-a link.
Zgodovina sprememb…
- spremenil: nightrage ()
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | C# in SQLite knjižicaOddelek: Programiranje | 1119 (853) | bsslo |
» | [VB.NET] - Kako registrirati DLL-je ob inštalaciji?Oddelek: Programiranje | 1176 (1072) | darkolord |
» | Problem z kompajlanjem primerovOddelek: Programiranje | 1086 (1032) | MasterBlaster |
» | VB.NET in statično povezovanjeOddelek: Programiranje | 957 (862) | 64202 |
» | C in DllOddelek: Programiranje | 1137 (1044) | Senitel |