AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Daten zwischen zwei Programmen austauschen?
Thema durchsuchen
Ansicht
Themen-Optionen

Daten zwischen zwei Programmen austauschen?

Ein Thema von moelski · begonnen am 17. Okt 2005 · letzter Beitrag vom 17. Okt 2005
Antwort Antwort
moelski

Registriert seit: 31. Jul 2004
1.110 Beiträge
 
Delphi 2010 Professional
 
#1

Daten zwischen zwei Programmen austauschen?

  Alt 17. Okt 2005, 08:26
Moin !

Wir haben im Moment folgendes Problem. Unsere Anwendung wertet Daten vom seriellen Port aus. In manchen Situationen wäre es sehr hilfreich, wenn man diese Daten an andere Programme weiterreichen könnte.
Die Frage ist nun, wie kann unsere Anwendung die Daten bereitstellen und wie kann eine andere Anwendung diese entgegen nehmen? Das ganze müsste auch noch relativ fix geschehen.

Eine Alternative wäre sicherlich, die Daten über einen "seriellen Splitter" bereitzustellen. Aber das würde unseren Anwendern Kosten bereiten. Das wäre also nicht wirklich eine Lösung.
Dominik Schmidt
Greetz Dominik

I love Delphi 2007/2010
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.195 Beiträge
 
Delphi 10.4 Sydney
 
#2

Re: Daten zwischen zwei Programmen austauschen?

  Alt 17. Okt 2005, 08:34
Möglichkeiten wären:

- COM/Automatisierungs-Schnittstelle
- Socket-Verbindung
- WM_COPYDATA-Messages

Je nach weitergehenden Anforderungen wäre die eine oder andere Lösung die beste.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
moelski

Registriert seit: 31. Jul 2004
1.110 Beiträge
 
Delphi 2010 Professional
 
#3

Re: Daten zwischen zwei Programmen austauschen?

  Alt 17. Okt 2005, 09:46
Moin !

Habe jetzt noch etwas mit deinen Begriffen im Web gesucht und bin auf IPC gestoßen. Bei Delphi ist sogar eine kleine Demo zu dem Thema dabei.

Nun ist es da aber so, das immer nur ein "Client" die Daten empfangen kann. Geht das prinzipiell auch mit mehr als einem Client?
Dominik Schmidt
Greetz Dominik

I love Delphi 2007/2010
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.252 Beiträge
 
Delphi 2006 Professional
 
#4

Re: Daten zwischen zwei Programmen austauschen?

  Alt 17. Okt 2005, 09:58
Hai moelski,

(m)ein Lösungsansatz wäre so:
  • Ein Programm liest die Daten vom seriellen Port aus und speichert diese
  • Die Clients verbinden sich mit diesem Programm (Server) über einen TCP-Socket.
  • Der Server teilt den Programmen einen Timestamp mit
  • Die Clients fordern alle Daten an die seit dem erhalt des letzten Timestamp beim Server gespeichet wurden
  • Die Clients trennen die Verbindung und rufen jetzt die Daten in einem beliebigen Intervall (5 Minuten) ab
Wenn Du den Clients jetzt noch eine Session-ID für sagen wir 30 Minuten gibst und serverseitig die S-ID und die IP speicherst kannst Du auch noch prüfen ob ein Client regelmässig seine Daten abholt.
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
moelski

Registriert seit: 31. Jul 2004
1.110 Beiträge
 
Delphi 2010 Professional
 
#5

Re: Daten zwischen zwei Programmen austauschen?

  Alt 17. Okt 2005, 10:03
Moin !

Hmm, sicher keine schlechte Idee ... Aber ...
Bei uns kommen im Sekundentakt Daten rein. Dazu kommt noch das der "Server" diese Daten in Echtzeit verarbeiten muss. Also ich würde die Daten gerne mit Timestamp bereitstellen und jede Anwendung die diese Daten haben möchte holt sie sich einfach. Anhand des TimeStamp kann man dann am "Client" sehen ob die Daten angekommen sind. Eine Gültigkeitsprüfung macht der Client eh.

Tja, bleibt halt nur die Frage ob ich auch die Daten an mehrere Clients "verteilen" kann.
Dominik Schmidt
Greetz Dominik

I love Delphi 2007/2010
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#6

Re: Daten zwischen zwei Programmen austauschen?

  Alt 17. Okt 2005, 10:45
Wer sagt denn, dass nur ein Fenster auf die WM_COPYDATA Nachricht reagieren muss? Oder wie eäre es mit Pipes oder MMFs?
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Antwort Antwort


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 05:29 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