我想從Chrome瀏覽器版本33 - 使用C#獲取網址。我在這裏看過並嘗試過不同的建議 - 但到目前爲止還沒有運氣。從Chrome網頁瀏覽器獲取網址
事情我已經嘗試: AutomationElement - >Getting the current tab's URL from Google Chrome using C# 「地址欄和搜索欄」元素不能在33版本的Chrome網絡瀏覽器的使用自動化的發現。 我使用TreeWalker這些,唯一的元素,我發現也試過:
水平滾動條
返回由少量
向前少量
垂直滾動條
返回少量購買
小額轉發
「網頁標題......」
系統菜單欄
系統
最小化
恢復
關閉
NDDE - >Retrieve current URL from C# windows forms application
NDde.Client.DdeClient dde = new NDde.Client.DdeClient("Chrome", "WWW_GetWindowInfo");
dde.Connect();
NDde.Client.DdeClient dde = new NDde.Client.DdeClient("Chrome", "Chrome_OmniboxView");
dde.Connect();
無論是作品...無法連接。
FindWindowEx - >
[DllImport("user32.dll", SetLastError = true)]
public static extern IntPtr FindWindowEx(IntPtr parentHandle, IntPtr childAfter, string className, string windowTitle);
public string GetChromeUrl(Process process)
{
IntPtr handle = IntPtr.Zero;
Process[] procsChrome = Process.GetProcessesByName("chrome");
foreach (Process chrome in procsChrome)
{
// the chrome process must have a window
if (chrome.MainWindowHandle == IntPtr.Zero)
{
continue;
} else
{
handle = chrome.MainWindowHandle;
break;
}
}
IntPtr urlHandle = FindWindowEx(handle, IntPtr.Zero, null, "Address and search bar");
if (urlHandle != IntPtr.Zero)
{
Console.WriteLine("yes!");
}
return "";
}
不工作,要麼...
我有多遠了
所以我用UI間諜和檢查,以查找Chrome 33中多功能框的名稱。 在UI間諜中根本找不到,但在檢查中我找到了「地址和搜索欄」,它具有我在...後的url值問題是我如何獲得該網址信息?
有什麼想法?
-1:API在C#中工作嗎? –