| |

ActiveX-ProgrammierungRe: 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 |  |
 | 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 |
  |
|
Neu! sevEingabe 3.0 
Einfach stark!
Ein einziges Eingabe-Control für alle benötigten Eingabetypen und -formate, inkl. Kalender-, Taschenrechner und Floskelfunktion, mehrspaltige ComboBox mit DB-Anbindung, ImageComboBox u.v.m. Weitere InfosTipp des Monats Oktober 2025 Matthias KozlowskiUmlaute konvertierenErsetzt die Umlaute in einer Zeichenkette durch die entsprechenden Doppelbuchstaben (aus ä wird ae, usw.) TOP Entwickler-Paket 
TOP-Preis!!
Mit der Developer CD erhalten Sie insgesamt 24 Entwickler- komponenten und Windows-DLLs. Die Einzelkomponenten haben einen Gesamtwert von 1866.50 EUR...
Jetzt nur 979,00 EURWeitere Infos
|
|
|
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
|
|