Announcement

Collapse
No announcement yet.

Funktion aus DLL Dynamisch laden

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Funktion aus DLL Dynamisch laden

    Hallo,

    Ich habe eine DLL mit einer Funktion.
    Die Funktion in der DLL möchte ich gerne zur Laufzeit Dynamisch ansprechen.
    Also die DLL liegt in einem Ordner wo ich die Funktion aufrufen möchte.

    Hat jemand vielleicht ein Beispiel ?

    Danke im vorraus

    Entwickler

  • #2
    Hallo,

    was für eine DLL ist es? Handelt es sich um eine NET-Assembly? Dann geht es wie immer unter NET: Die Methode ist in einer Klasse enthalten, Du erzeugst eine Instanz dieser Klasse und benutzt dieses Objekt - selbstverständlich dynamisch zur Laufzeit. (Bei einer statischen Methode geht es auch ohne einzelne Instanz.)

    Wenn es sich nicht um eine NET-Assembly handelt, geht es auch; aber dazu weiß ich nichts - such einmal nach Invoke.

    Und wenn Du nicht mit VB.NET arbeitest, sondern mit "einfachem" VB, bist Du hier sowieso verkehrt.

    Gruß Jürgen

    Comment


    • #3
      VB.NET DLL Funktion dynamisch laden

      Hallo Jürgen,

      Danke für Antwort.
      Es handelt sich um eine VB.NET DLL
      Diese DLL liegt in einem Ordner. Die DLL wurde nicht als Verweis in das Projekt hinzugefügt.

      Was ich erreichen möchte ist in einem Ordner alle DLL's durchgehen die dort drinne liegen und in jeder VB.NET DLL eine Funktion Namens INFO starten.
      Es wird so sein das mit der Zeit immer mehr VB.NET DLL in diesen Ordner kommen und ich dann dynamisch auf die DLL zugreifen.

      Mfg
      Entwickler

      Comment


      • #4
        Originally posted by Entwickler View Post
        Was ich erreichen möchte ist in einem Ordner alle DLL's durchgehen die dort drinne liegen
        Das geht mit Assembly.Load(Dateiname). Alle Dateinamen bekommst Du mit Directory.GetFiles().

        und in jeder VB.NET DLL eine Funktion Namens INFO starten.
        Das ist mir weiterhin schleierhaft. In einer NET-Assembly (gleichgültig, ob die von C# oder VB.NET oder Delphi.Prism oder sonstwas stammt) gibt es keine freischwebenden "Funktionen", sondern nur Klassen, die Eigenschaften und Methoden enthalten. Und bei Deinen Assemblies?

        Jürgen

        Comment


        • #5
          Habe die Antwort

          Hallo Jürgen,

          Das was ich gesucht habe war:

          VB.net dll late binding

          Ja du hast Recht eine Klasse mit Methoden Late Binding

          Danke für Hilfe

          Comment

          Working...
          X