Discussion:
Dynamisches Einbinden von DLL zur Laufzeit in C#
(zu alt für eine Antwort)
Alex Stark
2006-02-02 11:44:30 UTC
Permalink
Hallo,

ich suche ein Beispiel oder andere Infos zum dynamischen Einbinden von nativ
DLL's
zur Laufzeit.
Alles was ich finde sind Infos wo zur Compilezeit der Name der DLLbekannt
sein muß.
Aber ich weiß erst zur Laufzeit, welche DLL ich laden mß.Bin für jeden Tip
dankbar.

Gruss
Alex
Thomas Scheidegger [MVP]
2006-02-02 12:01:47 UTC
Permalink
Hallo Alex
Beispiel oder andere Infos zum dynamischen Einbinden von nativ DLL's zur Laufzeit.
was heisst 'nativ DLL' da genau?
Eine DLL mit einem native Flat-API (für PInvoke),
oder mit COMponenten für COM-Interop?

für dynamic PInvoke zB:

http://www.codeproject.com/dotnet/DynamicDllImport.asp

http://www.codeproject.com/csharp/dyninvok.asp

http://www.codeproject.com/csharp/dynamicinvokedll.asp

http://www.msjogren.net/dotnet/eng/samples/dotnet_dynpinvoke.asp


für COM-Interop in C# nur per Reflection,
zur allergrössten Not halt via VB.NET-Library & Late-Binding.
--
Thomas Scheidegger - MVP .NET - 'NETMaster'
http://www.cetus-links.org/oo_dotnet.html - http://dnetmaster.net/
Alex Stark
2006-02-02 21:52:24 UTC
Permalink
Hallo,

danke erstmal für Eure Antworten. Bei den einzubindenden DLL's handelt es
sich um
"normale" Delphi DLL zu Steuerung von Meßgeräten.

Ich werde mir die Seiten mal zu Gemüte führen.

Danke & Gruss
Alex
Post by Thomas Scheidegger [MVP]
Hallo Alex
Beispiel oder andere Infos zum dynamischen Einbinden von nativ DLL's
zur Laufzeit.
was heisst 'nativ DLL' da genau?
Eine DLL mit einem native Flat-API (für PInvoke),
oder mit COMponenten für COM-Interop?
http://www.codeproject.com/dotnet/DynamicDllImport.asp
http://www.codeproject.com/csharp/dyninvok.asp
http://www.codeproject.com/csharp/dynamicinvokedll.asp
http://www.msjogren.net/dotnet/eng/samples/dotnet_dynpinvoke.asp
für COM-Interop in C# nur per Reflection,
zur allergrössten Not halt via VB.NET-Library & Late-Binding.
--
Thomas Scheidegger - MVP .NET - 'NETMaster'
http://www.cetus-links.org/oo_dotnet.html - http://dnetmaster.net/
Timo Wieczorek
2006-02-02 12:15:14 UTC
Permalink
Hallo,
Post by Alex Stark
ich suche ein Beispiel oder andere Infos zum dynamischen Einbinden von nativ
DLL's
zur Laufzeit.
Alles was ich finde sind Infos wo zur Compilezeit der Name der DLLbekannt
sein muß.
Aber ich weiß erst zur Laufzeit, welche DLL ich laden mß.Bin für jeden Tip
dankbar.
Gruss
Alex
Vielleicht wäre das Thema Reflection eine Lösung für das Problem.
Eine Einfügung gibt es z.B. unter
http://www.codeproject.com/csharp/introreflection.asp

Die wichtigsten Befehle in diesem Zusammenhand sind wahrscheinlich
Assembly LoadedAssembly = Assembly.Load("mscorlib.dll");
System.Type[] ExistingTypes = LoadedAssembly.GetTypes ();

// Und zum Erstellen des Objektes vielleicht
Control oControl = (Control)((Type)ExistingTypes[i]).InvokeMember("",
BindingFlags.CreateInstance |
BindingFlags.Public |
BindingFlags.Instance,
null,
null,
new object[] { });´
--
Mit freundlichen Grüßen

Timo Wieczorek
Thomas Scheidegger [MVP]
2006-02-02 12:46:24 UTC
Permalink
Hallo Timo
Post by Timo Wieczorek
Beispiel oder andere Infos zum dynamischen Einbinden von nativ DLL's
Vielleicht wäre das Thema Reflection eine Lösung für das Problem.
ich interpretiere 'nativ DLL' s als das Gegenteil von Assemblies...
--
Thomas Scheidegger - MVP .NET - 'NETMaster'
http://www.cetus-links.org/oo_dotnet.html - http://dnetmaster.net/
Frank Dzaebel
2006-02-02 14:28:17 UTC
Permalink
Hallo Timo,
Post by Timo Wieczorek
Vielleicht wäre das Thema Reflection eine Lösung für das Problem.
Reflection kann man nur auf .NET-Assemblies (
managed DLLs) ausführen.
"Native DLLs" ist normalerweise ein Synonym zu "unmanaged DLLs".


ciao Frank
--
Dipl.Inf. Frank Dzaebel [MCP/MVP C#]
http://Dzaebel.NET
Peter Gloor
2006-02-03 11:04:14 UTC
Permalink
"Alex Stark" <***@online.nospam> schrieb im Newsbeitrag news:e$ECJ4%***@tk2msftngp13.phx.gbl...
[...]
Post by Alex Stark
ich suche ein Beispiel oder andere Infos zum dynamischen Einbinden von
nativ DLL's zur Laufzeit.
http://www.codeproject.com/csharp/cscpplatebind.asp#xx1251050xx

Unbedingt auch den Feedback lesen.

Gruss
Peter

Loading...