AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

"Eigene" Com-Port Komponente

Ein Thema von fkerber · begonnen am 30. Jul 2005 · letzter Beitrag vom 31. Jul 2005
Antwort Antwort
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

Registriert seit: 9. Jul 2003
Ort: Ensdorf
6.723 Beiträge
 
Delphi XE Professional
 
#1

"Eigene" Com-Port Komponente

  Alt 30. Jul 2005, 19:33
Hi!

Soweit ich das überblicken konnte, waren mir alle vorhanden Komponenten für Com-Port (Rs232) zu überladen und nicht genau das, was ich wollte.

Jetzt frage ich mich, wie ich es selber machen kann:
ComPort öffnen ist kein Problem, nur wie bekomme ich mit, dass was da ist für mich, also Zeichen an den Port geschickt wurden?
Also praktisch ein Event für meine Komponente....

Gibts da ne Message oder wie stellen die anderen Komponenten das fest?


Ciao Frederic
Frederic Kerber
  Mit Zitat antworten Zitat
Benutzerbild von Flocke
Flocke

Registriert seit: 9. Jun 2005
Ort: Unna
1.172 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#2

Re: "Eigene" Com-Port Komponente

  Alt 30. Jul 2005, 19:54
Also mit MSDN-Library durchsuchenClearCommPort kriegst du in der COMSTAT-Struktur den Wert cbInQue übergeben, der gibt an wieviele Bytes für ReadFile zur Verfügung stehen.

Bessere Variante ist ein eigener Thread und mit MSDN-Library durchsuchenWaitCommEvent darauf zu warten, dass sich an der seriellen Schnittstelle was tut.
Volker
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

Registriert seit: 9. Jul 2003
Ort: Ensdorf
6.723 Beiträge
 
Delphi XE Professional
 
#3

Re: "Eigene" Com-Port Komponente

  Alt 31. Jul 2005, 03:34
Hi!

Ich lese mir die Links durch, vielen Dank!


Ciao Frederic
Frederic Kerber
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

Registriert seit: 9. Jul 2003
Ort: Ensdorf
6.723 Beiträge
 
Delphi XE Professional
 
#4

Re: "Eigene" Com-Port Komponente

  Alt 31. Jul 2005, 11:46
Hi!

Zum ersten Link kommt leider:
Zitat:
Sorry, no results were found.

Zum zweiten hätte ich ne Frage:
Wie löse ich das denn aus? Ich müsste ja nen Timer haben, der da ständig anfragt? Das ist bestimmt nicht die richtige Lösung...
Sorry, bin neu auf dem Gebiet...


Ciao Frederic
Frederic Kerber
  Mit Zitat antworten Zitat
Benutzerbild von Flocke
Flocke

Registriert seit: 9. Jun 2005
Ort: Unna
1.172 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#5

Re: "Eigene" Com-Port Komponente

  Alt 31. Jul 2005, 11:48
Zitat von fkerber:
Zum ersten Link kommt leider:
Zitat:
Sorry, no results were found.
Sorry, vertippt: Muss MSDN-Library durchsuchenClearCommError heißen.

Beim der ersten Variante (ClearCommError) musst du pollen, d.h. periodisch (z.B. mit einem Timer) abfragen ob Daten angekommen sind.

Bei der zweiten Variante nimmst du am besten einen separaten Thread, denn WaitCommEvent kehrt erst dann zurück, wenn sich der Status des Comports geändert hat (also Verbindung abgebrochen, Daten angekommen, etc.).
Volker
  Mit Zitat antworten Zitat
Benutzerbild von Duffy
Duffy

Registriert seit: 19. Mär 2003
Ort: Wuppertal
835 Beiträge
 
Delphi 3 Standard
 
#6

Re: "Eigene" Com-Port Komponente

  Alt 31. Jul 2005, 13:05
Hallo
ist das was für Dich? Ansteuerung der seriellen Schnittstelle mit Hilfe der Windows API

bye
Claus
Künftige Generationen wollen ihre Fehler selber machen.
Jedes Programm wird nie das können, was Du wirklich brauchst.
Das Gegenteil von gut ist gut gemeint
-----
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

Registriert seit: 9. Jul 2003
Ort: Ensdorf
6.723 Beiträge
 
Delphi XE Professional
 
#7

Re: "Eigene" Com-Port Komponente

  Alt 31. Jul 2005, 13:08
Hi!

@Flocke:
Dann schau ich mir das mit dem Thread mal an.

@Duffy:
Das hatte ich schon gelesen, da fehlt genau das entscheidende für mich:
Die "Benachrichtigung", dass Daten da sind.


Ciao Frederic
Frederic Kerber
  Mit Zitat antworten Zitat
Benutzerbild von Duffy
Duffy

Registriert seit: 19. Mär 2003
Ort: Wuppertal
835 Beiträge
 
Delphi 3 Standard
 
#8

Re: "Eigene" Com-Port Komponente

  Alt 31. Jul 2005, 13:18
Kennst Du die Komponete von Dejan Crnila. Aus dem Quelltext könntest Du was herleiten. Ansonsten wüßte ich ad hoc nur TurboPower Async Professional (tpapro) .

bye
Claus
Künftige Generationen wollen ihre Fehler selber machen.
Jedes Programm wird nie das können, was Du wirklich brauchst.
Das Gegenteil von gut ist gut gemeint
-----
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

Registriert seit: 9. Jul 2003
Ort: Ensdorf
6.723 Beiträge
 
Delphi XE Professional
 
#9

Re: "Eigene" Com-Port Komponente

  Alt 31. Jul 2005, 13:26
Hi!

Vielen Dank, ich schau es mir an.!


Ciao Frederic
Frederic Kerber
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:17 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz