hallo,
ich habe mit hilfe von diesem tutorial: [VB.NET] Wie erstelle ich ein PlugIn System unter VB.NET (Framework 2)
ein pluginsystem gemacht.
Hostprogramm
So wenn ich den Host öffne dann kommt die Meldung das keine gültien Plugins gefunden wurden, owohl das Plugin eigendlich korrekt is?
kann mir da jemand helfen?
mfg filmee24
ich habe mit hilfe von diesem tutorial: [VB.NET] Wie erstelle ich ein PlugIn System unter VB.NET (Framework 2)
ein pluginsystem gemacht.
VB.NET-Quellcode
- Public Class PlugInConnector
- Public Shared Function LoadPlugIn(ByVal strFile As String) As [interface].PluginInterface_v1
- Dim vPlugIn As [interface].PluginInterface_v1
- Dim a As System.Reflection.Assembly = System.Reflection.Assembly.LoadFile(strFile)
- Dim types() As Type = a.GetTypes
- For Each pType As Type In types
- 'hier wird versucht die dll zu laden.
- 'dies funktioniert nur, wenn die dll auch das selbe interface implementiert
- 'wie der host vorgiebt
- Try
- vPlugIn = CType(a.CreateInstance(pType.FullName), [interface].PluginInterface_v1)
- 'dll ist ein gültiges plugin
- Return vPlugIn
- Catch ex As Exception
- End Try
- Next
- 'keine gültige dll gefunden
- Return Nothing
- End Function
- End Class
VB.NET-Quellcode
- Imports System.IO
- Public Class Form1
- Private myplugin As [interface].PluginInterface_v1
- Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
- Dim PlugIns As New List(Of [interface].PluginInterface_v1)
- For Each plug As String In Directory.GetFiles(Application.StartupPath & "\Plugins", "*.dll")
- Dim PlugIn As [interface].PluginInterface_v1 = PlugInConnector.LoadPlugIn(plug)
- If Not (PlugIn Is Nothing) Then
- PlugIns.Add(PlugIn)
- ListBox1.Items.Add(PlugIn.Name)
- End If
- Next
- If myplugin Is Nothing Then
- MessageBox.Show("Kein gültiges PlugIn gefunden !")
- Me.Close()
- End If
- End Sub
- End Class
So wenn ich den Host öffne dann kommt die Meldung das keine gültien Plugins gefunden wurden, owohl das Plugin eigendlich korrekt is?
kann mir da jemand helfen?
mfg filmee24