Sobald dein Programm merkt, es gibt schon eine Instanz dann musst du deiner bereits existierenden Instanz über SendMessage die Daten schicken die du schicken willst. z.B. den Pfad zum Film.
In der existierenden Instanz kannst du dann mit
procedure WMCopyDataEx(var msg: TWMCopyData); message WM_COPYDATA;
die Daten abfragen.
Die sind dann in
msg.CopyDataStruct.lpData
drin.
Schicken mit
Delphi-Quellcode:
var
aCopyData: TCopyDataStruct;
hExistingInstance: THandle;
hExistingInstance := FindWindow(PWideChar('fensterclass'), nil);
pName := PWideChar('pfad zum film');
aCopyData.dwData := 0;
aCopyData.cbData := (StrLen(pName) + 1) * SizeOf(Char);
aCopyData.lpData := pName;
SendMessage(hExistingInstance, WM_COPYDATA, 0, Integer(@aCopyData));