Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Nachrichten zwischen Programmen austauschen ohne Fenster (https://www.delphipraxis.net/20622-nachrichten-zwischen-programmen-austauschen-ohne-fenster.html)

SleepyMaster 20. Apr 2004 16:57


Nachrichten zwischen Programmen austauschen ohne Fenster
 
Ist das möglich?

Wenn ja (Wurde bestimmt schon tausendmal besprochen, hab nur nix gefunden): Welche möglichkeiten gibt es?

Vielen Dank

vlees91 20. Apr 2004 17:12

Re: Nachrichten zwischen Programmen austauschen ohne Fenster
 
Probier mal SendMessage oder/oder PostMessage (müsste klappen).

Oder TCP/IP mit WinSock oder Indy (funktioniert auch lokal ohne Netzwerk)

Luckie 20. Apr 2004 17:18

Re: Nachrichten zwischen Programmen austauschen ohne Fenster
 
@vlees91: An was für ein Fensterhandle willst du Nachrichten schicken, wenn das Programm kein Fenster hat?

w3seek 20. Apr 2004 17:26

Re: Nachrichten zwischen Programmen austauschen ohne Fenster
 
wie waers via pipes?

vlees91 20. Apr 2004 17:56

Re: Nachrichten zwischen Programmen austauschen ohne Fenster
 
@Lucki: dann habe ich die Frage nicht richtig verstanden. Tut mir Leid.

Wie war es aber denn richtig gemeint. Wo kein Programm, da kein grund zum übertragen.

NicoDE 20. Apr 2004 18:04

Re: Nachrichten zwischen Programmen austauschen ohne Fenster
 
Ich würde es mit Synchronisations-Objekten (Mutex, Semaphoren, Events etc.) und prozessübergreifendem Speicher (zum Beispie: Memory Mapped Files (MMF)) versuchen.
Da das Problem sicher nicht zum erstmal auftaucht, wird sicher schon jemand etwas deartiges geschrieben haben (hatte Hagen nicht eine Klasse dafür geschrieben?)...

Eine Alternative wäre, die Message-Queue von Threads zu benutzen (brauchen dazu nicht unbedingt ein Fenster erzeugen) - allerdings macht es (zumindest meiner Erfahrung nach) letzendlich mehr Arbeit.

SleepyMaster 20. Apr 2004 20:52

Re: Nachrichten zwischen Programmen austauschen ohne Fenster
 
Naja mit dem ohne Fenster meinte ich eigentlich ohne Message-Queue eingeschlossen (wegen der Sicherheit).

Aber ich werds jetzt mit einer Mischung aus Semaphoren (um zu signalisieren das neue Daten vorhanden sind) und MMF (um diese Daten dann zu übertragen) machen.

Vielen Dank

Christian Seehase 20. Apr 2004 21:07

Re: Nachrichten zwischen Programmen austauschen ohne Fenster
 
Moin Vlees,

auch unter Windows braucht ein Programm nicht zwingend ein Fenster.
Konsolenprogramme (die für die "DOS-Box") haben keines, und somit auch keine Schleife, die die Fensternachrichten verarbeitet.


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:47 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