vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
TOP-Angebot: 17 bzw. 24 Entwickler-Vollversionen zum unschlagbaren Preis!  
 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.312teccer27.10.04 08:36
Re: Dringend: Kommunikation Schnittstellen787ModeratorFZelle27.10.04 09:16
Re: Dringend: Kommunikation Schnittstellen878teccer27.10.04 09:39
Re: Dringend: Kommunikation Schnittstellen777ModeratorFZelle27.10.04 09:56
Re: Dringend: Kommunikation Schnittstellen858teccer28.10.04 07:09
TEIL 2866teccer28.10.04 07:11
TEIL 3921teccer28.10.04 07:38
Habe noch was vergessen767teccer28.10.04 07:56
Re: Habe noch was vergessen835ModeratorFZelle28.10.04 09:31
Re: Habe noch was vergessen805teccer28.10.04 10:54
Re: Habe noch was vergessen921ModeratorFZelle28.10.04 12:05
Re: Habe noch was vergessen845teccer28.10.04 12:22
Re: Habe noch was vergessen789ModeratorFZelle28.10.04 12:38
Re: Habe noch was vergessen826teccer28.10.04 13:39
Re: Habe noch was vergessen735ModeratorFZelle28.10.04 13:49
Re: Habe noch was vergessen739teccer28.10.04 13:56
und noch mal755teccer28.10.04 13:58
Re: und noch mal785spike2428.10.04 14:08
Re: und noch mal767teccer28.10.04 14:11
Re: und noch mal722spike2428.10.04 14:20
Re: und noch mal876ModeratorFZelle28.10.04 14:21
Re: und noch mal781teccer28.10.04 15:09
Du machst mich ganz kirre *lach812teccer28.10.04 11:44
Re: Du machst mich ganz kirre *lach806ModeratorFZelle28.10.04 12:13
Re: Du machst mich ganz kirre *lach777teccer28.10.04 12:23
Hier jetzt der Neu-Aufmach-Betreff773teccer28.10.04 15:24
Re: Hier jetzt der Neu-Aufmach-Betreff795ModeratorFZelle28.10.04 15:59
Re: Hier jetzt der Neu-Aufmach-Betreff860teccer28.10.04 16:38
P.S. Und danke für deine ganze Mühe - Ohne Text731teccer28.10.04 16:41
Re: P.S. Und danke für deine ganze Mühe - Ohne Text721ModeratorFZelle28.10.04 16:46
Re: P.S. Und danke für deine ganze Mühe - Ohne Text774teccer28.10.04 17:04
Re: P.S. Und danke für deine ganze Mühe - Ohne Text824ModeratorFZelle28.10.04 17:11
Re: P.S. Und danke für deine ganze Mühe - Ohne Text788teccer28.10.04 17:39
Re: P.S. Und danke für deine ganze Mühe - Ohne Text764ModeratorFZelle28.10.04 18:21
Re: P.S. Und danke für deine ganze Mühe - Ohne Text726teccer28.10.04 19:04
Re: P.S. Und danke für deine ganze Mühe - Ohne Text743ModeratorFZelle28.10.04 20:03
Re: P.S. Und danke für deine ganze Mühe - Ohne Text820teccer28.10.04 20:20
ich schmeiss mich gleich weg *lach*784teccer28.10.04 21:14
Re: ich schmeiss mich gleich weg *lach*770ModeratorFZelle29.10.04 09:25
Re: ich schmeiss mich gleich weg *lach*756teccer29.10.04 09:37
Re: ich schmeiss mich gleich weg *lach*765spike2429.10.04 09:48
Re: ich schmeiss mich gleich weg *lach* 721ModeratorDaveS29.10.04 09:52
Re: ich schmeiss mich gleich weg *lach* 738WaldiMaywood29.10.04 09:56
Stellvertretend für euch drei745teccer29.10.04 10:05
Re: Stellvertretend für euch drei 763ModeratorDaveS29.10.04 10:29
Re: Stellvertretend für euch drei 783teccer29.10.04 11:07
Re: Stellvertretend für euch drei 760ModeratorDaveS29.10.04 11:33
Re: Stellvertretend für euch drei864WaldiMaywood29.10.04 11:12
Re: Stellvertretend für euch drei763teccer29.10.04 11:25
Re: Stellvertretend für euch drei777Micke03.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