VBScriptについて必死に話し合うスレ
■ このスレッドは過去ログ倉庫に格納されています
0878869
2014/01/11(土) 09:41:39.50あるアプリケーションを無人インストールしたいのですが
条件として、ローカルに書き込めない、セットアップ中はウインドウが出ない、ネットワークから実行
インストーラ自体は tasklst | find "setup.exe" で監視できるのですが、最後に OK ウインドウが出てきてしまいます
で、このOKがあれば押しに行きたいのが相談内容の本当の趣旨なわけですが
セットアップ中に外部アプリが起動するとインストーラーがこけるので、UWSCのような外部アプリを用いれません。
ウイルスチェックみたいな感じととらえていただければOKかと思います
そこで苦肉の策としてバッチからウインドウを触りにけ、なおかつもともとOSに入っているWSHを利用したいと思ったわけです
なお、ローカルディスクにはポリシーがあたって書き込み制限されており、何一つファイルを作成できません
バッチでVBSファイルを作成して・・と言う訳にもいかない状態なわけです
ネットワークドライブに入っているバッチを起動する
標準で入っているアプリ以外を利用しない
いつ出てくるかわからない OK ボタンを押したい
なお、OKが出てもタスクは残り続けるので (これが本当に厄介)
OK押したかどうか、ウインドウが出たかどうかでループを抜けねばなりません
無限に押し続けるだけのスクリプトでは意味が無いです
start "" install.exe
:loop
tasklist | find "install.exe"
if %errorlevel%==1 goto loop ;↓一行scriptではこれがエラー
mshta vbscript:execute("Set WS=CreateObject(""WScript.Shell""):R=WS.AppActivate(""TITLE""): WScript.Echo(R) :Close()") | find true
if %errorlevel%==0 goto loopend
goto loop
別の手段があるならそれはそれで歓迎です
■ このスレッドは過去ログ倉庫に格納されています