Basically I have a script where it logs into a site and browses to a particular page. It then clicks a link that opens a popup window. I'm trying to get the object (-com internetexplorer.application) of the new window that popped up.
#init internet explorer window
$oIE = New-Object -com internetexplorer.application;
$oIE.visible = $true;
#browse to site
$oIE.navigate2("http://*****.com");
while ($oIE.Busy -eq $true)
{
#Start-Sleep -Milliseconds 1000;
}
#input login info
$oIE.Document.getElementById("username").value = "*******";
$oIE.Document.getElementByID("password").value = "********";
$oIE.Document.getElementById("login").Click();
while ($oIE.Busy -eq $true)
{
Start-Sleep -Milliseconds 1000;
}
#browse to job task details page
$oIE.navigate2("http://*****.com/index.php?action=route_job_task&method=edit&jtlid=1140560");
while ($oIE.Busy -eq $true)
{
Start-Sleep -Milliseconds 1000;
}
#find and worksheet link
$oLinks = @($oIE.document.getElementsByTagName("A"));
foreach ($oLink in $oLinks)
{
if ($oLink.href -eq "http://*****.com/index.php?action=communications_log&mode=add&type=feedback&header=f&jtlid=1140560") {
#THIS LINK IS A POPUP
$oLink.click();
}
}
while ($oIE.Busy -eq $true)
{
Start-Sleep -Milliseconds 1000;
}
#get add inspection window
#I NEED THE INTERNETEXPLORER OBJECT THAT WAS JUST CREATED VIA THE POPUP
#THE FOLLOWING GETS THE PROCESS, BUT IT'S NOT AN OBJECT LIKE I NEED
$oReportForm = Get-Process | where {$_.mainWindowTItle -eq "Add Communication - Windows Internet Explorer"};
while ($oReportForm.Busy -eq $true)
{
Start-Sleep -Milliseconds 1000;
}
#I NEED ACCESS TO A .DOCUMENT CONTAINER
$oReportForm.Document.getElementById("message").value = "I NEED TO INPUT TEXT HERE";
Start-Sleep -Milliseconds 20000;
#$oIE.Quit();
#init internet explorer window
$oIE = New-Object -com internetexplorer.application;
$oIE.visible = $true;
#browse to site
$oIE.navigate2("http://*****.com");
while ($oIE.Busy -eq $true)
{
#Start-Sleep -Milliseconds 1000;
}
#input login info
$oIE.Document.getElementById("username").value = "*******";
$oIE.Document.getElementByID("password").value = "********";
$oIE.Document.getElementById("login").Click();
while ($oIE.Busy -eq $true)
{
Start-Sleep -Milliseconds 1000;
}
#browse to job task details page
$oIE.navigate2("http://*****.com/index.php?action=route_job_task&method=edit&jtlid=1140560");
while ($oIE.Busy -eq $true)
{
Start-Sleep -Milliseconds 1000;
}
#find and worksheet link
$oLinks = @($oIE.document.getElementsByTagName("A"));
foreach ($oLink in $oLinks)
{
if ($oLink.href -eq "http://*****.com/index.php?action=communications_log&mode=add&type=feedback&header=f&jtlid=1140560") {
#THIS LINK IS A POPUP
$oLink.click();
}
}
while ($oIE.Busy -eq $true)
{
Start-Sleep -Milliseconds 1000;
}
#get add inspection window
#I NEED THE INTERNETEXPLORER OBJECT THAT WAS JUST CREATED VIA THE POPUP
#THE FOLLOWING GETS THE PROCESS, BUT IT'S NOT AN OBJECT LIKE I NEED
$oReportForm = Get-Process | where {$_.mainWindowTItle -eq "Add Communication - Windows Internet Explorer"};
while ($oReportForm.Busy -eq $true)
{
Start-Sleep -Milliseconds 1000;
}
#I NEED ACCESS TO A .DOCUMENT CONTAINER
$oReportForm.Document.getElementById("message").value = "I NEED TO INPUT TEXT HERE";
Start-Sleep -Milliseconds 20000;
#$oIE.Quit();