Przechwytywanie adresu wpisanego w explorerze Win

0

Jak przechwycić adres wpisany w explorerze Windows. Bym chciał o takie przechwytywanie jak w artykule : <url> Jak przechwycić adres WWW wpisany w przeglądarce </url> tylko żeby tak przechwycić z explorera Windows

0

Na 100% działa w Windows 98 a w XP nie sprawdziłem jak nie działa to pisz.

var
  hWnd, hWorker: Cardinal;
  lpBuf: array [0..MAX_PATH] of Char;
  len: integer;
begin
  //Okno Internet Explorera
  //hWnd:= FindWindow('IEFrame',nil);

  //Okno Exploratora Windows
  hWnd:= FindWindow('ExploreWClass', nil);

  //Okno przeglądanie folderów przez "Mój Komputer"
  //hWnd:= FindWindow('CabinetWClass', nil);

  //W Windows XP (chyba też 2000, 2003)
  hWorker:= FindWindowEx(hWnd, 0, 'WorkerW',nil);
  if (hWorker = 0) then
    //W Windows 9x (chyba też Me) 
    hWorker:= FindWindowEx(hWnd, 0, 'WorkerA',nil);
  hWnd:= FindWindowEx(hWorker, 0, 'rebarwindow32',nil);
  hWnd:= FindWindowEx(hWnd, 0, 'comboboxex32', nil);
  hWnd:= FindWindowEx(hWnd, 0, 'ComboBox',nil);
  hWnd:= FindWindowEx(hWnd, 0, 'Edit',nil);
  len:= SendMessage(hWnd, WM_GETTEXT, MAX_PATH, LONGINT(@lpBuf[0]));
  lpBuf[len]:= #0;

  ShowMessage(lpBuf);
end;

EDIT//

Adamo napisał(a)

zamiast WorkerA może być WorkerW - sprawdź A, jak zwróci 0 to pobierz W

Dzieki, poprawiłem

0

zamiast WorkerA może być WorkerW - sprawdź A, jak zwróci 0 to pobierz W

1 użytkowników online, w tym zalogowanych: 0, gości: 1