das andere programm startest du so:
ShellExecute(Handle, 'open', 'exename', 'Pfad\Datei', nil, SW_SHOWNORMAL);
und die auswertung im ersten programm folgendermaßen
Delphi-Quellcode:
if ParamCount > 0 then
Showmessage(ParamStr(1))
// gibt dann Pfad\Datei aus