VBSで管理者モードのcmdにキーを送るには?
お世話になります。
業務上の必要に迫られているため、質問させて頂きます。
恐縮ですが、ご存じの方、御教示頂けますでしょぅか?
VBSでコマンドプロンプトを管理者モードで起動し、かつ、Robocopyコマンドをキー入力送信するVBSを作成したいのですが、上手く動きません。
※コピーしたいのは、HOSTSファイルで、コマンドプロンプトで手入力すると正常に動作しますが、バッチファイル(.bat)に記述すると「アクセスが拒否されました」が発生するため、VBSでコマンドプロンプト上にキーを入力させたいというのが、主旨です。
以下スクリプトを記述しますが、解決策をご存じの方、教えて頂けないでしょうか?
※c:\temp\hostsにおいたものをコピーさせることにしています。
-------------------
// 管理者モードでコマンドプロンプト起動
Set obj = Wscript.CreateObject("Shell.Application")
obj.ShellExecute "cmd.exe", "/k", "", "runas", 1
//robocopy 入力
Set objShell = WScript.CreateObject("WScript.Shell")
WScript.Sleep 3000
objShell.SendKeys "robocopy /copy:DT /ZB /R:100 /W:2 /is /xjf c:\temp\hosts c:\windows\system32\drivers\etc hosts"
objShell.SendKeys "{ENTER}"
-------------------
■実行結果:コマンドプロンプトは管理者モードで起動するが、文字は入力されない。
恐れ入りますが、何卒よろしくお願いいたします。
お礼
Bonjin様ご回答ありがとうございます。 おっしゃる方法で無事に最小化することができました。 本当にありがとうございました