非アクティブのタブを含め、IEで対象のページが開いているか確認する方法が知りたいです。ページが開いているかの判断はURLまたはタブのタイトルでしたいと考えています。画像系アクティビティでの判断は自社のシステム的にできません。
System.Diagnostics.Process.GetProcessesByName(“iexplore”)でプロセス型リストを取得し、コレクションの繰り返しで情報を取得しようかと考えたのですが、item.MainWindowTitleではアクティブタブのタイトルしか取得できません。
何か良い方法があれば教えていただきたいです。
よろしくお願いします。
Yoichi
(Yoichi)
2
こんにちは
完全には取得できないと思いますが、例えばPowerShell使うのはいかがでしょうか?
InvokePowerShellアクティビティで
IsScript:true
CommandTextは以下
"$shell = New-Object -ComObject Shell.Application
$ie_list = @($shell.Windows() | where { $_.Name -match 'Internet Explorer' })
foreach($ie in $ie_list){
if($ie.document.title -eq $null)
{
Write-Output 'null'
}
else
{
Write-Output $ie.document.title
}
}"
TypeArgument:String
Output:Collection<String>
CTRL+Kで生成してください。
1 Like
ご回答ありがとうございます。上記のコマンドですと開いてるタブの数の分だけNullが返ってきてしまったので、少し変えたら取得できるようになりました!
"$a = New-Object -com Shell.Application; $b = $a.windows() | Select-Object LocationName;
foreach($ie In $b){
If($ie.LocationName -eq $null){
Write-Output 'null'
} Else {
Write-Output $ie.LocationName
}
};"
powerShellの使用は全く考えていなかったので本当に助かりました。ありがとうございました
1 Like
system
(system)
Closed
5
This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.