I have my application which triggers Web Browser with specific URL . After my program ends i want to close the web pages/tabs which i have opened..
By calling an EXE file with parameters a. Process Name b. String present in the URL
Detailed problem How to kill firefox child process/tab from Java/C++
I used C# approach ...
I am able to find the process ID of all the tabs..
foreach (Process theprocess in processlist) {
if (theprocess.ProcessName == "iexplore") {
Console.WriteLine("Process: {0}\tID: {1}\tWindow name: {2}",
theprocess.ProcessName, theprocess.Id, theprocess.MainWindowTitle
);
}
}
Currently i can get only Window Title of the process....and in IE8 only one window title of main process is visible..
Provided i have the pids of each tabs,How to find the URL of the tab ...and kill only that tab ??
I got this help from Access is denied - when trying to get the url (text) from address bar's handle
using SHDocVw; . .
foreach (InternetExplorer ieInst in new ShellWindowsClass()) Console.WriteLine(ieInst.LocationURL);
There is a way get the URL of each IExplorer instance !!
Add a reference "Microsoft Internet Controls" to the project.
The piece of code is
**foreach (SHDocVw.InternetExplorer ieInst in new SHDocVw.ShellWindowsClass())
{
System.Console.WriteLine(ieInst.LocationURL);
}**
Generate the exe and Interop.SHDocVw.dll
It will work ...:)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With