Я столкнулся с проблемой, которую не могу понять даже после какого-то безумного поиска в Google.Мой скрипт PowerShell открывает веб-сайт, вводит учетные данные для входа в систему и затем выбирает активную ссылку на сайте.Это кликабельная ссылка, с которой у меня проблемы.
Следующая строка работает на моем ПК (Windows 10), но не работает на моем сервере (Server 2012):
$Link=$ie.Document.IHTMLDocument3_getElementsByTagName("a") | where-object {$_.innerText -eq "Go to app"}
Ошибка:
Method invocation failed because [System.ComObject] does not contain a method named
'IHTMLDocument3_getElementsByTagName'.
At C:\script.ps1:53 char:1
$Link=$ie.Document.IHTMLDocument3_getElementsByTagName("a") | where-object {$_.i ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (IHTMLDocument3_getElementsByTagName:String) [], RunTimeException
+ FullyQualifiedErrorID : MethodNotFound
Этозатем заставляет мою команду «щелкнуть» неудачно:
$link.click()
Сбой:
You cannot call a method on a null-valued expression.
At C:\script.ps1:54 char:1
+link.click()
+~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (:) [], RunTimeException
+ FullyQualifiedErrorID : InvokeMethodOnNull
Я убедился, что .NET 4.5 установлен на сервере.Любые идеи или предложения с благодарностью!Даже если это изменит способ, которым я вообще выбираю кликабельную ссылку:)