Es gibt eine Vielzahl von Möglichkeiten, um Informationen zwischen verschiedenen Visual Basic-Anwendungen übergeben . Diese reichen in ihrer Komplexität von einfachen Kopieren in die Zwischenablage üblicherweise durch Cut-and- Paste -Operationen für die Einrichtung komplexer Server /Client /interface Beziehungen verwendet . Ein guter Mittelweg ist der " Named Pipe ", die sowohl Einweg-und Zwei-Wege- Kommunikation zwischen Anwendungen mit einfachen Strings erlaubt . Anleitung
1
Erstellen eines neuen Projekts durch Klick auf " Datei", " New Project" aus dem Hauptmenü . Wenn Sie aufgefordert werden , geben Sie ihm den Namen " PipeServer . " Halten Sie alle anderen Einstellungen auf die Standardwerte und klicken Sie auf "OK".
Sie werden mit einem leeren Fenster im Graphical User Interface ( GUI) Designer vorgestellt.
2
Fügen Sie eine Schaltfläche, um Ihre Schnittstelle , indem Sie den "Button" -Symbol aus der Liste der Komponenten auf der linken Seite und sie es auf Ihrem Fenster .
Da dies ein einfaches Tutorial , Sie müssen nicht über das Umbenennen oder es anfertigen des Textes kümmern.
3
Doppelklicken Sie auf die Taste. Dadurch werden Sie aus dem GUI-Designer und in den Source -Code-Editor für Ihre Anwendung. Es wird auch ein Ereignis für wenn der Benutzer auf Ihre Schaltfläche
Fügen Sie diesen Code auf dieses Ereignis : .
Dim As New System.IO.Pipes.NamedPipeServerStream Rohr ( " testpipe " IO.Pipes.PipeDirection.Out ) pipe.WaitForConnection ()
Dim sw As New System.IO.StreamWriter (Rohr) sw.AutoFlush = Truesw.WriteLine ( " Wir senden diese Daten " )
gehen
Zeile für Zeile , schafft dies eine neue PipeServer und nennt sie " testpipe . " es erklärt, dass diese Anwendung kann nur schreiben, Informationen an das Rohr und nicht lesen es zurück.
stoppt dann zu warten auf eine Client-Anwendung , eine Verbindung herzustellen . Sobald dies geschieht, öffnet es einen StreamWriter , die machen es einfacher, Informationen zu dem Rohr schreiben. Es erzählt die StreamWriter automatisch schreiben Informationen zu dem Rohr , sobald es empfängt , und schreibt es einen einfachen String an das Rohr vom Kunden gelesen werden.
Das beendet den Server.
4
Öffnen Sie eine neue Kopie von Visual Basic und erstellen Sie ein weiteres neues Projekt mit dem Namen " PipeClient . " Genau wie vor sind die Standardeinstellungen ausreichend.
5
Fügen Sie ein Textfeld , indem Sie die " Textbox " ; . Symbol aus der Liste der Komponenten in Ihre Fenster
6
Fügen Sie eine Schaltfläche bewegen indem sie sie aus den Komponenten Liste
7
Doppelklicken Sie auf die Taste, um unterwegs. . Quellcode-Editor und erstellen Sie ein Ereignis
Fügen Sie diesen Code auf dieses Ereignis :
Dim As New System.IO.Pipes.NamedPipeClientStream Rohr ( "localhost ", " testpipe " ) Rohr . Connect ()
Dim reader As New System.IO.StreamReader (Rohr)
Dim Daten As String
data = reader.ReadLine ()
< p > TextBox1.Text = Daten
gehen Zeile für Zeile , öffnet dies eine PipeClient und unter Verwendung der gleichen Pipenamen wie Sie in dem Server verwendet , verbindet es mit dieser Leitung .
es öffnet sich ein StreamReader , um es einfach um die Daten aus dem Rohr in Strings zu lesen, und er liest eine einzelne Zeile aus dem Rohr . Es ändert sich dann das Textfeld , um die Zeichenfolge sie vom Server empfangen und anzeigen .
8
Klicken Sie auf die grünen Pfeile in beide Projekte , um jede Anwendung zur gleichen Zeit laufen . Nachdem sie beide aktiv sind , klicken Sie auf die Schaltflächen in jeder Anwendung. Die Reihenfolge spielt keine Rolle.
Innerhalb kurzer Zeit , die Zeichenfolge " Wir senden diese Daten . " Sollte in das Textfeld des PipeClient Anwendung angezeigt.