C#从Active Process获取活动URL

时间:2011-04-18 06:31:14

标签: c# internet-explorer url browser process

问候

我正在使用以下代码来获取活动进程。

[DllImport("user32.dll", CharSet = CharSet.Auto, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)]
public extern short GetKeyState(int keyCode);
[DllImport("user32.dll")]
private extern Int32 GetWindowThreadProcessId(
    IntPtr hWnd, out uint lpdwProcessId);

[DllImport("user32.dll")]
private extern IntPtr GetForegroundWindow();

private Process GetProcessByHandle(IntPtr hwnd)
{
    try
    {
        uint processID;
        GetWindowThreadProcessId(hwnd, out processID);
        return Process.GetProcessById((int)processID);
    }
    catch { return null; }
}

private Process GetActiveProcess()
{
    IntPtr hwnd = GetForegroundWindow();
    return hwnd != null ? GetProcessByHandle(hwnd) : null;
}

我想知道如果使用这个或任何其他代码,当GetActiveProcess将webbrowser作为活动进程返回时,我可以获得任何webbrowser的活动URL / Tab吗?

问候

1 个答案:

答案 0 :(得分:1)

Retrieve current URL from C# windows forms application找到我的答案。哪个获得谷歌浏览器的URL(我最常用的broswer)但在Internet Explorer上失败。

如果有人愿意提供帮助,那就太可爱了......但是现在我已经有了它已经足够了!