Wie können 2 Programme kommunzieren?

ProgFreak

Mitglied
Tach leutz,

mal so'ne Fräge: wie können 2 progs kommunizieren?
Dass z.b. man in einer (DOS-)konsole etwas eingibt und das dann auf einer
anderen Konsole ausgegeben wird. Nen Beispiel wäre mal ganz schön!

THX

ProgFreak
 
Innerhalb eines Rechners oder über Netzwerk/Internet?

Bei Konsolenanwendungen weiss ich nicht, ob man auch Messages schicken kann. Da müsste man dann evtl. auch auf Sockets ausweichen.

Wenn ein HWND da ist, kann man z.Bsp. Windows-Messages rumschicken (WM_COPYDATA bietet sich an). Senden geht ganz einfach über SendMessage.

Im Netzwerk oder Internet benutzt man dann üblicherweise Sockets (geht's überhaupt anders? Sagt jetzt nicht IPX).

Für Sockets mal eben ein funktionierendes Chat-System hier reinzustellen ist zu happig, aber da draussen gibt's Tausende Beispiele. Hier drin müsste es doch eigentlich auch?
 
TAch Prokfriik

wie können 2 progs kommunizieren?
Gut! Die könnnnnnn das!

Nen Beispiel wäre mal ganz schön!
Nen nett Mühe geben bei Postereiung wär auch ganz net, nett? Kreisch?

CU

Krachelator!


Im Ernst: Tut mir leid, dass es gerade dich trifft, da du nur einer von vielen bist, die mal an ihrer Textfähigkeit arbeiten sollten, aber ich denke, wenn ihr "leutz" schon ankommt und was von uns wollt, dann gebt euch bitte die Mühe und bedient euch vernünftiger Sprache, ja? Im Normalfall kommt das einfach gut rüber und wir verstehen auch viel besser, was ihr eigentlich wollt. Danke.

Endurion hat da noch die Möglichkeit zurückgehalten, Daten in eine Datei zu schreiben und diese Datei als Schnittstelle zwischen den Anwendungen zu verwenden.
 
@ Kachelator:
Das trifft irgendwie den Nagel auf den Kopf *g* http://www.tutorials.de/tutorials152555.html

@ ProgFreak
Kachelator hat dir da noch 2 Möglichkeiten verschwiegen:
1.) über Pipes
2.) Shared Memory
Aber da du uns ja überhaupt nicht verraten willst, was du eigentlich machen möchtest, haben wir auch keine Ahnung in welche Richtung es gehen würde.

Gruß Homer
 
Okay über meine ähm Schreibweise kann man reden, doch eigentlich
ist dieser Forum nicht dazu da sich über Rechtschreibung zu unterhalten.


Jetzt aber noch ein paar Infos zu meiner Frage:
Eigentlich wollte ich das ganze auf einem Rechner laufen lassen.
Ach ja(!) und bitte nicht über das Netzwerk oder Textdateien.

THX
ProgFreak
 
Jetzt wissen wir immer noch nicht was das werden soll.
Evtl. beschreibst du mal sehr, sehr genau was du machen willst:
- sind beide Programme als Source verfügbar?
- welche Daten sollen denn die beiden Programme austauschen? (Texte, binär, ...)
- wieviele Daten werden ausgetauscht ? (B, KB, MB, GB !?)
- Welche Datenstrukturen liegen vor (wenn denn eine Vorliegen)?
- Wie oft sollen Daten ausgetauscht werden?

So wenn du all diese Fragen einigermaßen beantworten kannst, dann glaub ich kann man dir auch sehr gut helfen und es wird sich auch jemand finden, der dir da ein kleines Beispiel machen kann (so als Denkanstoß)

Gruß Homer
 
Wenn ihr lieben Helferlein grad hier seid hab ich auch Fragen zu dem Thema. :-)

Ich plane eine Anwendung die unter den verschiedenen Komponenten von mehreren KB bis rauf zu Gigabytes zuverlässig Text aber auch binäre Daten übertragen soll. Zuerst soll das ganze auf einem Rechner, später dann im Intranet Daten übertragen. DIe Übertragung soll natürlich möglichst schnell von statten gehen.
Ausserdem möchte ich gerne unterscheiden zwischen Daten aufnehmen und bearbeiten oder einfach an einen anderen Rechner weiterleiten (irgend eine direkte Weiterleitung die Geschwindigkeitsvorteile bringt?).

Welche Techniken benutzt man dazu am Besten?
 
doch eigentlich
ist dieser Forum nicht dazu da sich über Rechtschreibung zu unterhalten.
Schon schade, dass man es überhaupt muss: Sich darüber unterhalten. Sollte eigentlich selbstverständlich sein.


Welche Techniken benutzt man dazu am Besten?
@Terrance: Äh, Windows?
@Philipp: Hm, Linux?
:-)

Nun, das hört sich ziemlich gewaltig an, was du da vorhast. Ich habe es nur nicht ganz verstanden. Sorry. Ignorier mich.
 
1.) Ich halte auch in einem Programmierer-Forum korrektes deutsch für wichtig, aber egal.

2.) Such doch mal nach dem Stichwort IPC (InterProcessCommunication)

Wenn man die MSDN-Library dazu befragt kommt:

* atoms
* clipboard
* DDE
* Mailslots

und die bereits genannten:
* Pipes
* Shared Memory

Wenn man ein Programm schreiben möchte, das mit beliebigen anderen Programmen Daten austauscht, dann ist noch COM zu nennen.

Was man letztlich verwendet hängt vom Anwendungsfall ab.
 
Zurück