DLL-funktionen in C#



  • Kommt auf die DLL an, aber wenn via C- Funktionen exportiert wurde, dann kannst Du auch den Dependency Walker benutzen.
    Simon



  • ok, da hab ich jetzt einiges gefunden. Nur keine Importe aus der DLL Datei im C#-Code.
    Auch der DependencyWalker und andere Tools haben keine Funktionen gefunden...

    Da werd ich wohl mal Kontakt mit dem ursprünglichen Entwickler der DLL aufnehmen müssen.



  • Gibt es denn Möglichkeiten in DLLs, dass die Funktionen irgendwie versteckt sind, oder irgendwie anders über Umwege aufgerufen werden...

    Ich bin da aktuell etwas verwundert und mein Kollege der langjährige Erfahrung mit sowas hat, ist auch etwas perplex 😃



  • Gibt es denn Möglichkeiten in DLLs, dass die Funktionen irgendwie versteckt sind, oder irgendwie anders über Umwege aufgerufen werden...

    Weiss nicht was Du meinst.. ?

    Ev. so??
    Du siehst im C# Code, dass eine Funktion der DLL aufgerufen wird, aber in der DLL findest Du sie nicht, oder wie?



  • Ist die DLL überhaupt eine native Windows-DLL (mit C-Schnittstelle) oder einfach eine .NET-Assembly?
    Bei letzterem zeigt dir der DependencyWalker natürlich nichts an.

    Ich tippe darauf, weil es anscheinend keine DllImports im C#-Code gibt...

    Somit kannst du diese DLL dann auch nicht von C++ aus direkt aufrufen, außer du verwendest C++/CLI und schreibst dir damit wiederum eine Wrapper-DLL, die dann von C++ verwendet werden kann.



  • Du siehst im C# Code, dass eine Funktion der DLL aufgerufen wird, aber in der DLL findest Du sie nicht, oder wie?

    genau das.

    Ihr könntet mit der .NET Assembly recht haben..



  • wenns ne .net assembly ist kannste dann auch mitn reflektor rein schaun und dir die methoden anschaun

    einfacher ist es auch wenn du den haupt namespace kennst
    den tippste dann einfach in VS und intellisense zeigt dir an was es public gibt

    und wenn die methoden zudem noch die comment header haben (///) dann kannste mit sandcastle auch automatisch eine chm hilfedatei (sdk like) generieren lassen



  • also der reflector hats geöffnet und ich konnte auch methoden sehen. Also ist es wirklich eine .NET Assembly...



  • Und wo ist jetz dein Problem genau?



  • das Problem ist, dass ich eigentlich C++ verwenden wollte, was jetzt aber nicht mehr möglich ist. Aber ich hab hier jetzt erstmal alle Informationen, die ich wollte und bedanke mich bei euch für eure Hilfe 🙂 /bow


Anmelden zum Antworten