我有一个类似于这个
的powershell脚本param(
[string]$u,
[string]$p
)
$username = $u
$password = $p
cd HKCU:\"Software\Microsoft\Windows\CurrentVersion\Internet Settings"
set-itemproperty . ProxyEnable 1
$url = "https://ameriprisestage.service-now.com/"
$ie = New-Object -com internetexplorer.application;
$ie.visible = $true;
$ie.navigate($url);
while ($ie.ReadyState -ne 4 -or $ie.Busy)
{
start-sleep -s 5;
}
$ieFrame = $ie.Document.getElementById("gsft_main")
if (($ieFrame -eq $null)) {
"ieframe is null" | Out-File 'D:\\file.txt' -Append
exit
}
$usrCtrl = $ie.Document.getElementById("user_name")
if ($usrCtrl -eq $null) {
" usrCtrl is null at 1" |Out-File 'D:\\file.txt' -Append
}
$usrCtrl = $ieFrame.document.getElementById("user_name")
if ($usrCtrl -eq $null) {
" usrCtrl is null at 2" |Out-File 'D:\\file.txt' -Append
}
$usrCtrl = $ieFrame.contentWindow.document.getElementById("user_name")
if ($usrCtrl -eq $null) {
" usrCtrl is null at 3" |Out-File 'D:\\file.txt' -Append
}
$usrCtrl = $ieFrame.contentDocument.getElementById("user_name")
if ($usrCtrl -eq $null) {
" usrCtrl is null at 4" |Out-File 'D:\\file.txt' -Append
}
$usrCtrl = $ieFrame.getElementById("user_name")
if ($usrCtrl -eq $null) {
" usrCtrl is null at 5" |Out-File 'D:\\file.txt' -Append
}
$usrCtrl.value=$username
$pass=$ieFrame.contentWindow.Document.getElementById("user_password").value=$password
$buttn=$ieFrame.contentWindow.document.getElementById("sysverb_login").click()
当我从powershell ISE运行此代码时,我在3和5处得到usrCtrl not null但是当我从java程序调用相同的代码时,我得到usrCtrl在1,2,3和5处为空。
我无法弄清楚发生了什么。有人可以帮助我..
由于 Sujith
答案 0 :(得分:0)
更改此
cd HKCU:\"Software\Microsoft\Windows\CurrentVersion\Internet Settings"
到
cd "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings"
和此:
D:\\file.txt
到
D:\file.txt