• 締切済み

vbsでアプリを自動終了する

notepadを起動せさ、「Hello」とキーボードより入力させてから自動的に終了させるvbsで作成しましたが、キーボード入力させるところまで成功しましたが、notepadを自動的に終了させる部分が成功しておりません。(イメージはユーザは何もせずnotepadを保存せずに自動終了させます。)下記のとおり 途中なのですがアドバイスをお願い致します。 ----------------------------------------------------------- Set objShell = WScript.CreateObject("WScript.Shell") objShell.Run "notepad.exe" WScript.Sleep 1000 objShell.SendKeys "hello ,"

みんなの回答

  • nda23
  • ベストアンサー率54% (777/1415)
回答No.2

終了する時のキー操作をシュミレートします。 (1)ツールバーの「ファイル(F)」をクリック→Alt + F (2)↓を6回 (3)Enter (4)保存するダイアログに「いいえ(N)」を応答→Alt + N SendKeysですと、"%f{DOWN 6}{ENTER}%n"となります。 SendKeysはその時にForeGroundになっているWindowに送られるので、Notepadにキー操作が実行される保証がありません。 確実なのはRunメソッドではなく、Execを使い、得られるExecオブジェクトのTerminateメソッドを使うことです。

tara22
質問者

お礼

nda23さんへ 只今、確認したら成功致しました。こんな方法もあるのですね Execオブジェクトも利用してみます。ありがとうございました。

  • teto_pun2
  • ベストアンサー率41% (12/29)
回答No.1

前提が良くわかりませんが、 以下の方法にて強制終了することができます ↓ http://www.microsoft.com/japan/technet/scriptcenter/scripts/os/process/procthd/pcthvb09.mspx

tara22
質問者

お礼

teto_pun2さんへ すみません、前提の説明がなくて。 ご回答して頂きました、部分を編集させて頂きましたら無事 成功致しました。ありがとうございました。