vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Brandneu! sevEingabe v3.0 - Das Eingabecontrol der Superlative!  
 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

ActiveX-Programmierung
Re: Kommunikation-Steuerelements (MS Comm Control 6.0) 
Autor: unbekannt
Datum: 04.08.01 18:18

Hi Ralf,

das MSComm-Steuerelement ist zwar im ersten Augenblick ein recht komplexes Gebilde, steigt man aber etwas hinter die Kulissen - wird es einfach. Man muß wissen, dass für jeden zu überwachenden COM-Port (serielle Schnittstellen) je ein Steuerelement einzusetzen ist. Über die Eigenschaft: CommPort wird es auf den COM-Port aufgesetzt:

MSComm1.CommPort = 1 'Serielle Schnittstelle A oder
MSComm1.CommPort = 2 'Serielle Schnittstelle B
Vor Inbetriebnahme einer Schnittstelle muß dann das Steuerelement zunächst, nachdem es auf eine Port gesetzt wurde, initialisiert werden - d.h., die Übertragungsparameter müssen gesetzt werden (dies entspricht der damaligen OPEN-Anweisung in älteren BASIC-Diealekten - die über OPEN die COM-PORTS zur Datenübertragung geeöffnet haben):

MSComm1.SettIngs = "9600,N,8,1"
Das heißt hier: Übertragunsgeschwindigkeit 9600 BAUD, keine Parität, 8 Bits, 1 Stoppbit. MSComm unterstützt bis 230 kBAUD - normales ISDN = 115 kBAUD.

Nun kann man noch die Art der Daten bestimmen, die man zu empfangen oder zu senden wünscht:

MSComm1.InputMode = 1
z.B.: Das die Daten binär sind. Ansonsten läßt man die Default-Einstellung von InputMode.

Zur Initialisierung gehört noch die Einstellung des Sende- und Empfangsbuffers:

MSComm1.InputLen = 0
Dies empfängt/sendet alle Zeichen oder die Anzahl von Zeichen, die größer 0 sind.


Ist das Control Initialisiert, wird es aktiviert:

MSComm1.PortOpen = True oder deaktiviert:
MSComm1.PortOpen = False
Und jetzt scheiden sich die Geister. Die Einen wollen in einer Schleife alle eintreffenden Zeichen einlesen, bis das Übertragungsende-Zeichen (Chr(26)) kommt - oder die Anderen lieber in einem Ereignis - wie's beliebt.

Do
    DoEvents
    EntreeString = MSComm1.Input
Loop While Instr(EntreeString,Chr(26)) = 0
oder man wertet das OnComm-Ereignis und die CommEvent-Eigenschaft aus:

Sub MSComm1_OnComm()
    Select Case MSComm.CommEvent
          Case comEVReceive
                 EntreeString = EntreeString & MSComm1.Input
    End Select
End Sub
Die Parameter lassen sich im Objekt-Katalog auslesen. Wichtig ist aber bei der Ereignisüberwachung die MSComm.RThreshold-Eigenschaft, die einen Wert größer 0 haben muß, damit das Ereignis überhaupt stattfindet. Mit der Eigenschaft kann eingestellt werden, ab wieviel Zeichen ein Ereignis eintritt.

cu
Lordchen
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Kommunikation-Steuerelements (MS Comm Control 6.0)204Ralf19.07.01 14:45
Re: Kommunikation-Steuerelements (MS Comm Control 6.0)981unbekannt04.08.01 18: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