Vista Forums
Vista Forums Home Join Vista Forums Donate Vista Tutorials Tags

Welcome to Vista Forums we are your forum to discuss Windows Vista x64 and x86 systems. Whether you need help or just want to post an idea you have on Vista, this is the forum for you.
Register at Vista forums...the world biggest Windows Vista resource Join Vista Forums

Go Back   Vista Forums > Vista technology newsgroups > WinFX General

Programmatically Read All URL's in All Tabs in a Browser?

Reply
 
Thread Tools Display Modes
Old 01-31-2008   #1 (permalink)
Wes Williams
Guest
 
Posts: n/a

Programmatically Read All URL's in All Tabs in a Browser?

How can I approach capturing all the open URL's in all tabs in my open browser?

I wrote C# code to capture all of the IE processes but I cannot get into the
browser object model from there. How do I get into the object model and get
the URL in the address bar in all tabs?

Process[] myProcesses = Process.GetProcesses();
foreach (Process myProcess in myProcesses)
{
if (myProcess.ProcessName.Equals("IExplore",
StringComparison.CurrentCultureIgnoreCase))
Console.Write(myProcess.ProcessName);
}

--
Thanks,
Wes
  Reply With Quote

Old 01-31-2008   #2 (permalink)
Wes Williams
Guest
 
Posts: n/a

RE: Programmatically Read All URL's in All Tabs in a Browser?

Okay everyone. Did lot's of digging to get this one and the Google references
to code are not helpful. Bookmark this one. Here's the code to do it:

using SHDocVw;
using mshtml;

....
listProcesses.Items.Clear();

ShellWindows SW = new ShellWindowsClass();
string processName;
HTMLDocumentClass htmlDoc;

foreach (InternetExplorer IE in SW)
{
processName =
System.IO.Path.GetFileNameWithoutExtension(IE.FullName).ToLower();
if (processName.Equals("iexplore"))
{
try
{
htmlDoc = (HTMLDocumentClass)IE.Document;

listProcesses.Items.Add(htmlDoc.IHTMLDocument2_nameProp + " - " +
htmlDoc.IHTMLDocument2_url);
}
// when the browser does not hold an html doc
catch (InvalidCastException ex)
{
}
}
}

--
Wes Williams


"Wes Williams" wrote:
Quote:

> How can I approach capturing all the open URL's in all tabs in my open browser?
>
> I wrote C# code to capture all of the IE processes but I cannot get into the
> browser object model from there. How do I get into the object model and get
> the URL in the address bar in all tabs?
>
> Process[] myProcesses = Process.GetProcesses();
> foreach (Process myProcess in myProcesses)
> {
> if (myProcess.ProcessName.Equals("IExplore",
> StringComparison.CurrentCultureIgnoreCase))
> Console.Write(myProcess.ProcessName);
> }
>
> --
> Thanks,
> Wes
  Reply With Quote
 
Reply

Thread Tools
Display Modes









Vistax64.com is an independent web site and has not been authorized,
sponsored, or otherwise approved by Microsoft Corporation.
"Windows Vista", the Start Orb, and related materials are trademarks of Microsoft Corp.
© Designer Media 2005-2008

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48