Hallo, ich möchte eine Software, die in unserer Firma programmiert wird, fernsteuern. Normalerweise machen die Kollegen das über Delphi und greifen direkt auf die OLE Schnittstelle zu, die von der Software angeboten wird. Aber ich bekomme ich keine Delphi Lizenz für meinen Platz. Daher habe ich das zunächst mit Python und pywin32 versucht, komme aber nur bis zu einem gewissen Punkt. Deshalb ist die zweite Option, dass ganze über C# zu versuchen.
Die Kollegen, die die Software programmieren, können beim Compilieren eine DLL für .NET compilieren, können mir aber auch nicht sagen, wie man die verwendet. Die DLL ist laut dem Kollegen ein Wrapper, der die OLE Klassen in .NET Klassen kapselt.
Eventuell reicht es mir schon wenn ich weiß wie ich diese DLL in C# laden und die Klassen verwenden kann. Die Funktion der Klassen selbst ist mir dann bekannt.
Ich hoffe, ihr könnt mit den Informationen schon was anfangen.
Hallo Rustasian
Die Kollegen, die die Software programmieren, können beim Compilieren eine DLL für .NET compilieren, ...
Einfach in deinem Projekt eine Referenz auf die DLL einfügen.
Kannst du den Quellcode der DLL anschauen?
Gruß
Alf
Hallo und willkommen,
du brauchst nur die DLL als Referenz zu deinem Projekt hinzufügen und solltest dann auf die enthaltenen Klassen (in den zugehörigen Namensbereichen) zugreifen können.
Einfach in deinem Projekt eine Referenz auf die DLL einfügen.
Ok, ich bin neu neu in der .NET Welt, aber das bekomme ich eventuell hin.
Kannst du den Quellcode der DLL anschauen?
So weit ich weiß wird die DLL automatisch generiert. Ich weiß nicht, ob es dafür überhaupt einen Quellcode gibt. Kann beim Compilieren sicher mit ausgegeben werden, aber die Möglichkeit hab ich nicht. Ich gehe davon aus, dass die Funktionsnamen und Parameter identisch zu denen der OLE Schnittstelle sind und der Rest von VSCode erledigt wird.
Vielen Dank für die Hilfe.
Gruß
Rustasian
Du kannst einen Decompiler wie ILSpy bemühen
Wenn der damit umgehen kann, müsstest Du auch relevante Informationen (z.B. .NET-Version) sehen und ggf. auch nutzen können.
Danke für den Tipp. Hat funktioniert. .NET Framework 4.0 wird mir da angezeigt
Dann muss dein Projekt (leider) auch .NET 4.x sein.
Oder deine Kollegen können es für eine neuere Version kompilieren, was da die Möglichkeiten bei Delphi sind, weiß ich nicht.
Ich hoffe. Framework 4.0 ist nicht gerade das frischeste. Ich hoffe, die können das für .NET6 compilieren.