Zitat von
hugo1990:
Ich möchte an eine andere von mir programmiete Anwendung einen Text senden. Dazu verwende ich folgenden Code:
Senden:
PostMessage(h, WM_MultiStarted, 0, Integer(PChar(ParamStr(1))));
Letztendlich ist ein PChar nur ein Zeiger auf ein Zeichenarray im Speicher deines Prozesses. Du verschickst also einen Zeiger. Dies hat aber wenig Sinn, da an dieser Speicheradresse im anderen Prozess natürlich nicht deine Zeichenkette steh. Um aber trotzdem auf einfache Art und Weise mit Hilfe von Nachrichten Daten zwischen Prozessen austauschen zu können musst du die Nachricht WM_COPYDATA verwenden. Windows kopiert dann die Daten in einem Speicherbereich auf den beide Prozesse Zugriff haben. Die Daten können ausgetauscht werden.
Die Aussage, dass WM_COPYDATA bei dir nicht funktioniert ist ohne Quellcode wenig hilfreich. Es ist sehr wahrscheinlich, dass du einen Fehler im Quellcode hast.