ソフトウェアをアンインストールして再インストールするスクリプトを書いています。
面倒なことに、アンインストール プロセスの一部としてパスワードを入力する必要があります。(つまり、アンインストーラーがボックスでポップアップし、ユーザーは続行するためにパスワードを入力します)
ダイアログボックスを検出し、パスワードを自動的に入力できるようにしたいので、ユーザーは何もする必要がありません。これを行う方法があることを覚えているようですが、方法がわかりません。
ソフトウェアをアンインストールして再インストールするスクリプトを書いています。
面倒なことに、アンインストール プロセスの一部としてパスワードを入力する必要があります。(つまり、アンインストーラーがボックスでポップアップし、ユーザーは続行するためにパスワードを入力します)
ダイアログボックスを検出し、パスワードを自動的に入力できるようにしたいので、ユーザーは何もする必要がありません。これを行う方法があることを覚えているようですが、方法がわかりません。
理解した:
$app = get-process | where {$_.mainwindowtitle -match "Admin Password"}
$processID = 0
foreach ($a in $app) {
if ($a.id -gt $processID)
{
$processID = $a.id
}
}
start-sleep -Milliseconds 500
[Microsoft.VisualBasic.Interaction]::AppActivate($processID)
[System.Windows.Forms.SendKeys]::SendWait("mypassword{ENTER}")
私のデモアプリでうまく機能します。問題は、パスワードを送信しようとしているアプリが SendKeys から保護されていることです。
ああ。ふりだしに戻る...