Access und com1

Hallo!
Ich habe ein großes Problem

„ich bin ein Anfänger“

den ich möchte von Access aus auf den com port schreiben und lesen

ich wäre für jeden Tip Dankbar

Mit freundlichen Grüßen

Gerhard

Hattest du die Frage nicht schon mal unter „Programmierung“ gestellt? Na, egal, die Antwort bleibt die gleiche: Nimm’ das MSCOMM.OCX (oder ein vergleichbares Steuerelement).

Reinhard

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Ja ich weiß,

ich habe Dir ja auch ein e-mail geschrieben
das ich mir das MSCOMM.OCX schon besorgt habe

und das ich nicht weiß wie ich com öffne bzw senden und empfangen kann.

Da ich keine Nachricht bekommen habe, habe ich es unter einen andernen Frorum probiert

Mit freundlichen Gruß
Gerhard

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Ja ich weiß,

ich habe Dir ja auch ein e-mail
geschrieben
das ich mir das MSCOMM.OCX schon besorgt
habe

und das ich nicht weiß wie ich com öffne
bzw senden und empfangen kann.

Von einer E-Mail weiss ich leider nichts - täte mir leid, wenn ich sie überlesen haben sollte…

Das MSComm-OCX ist in der VB-Hilfe mit seinen Eigenschaften und Methoden beschrieben (VB5.HLP bei VB 5). Hier ein Beispiel zur Verwendung:

Private Sub Form\_Close()
 ' Serielle Schnittstelle schließen.
 MSComm.PortOpen = False
End Sub

Private Sub Form\_Load()
 ' Puffer für die Eingabezeichenfolge
 Dim Instring As String
 ' COM2 einsetzen.
 MSComm.CommPort = 2
 ' 9600 Baud, keine Parität, 8 Datenbits und 1 Stopbit
 MSComm.Settings = "9600,N,8,1"
 ' Steuerelement anweisen, daß es den gesamten
 ' Pufferinhalt lesen soll, wenn die Input-Eigenschaft
 ' verwendet wird.
 MSComm.InputLen = 0
 ' Anschluß öffnen.
 MSComm.PortOpen = True
End Sub
Private Sub MSComm\_OnComm()
 Select Case Me!MSComm.CommEvent
 ' Behandeln jedes Ereignisses oder Fehlers durch
 ' Positionieren von Code unter jeder Case-Anweisung

 ' Fehler
 Case comBreak: MsgBox "Es wurde ein Anhaltesignal empfangen."
 Case comCDTO: MsgBox "CD-Zeitüberschreitung"
 Case comCTSTO: MsgBox "CTS-Zeitüberschreitung"
 Case comDSRTO: MsgBox "DSR-Zeitüberschreitung"
 Case comFrame: MsgBox "Fehler im Übertragungsraster (Framing Error)"
 Case comOverrun: MsgBox "Datenverlust"
 Case comRxOver: MsgBox "Überlauf des Empfangspuffers"
 Case comRxParity: MsgBox "Paritätsfehler"
 Case comTxFull: MsgBox "Sendepuffer voll"
 Case comDCB: MsgBox "Unerwarteter Fehler beim Abrufen des DCB"
 ' Ereignisse
 Case comEvCD: MsgBox "Pegeländerung auf DCD"
 Case comEvCTS: MsgBox "Pegeländerung auf CTS"
 Case comEvDSR: MsgBox "Pegeländerung auf DSR"
 Case comEvRing: MsgBox "Pegeländerung auf RI (Ring Indicator)"
 Case comEvReceive: MsgBox "Anzahl empfangener Zeichen gleich " & Me!MSComm.RThreshold
 Case comEvSend: MsgBox "Im Sendepuffer befinden sich " & Me!MSComm.SThreshold & " Zeichen"
 Case comEvEOF: MsgBox "Im Eingabestrom wurde ein EOF-Zeichen gefunden"
 End Select
End Sub
Private Sub SendIt\_Click()
Dim Tmp, I As Long
 On Error GoTo 0
 'Senden
 MSComm.Output = Me!Send & Chr$(13)
 ' Etwas warten, bis das Modem Daten an den seriellen
 ' Anschluß gesendet hat.
 For I = 1 To 100
 DoEvents
 Next I
 ' Antwort aus dem seriellen Anschluß lesen.
 Me!Recv = CStr(MSComm.Input)
End Sub

Hallo Reinhard

Danke für deine Hilfe

Gerhard