vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Zippen wie die Profis!  
 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 - Fortgeschrittene
Re: Habe noch was vergessen 
Autor: ModeratorFZelle (Moderator)
Datum: 28.10.04 12:05

Interfaces werden nicht Importiert, sondern implementiert.
Sie sind im gegensatz zu einer echten Klasse nicht mit einer
implementation ausgestattet.
Aber dafür kann man in jeder Klasse mehrere Interfaces implementieren.

Du sagst damit nur nach aussen, das Du das was im Interface steht
auch alles implementierst, nicht mehr, aber auch nicht weniger.
Dadurch kann jede Deiner Assemblies wissen, wie es eine
andere Klasse Aufrufen kann, da es ja durch das Interface "weis"
welche Funktionen unter welchem namen implementiert sind.

Also nochmal von Vorne.

Du hast ein Hauptprogramm, geschrieben in .NET.
Das besteht aus einem Hauptformular.
Dieses Hauptformular ist irgendwie von System.Windows.Forms.Form
abgeleitet.
Oder eine beliebige andere DLL.
Oder Du hast eine KonsolenAnwendung, egal.


Du hast User-DLL's ( Plugins ), die geladen und benutzt werden sollen.

Diese User-DLL's sollen auch irgendwie von sich aus mit dem Hauptprogramm
oder anderen Teilen komunizieren können.

Ist das so rchtig dargestellt?

Du kannst jetzt z.B. für das HauptProgramm ein Interface erstellen
Public Interface IPlugInMain
  Public Function MainPlugin_Receivemessage( ByVal Sender IPlugIn, ByVal _
    Message As CirculiSDK.PC.Circuli.IPlugIn.Messages ) as Integer
End Interface
Du kannst jetzt deine HauptForm implementieren:
Public Class Form1
  Inherits System.Windows.Forms.Form
  Implements IPlugInMain
...
 
  Public Function MainPlugin_Receivemessage( ByVal Sender IPlugIn, ByVal _
    Message As CirculiSDK.PC.Circuli.IPlugIn.Messages ) as Integer Implements _
    IPlugInMain.MainPlugin_Receivemessage
  ....
  End Function
Wenn Du nun in deinem Plugin Interface eine Variable vom Typ IPlugInMain
declarierst, und mit dem Wert des HauptFormulars belegst, kannst Du dann
einfach wie eine ganz normale Funktion drauf zugreifen.

Das ist hierdrin ziemlich einfach dargestellt.
http://www.codeproject.com/csharp/C__Plugin_Architecture.asp
Ist zwar in C#, aber das sollte Dir nicht schwerfallen, weil das ja nur anders aussieht,
aber nicht anders ist.
Lediglich die Declaration der Klassen ist etwas anders.
C#
public class Form1 : System.Windows.Forms.Form, IPlugInMain
VB.NET
Public Class Form1
  Inherits System.Windows.Forms.Form
  Implements IPlugInMain
Ansonsten solltest Du damit zurechtkommen.
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Dringend: Kommunikation Schnittstellen1.320teccer27.10.04 08:36
Re: Dringend: Kommunikation Schnittstellen790ModeratorFZelle27.10.04 09:16
Re: Dringend: Kommunikation Schnittstellen880teccer27.10.04 09:39
Re: Dringend: Kommunikation Schnittstellen783ModeratorFZelle27.10.04 09:56
Re: Dringend: Kommunikation Schnittstellen861teccer28.10.04 07:09
TEIL 2868teccer28.10.04 07:11
TEIL 3930teccer28.10.04 07:38
Habe noch was vergessen770teccer28.10.04 07:56
Re: Habe noch was vergessen836ModeratorFZelle28.10.04 09:31
Re: Habe noch was vergessen812teccer28.10.04 10:54
Re: Habe noch was vergessen925ModeratorFZelle28.10.04 12:05
Re: Habe noch was vergessen846teccer28.10.04 12:22
Re: Habe noch was vergessen791ModeratorFZelle28.10.04 12:38
Re: Habe noch was vergessen827teccer28.10.04 13:39
Re: Habe noch was vergessen741ModeratorFZelle28.10.04 13:49
Re: Habe noch was vergessen741teccer28.10.04 13:56
und noch mal758teccer28.10.04 13:58
Re: und noch mal786spike2428.10.04 14:08
Re: und noch mal779teccer28.10.04 14:11
Re: und noch mal743spike2428.10.04 14:20
Re: und noch mal878ModeratorFZelle28.10.04 14:21
Re: und noch mal782teccer28.10.04 15:09
Du machst mich ganz kirre *lach814teccer28.10.04 11:44
Re: Du machst mich ganz kirre *lach807ModeratorFZelle28.10.04 12:13
Re: Du machst mich ganz kirre *lach780teccer28.10.04 12:23
Hier jetzt der Neu-Aufmach-Betreff775teccer28.10.04 15:24
Re: Hier jetzt der Neu-Aufmach-Betreff800ModeratorFZelle28.10.04 15:59
Re: Hier jetzt der Neu-Aufmach-Betreff862teccer28.10.04 16:38
P.S. Und danke für deine ganze Mühe - Ohne Text736teccer28.10.04 16:41
Re: P.S. Und danke für deine ganze Mühe - Ohne Text723ModeratorFZelle28.10.04 16:46
Re: P.S. Und danke für deine ganze Mühe - Ohne Text776teccer28.10.04 17:04
Re: P.S. Und danke für deine ganze Mühe - Ohne Text826ModeratorFZelle28.10.04 17:11
Re: P.S. Und danke für deine ganze Mühe - Ohne Text791teccer28.10.04 17:39
Re: P.S. Und danke für deine ganze Mühe - Ohne Text766ModeratorFZelle28.10.04 18:21
Re: P.S. Und danke für deine ganze Mühe - Ohne Text728teccer28.10.04 19:04
Re: P.S. Und danke für deine ganze Mühe - Ohne Text745ModeratorFZelle28.10.04 20:03
Re: P.S. Und danke für deine ganze Mühe - Ohne Text825teccer28.10.04 20:20
ich schmeiss mich gleich weg *lach*786teccer28.10.04 21:14
Re: ich schmeiss mich gleich weg *lach*772ModeratorFZelle29.10.04 09:25
Re: ich schmeiss mich gleich weg *lach*762teccer29.10.04 09:37
Re: ich schmeiss mich gleich weg *lach*765spike2429.10.04 09:48
Re: ich schmeiss mich gleich weg *lach* 722ModeratorDaveS29.10.04 09:52
Re: ich schmeiss mich gleich weg *lach* 740WaldiMaywood29.10.04 09:56
Stellvertretend für euch drei747teccer29.10.04 10:05
Re: Stellvertretend für euch drei 765ModeratorDaveS29.10.04 10:29
Re: Stellvertretend für euch drei 785teccer29.10.04 11:07
Re: Stellvertretend für euch drei 764ModeratorDaveS29.10.04 11:33
Re: Stellvertretend für euch drei866WaldiMaywood29.10.04 11:12
Re: Stellvertretend für euch drei765teccer29.10.04 11:25
Re: Stellvertretend für euch drei779Micke03.12.04 14:18

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