Ввод пароля для Windows Security при автоматизации IE с использованием VBA - PullRequest
0 голосов
/ 13 мая 2018

Я пытаюсь удалить некоторые данные с веб-сайта интрасети, созданного третьей стороной, и отправить электронное письмо в зависимости от данных. Я сделал это в Excel с VBA, так как мой компьютер заблокирован и не имеет Powershell или любого другого языка сценариев.

Проблема в том, что веб-сайт требует входа в систему с помощью диалогового окна безопасности Windows. Я искал часы и ничего не работает. SendKeys в VBA не работает, так как блок защиты вступает во владение и останавливает VBA. Это почти сработало: VBA-код для передачи имени пользователя и пароля .

Проблема в том, что когда я планировал (планировщик задач), иногда пароль (имя пользователя уже заполнено) не переходил в диалог безопасности, и он переходил в Word или что-либо еще открытое. Я не думаю, что «Безопасность Windows» - это фактическое имя окна (хотя это то, что в заголовке).

Правка - добавление кода:

   Set IE = New InternetExplorerMedium
   IE.Visible = True

   CreateObject("WScript.Shell").AppActivate "XYZ.net - Internet Explorer"

   URL = "https://XYZ.aspx"
   IE.Navigate URL
   Do While IE.ReadyState = 4: DoEvents: Loop
   Do Until IE.ReadyState = 4: DoEvents: Loop

   HWNDSrc = IE.HWND

   SetForegroundWindow HWNDSrc
   IE.document.getElementById("overridelink").Click

   Application.Wait (Now + TimeValue("00:00:08"))
   Shell "WScript H:\data\excel\Logon.vbs", vbNormalFocus
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...