Сделать это очень легко.
Достаточно написать одну функцию.
Вот пример:
Сама функция получения пути
Код
Function HandleToFullPath(H: HWND): String;
Var
Pid:Cardinal;
M: TModuleEntry32;
HSnapshot: THandle;
Begin
Result:='';
GetWindowThreadProcessId(H,@Pid);
HSnapshot:=CreateToolhelp32Snapshot(TH32CS_SNAPMODULE,Pid);
If HSnapshot=-1 Then
Exit;
M.DwSize:=SizeOf(TModuleEntry32);
If Module32First(HSnapshot,M) Then
Result:=M.SzExePath;
CloseHandle(HSnapshot);
End;
Ну и теперь получаем активное окно и берём из него полный путь
Код
var
h:hwnd;
s:string;
begin
h:=GetForeGroundWindow;
if h <> 0 then
begin
s:=HandleToFullPath(h);
end;
end;
Надеюсь помог.