DLL während Laufzeit einbinden

22/10/2007 - 21:45 von lemallem | Report spam
hallo zusammen,
ich habe eine exe-Anwendung mit C# in VS2005 geschrieben, welche ein
Verweis auf eine DLL eines COM-Servers enthàlt (hard codiert durch
Menü->Verweis hinzufügen in VS2005).
Meine Frage lautet: wie kann ich erst wàhrend der Laufzeit diese DLL
einbinden? das heisst erst nach dem Starten der exe-Anwendung z.B.
durch ein button die gewünschte DLL einbinden?

vielen Dank.
 

Lesen sie die antworten

#1 Frank Dzaebel
22/10/2007 - 22:06 | Warnen spam
Hallo lemallem,

voller Vor- und Zuname als Username sind hier gern gesehen.

ich habe eine exe-Anwendung mit C# in VS2005 geschrieben, welche ein
Verweis auf eine DLL eines COM-Servers enthàlt (hard codiert durch
Menü->Verweis hinzufügen in VS2005).
Meine Frage lautet: wie kann ich erst wàhrend der Laufzeit diese DLL
einbinden? das heisst erst nach dem Starten der exe-Anwendung z.B.
durch ein button die gewünschte DLL einbinden?



Bei COM-Servern hat man ja normal gerade den Vorteil,
dass man ihn nicht hart codieren muss, sondern z.B.
über eine ProgID oder CLSID instanziieren kann.

Also z.B.:
Type type = Type.GetTypeFromProgID("Word.Application");
object myComServer = Activator.CreateInstance(type);
oder:
Type type = Type.GetTypeFromCLSID(new
Guid("{000209ff-0000-0000-c000-000000000046}"));
object myComServer = Activator.CreateInstance(type);


[Spàte Bindung bei C# am Beispiel Word]
http://dzaebel.net/LatebindWord.htm


ciao Frank
Dipl.Inf. Frank Dzaebel [MCP/MVP C#]
http://Dzaebel.NET

Ähnliche fragen