Reputation: 1456
Up to Chrome V27 you could enumerate Chrome child window controls to get to the edit field and read the string value from there to get the current opened URL.
Unfortunately Chrome 28 has switched to the new rendering Engine (Blink) and does not use Windows controls anymore besides the main window (Chrome_WidgetWin_1) and the web page tab (Chrome_RenderWidgetHostHWND).
I would be grateful if someone could point to an alternative method of getting the currently opened Chrome URL from another (Win32) application.
Upvotes: 11
Views: 5287
Reputation: 14498
Chrome supports the Windows accessibility APIs, so you can use those to extract information both from the chrome - including the broswer bar - and also from web pages. Think of this API as a more abstract version of enumerating window controls.
Check out the Inspect Objects tool to explore what information you can get access to - it does look as though the address bar and contents are available.
You can get the same information in C# using the AutomationElement set of classes:
Upvotes: 12