vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Top-Preis! AP-Access-Tools-CD Volume 1  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Form in einer eigenen DLL Aufrufen (Beispiel Code) 
Autor: DerMicha
Datum: 19.08.11 01:42

Ich hatte mal ein Source gefunden wo man eine Form aus einer DLL Aufrufen kann, sone art Plugin die in einer Listbox aufgelistet wurde. Ich habe den Teil des Source Kopiert und zu einer Funktion gepackt.

Eventuell könnte es jemanden helfen bzw Problem Lösen der gerne eine Form aufrufen möchte aus eigene DLL.

Es gibt bei der Funktion ein ganz kleines problem, bei End Function ist es grün unterstrichen wo ich jedoch keine Lösung gefunden habe. Eventuell weis hier jemand das Problem aber ansich funktioniert es.


Modul:
Imports System.Reflection
 
Module DLLfunc
 
    ''' <summary>Ruft eine Form auf in einer DLL</summary>
    ''' <param name="DLLpath">Pfad zur DLL (C:\TEST.dll)</param>
    ''' <param name="DLLfile">DLL Dateiname mit Endung (TEST.dll)</param>
    ''' <param name="DLLname">DLL Dateiname ohne Endung (TEST)</param>
    ''' <param name="FormName">Form Name</param>
    Public Function CallDLLForm(ByVal DLLpath As String, ByVal DLLfile As _
      String, ByVal DLLname As String, ByVal FormName As String)
        Try
            Dim A As [Assembly] = [Assembly].LoadFrom(DLLpath)
            Dim B As [Module] = A.GetModule(DLLfile)
            Dim C As Type = B.GetType(DLLname & "." & FormName)
            Dim D As Form = DirectCast(Activator.CreateInstance(C), Form)
            D.ShowDialog()
        Catch ex As Exception
            MessageBox.Show(ex.Message.ToString, "Error", MessageBoxButtons.OK, _
              MessageBoxIcon.Error)
        End Try
    End Function
 
End Module
Form (Form aus der DLL aufrufen):
Public Class Form1
 
    'Form1 aus ClassLibrary1.dll aufrufen
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As _
      System.EventArgs) Handles Button1.Click
        CallDLLForm(Application.StartupPath & "\ClassLibrary1.dll", _
        "ClassLibrary1.dll", "ClassLibrary1", "Form1")
    End Sub
 
    'Form1 aus ClassLibrary2.dll aufrufen
    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As _
      System.EventArgs) Handles Button2.Click
        CallDLLForm(Application.StartupPath & "\ClassLibrary2.dll", _
        "ClassLibrary2.dll", "ClassLibrary2", "Form1")
    End Sub
 
 
 
 
 
    '2 Formen aus einer ClassLibrary1.dll aufrufen
    'Form1 aus ClassLibrary1.dll aufrufen
    Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As _
      System.EventArgs) Handles Button3.Click
        CallDLLForm("C:\ClassLibrary1.dll", "ClassLibrary1.dll", _
        "ClassLibrary1", "Form1")
    End Sub
 
    'Form2 aus ClassLibrary1.dll aufrufen
    Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As _
      System.EventArgs) Handles Button4.Click
        CallDLLForm("C:\ClassLibrary1.dll", "ClassLibrary1.dll", _
        "ClassLibrary1", "Form2")
    End Sub
 
End Class
Man könnte den Code eventuell noch anpassen und so das man nur den Pfad der DLL braucht.

PS: Habe die Funktion erweitert und man kann Form Name angeben.


Den Original Author kann ich nicht nennen weil das Original Source kein Author angegeben wurde sonst hätte ich den jetzt erwähnt. Den Original source habe ich auch schon lange.

Vieleicht könnt ihr das bei Tipps & Tricks aufnehmen.

Beitrag wurde zuletzt am 19.08.11 um 02:07:09 editiert.
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Form in einer eigenen DLL Aufrufen (Beispiel Code)2.171DerMicha19.08.11 01:42
Re: Form in einer eigenen DLL Aufrufen (Beispiel Code)1.679DerMicha19.08.11 02:50
Re: Form in einer eigenen DLL Aufrufen (Beispiel Code)1.322Maas19.08.11 07:01
Re: Form in einer eigenen DLL Aufrufen (Beispiel Code)1.373DerMicha19.08.11 07:31
Re: Form in einer eigenen DLL Aufrufen (Beispiel Code)1.355ModeratorDaveS19.08.11 07:35
Re: Form in einer eigenen DLL Aufrufen (Beispiel Code)1.512DerMicha19.08.11 07:45
Re: Form in einer eigenen DLL Aufrufen (Beispiel Code)1.416ModeratorDaveS19.08.11 08:16
Re: Form in einer eigenen DLL Aufrufen (Beispiel Code)1.376DerMicha19.08.11 18:46

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel