Получение активной вкладки от Safari - PullRequest
0 голосов
/ 18 февраля 2011

Я пытаюсь получить активный URL-адрес вкладки для Safari, но до сих пор мне удавалось получить URL-адрес из всех известных браузеров (IE, Firefox, Chrome, Opera) с помощью сочетания вызовов Win32 API или DDE.

Проблема с safari заключается в том, что даже когда я перечисляю через окна и вызываю GetWindowText, он всегда равен нулю.

Есть ли какие-нибудь решения?спасибо!

1 Ответ

0 голосов
/ 03 июня 2011
public static string getChromeURL() {
  uint MAX_PATH=255;
  IntPtr hChrome, hAddressBox;

  hChrome=GetForegroundWindow();
  hAddressBox = FindWindowEx(hChrome, IntPtr.Zero,
            "Chrome_AutocompleteEditView", IntPtr.Zero);

  StringBuilder sb = new StringBuilder(256);
  SendMessage(hAddressBox, WM_GETTEXT, (IntPtr)MAX_PATH, sb);

  string s = sb.ToString().Trim(new Char[] { ' ', '\0', '\n' });
  return s;
}
...