• ベストアンサー
  • 困ってます

VBScriptの実行完了を待ってからDOSのプログラムを実行したい。

DOSのバッチからVBScriptを実行しています。 VBScriptの実行が完了してから次のDOSコマンドを実行させたいのですが、 START /WAIT SAMPLE.vbs では 実行完了を待ってくれないみたいです。 どうしたらよいでしょうか?ご教授お願いいたします。

共感・応援の気持ちを伝えよう!

  • 回答数1
  • 閲覧数706
  • ありがとう数0

質問者が選んだベストアンサー

  • ベストアンサー
  • 回答No.1
  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)

適当なVBScript を書いて試してみましたが、完了待ちしますよ。 ひょっとして、 SAMPLE.vbs でウインドウアプリを起動してたりして、 それが終了してないのに、終了してるとか思ってませんか SMPLE.vbs を補足していただけますか

共感・感謝の気持ちを伝えよう!

関連するQ&A

  • VBScript(WScript)のバッチファイル実行

    お世話になります。 VBScriptで困っています。 ご存知の方、ご教示願えますでしょうか。 Windowsでバッチファイルを実行したときに、DOS画面(コマンドプロンプト)が一瞬パッて表示されるかと思います。 現在開発中のシステムで、プログラムからバッチファイルを自動で実行する処理を入れております。 通常ならばバッチファイルを実行した場合、DOS画面が表示されてしまいますが DOS画面を出さないようにプログラムを組んでいます。 つまり、VBScriptからバッチファイルを実行しております。 以下、VBScriptのソースを記載します。 Set objShell = WScript.CreateObject("WScript.Shell") fcresult = objShell.Run("C:\abc.bat", 0, True) wscript.quit fcresult 上記のVBSを実行すると、必然的に「abc.bat」が実行されます。 しかし、現在僕が使っている環境ですとDOS画面が表示されません(←これがやりたいこと) しかし、お客さんの環境で同じ様にVBSからバッチファイルを実行すると 「C:\WINDOWS\System32\CScript.exe」という名前でDOS画面が起動されてしまいます。 周りの環境でもVBSからバッチをたたくような処理を行ってみましたが、DOS画面が起動されず。。。 正直、再現が難しいため大変困っております。 お客さんの環境では100%再現されます。 全くもって原因がつかめておりません。 Windowsのセキュリティの設定でしょうか!? ご存知の方いらっしゃいましたら、知恵をお貸しください。 よろしくお願いいたします。

  • DOSにコマンドを送って実行

    DOSモードでしか実行できないソフトがあるんですが、 VBからそのソフトをDOSで実行し、コマンドを送って、結果を得られるようにしたいのですが。 それと、DOSで実行している過程は表示されないようにしたいです。 そのソフトの使用方法は起動してコマンドを入力するだけで結果が出てきます。 どなたかご存知の方がいらっしゃいましたら宜しくお願い致します。

  • DOSの終了

    教えてください。 DOSでバッチを作成したのですが、 終了のコマンドって「exit」ですよね。 それを入力したのですが、終了してくれません。。。 なぜでしょうか??? えっと、実際に入力したコマンドは 「start winpopup.exe(エンター) exit」です。 ちゃんとwinpopupは起動するのですが、DOS画面が終了しません。 どなたか教えてください。

  • MS DOSコマンドより、Javaプログラムを実行し、Javaの中でJ

    MS DOSコマンドより、Javaプログラムを実行し、Javaの中でJDialogポップアップ入力画面を表示させると、DOSバッチに制御が返ってこないのですが、どうすればよいでしょうか ご教授いただけるとありがたいです。

    • ベストアンサー
    • Java
  • バックグラウンド実行完了を待つ方法

    UNIXシェルスクリプトだと #!/bin/sh test1.sh & test2.sh & wait test3.sh などとしてtest1.shとtest2.shの両方をパラレルで実行してから 両方の完了を待って、test3.shを実行できますが、 これと同じようなことがWindowsのコマンドプロンプトで できないでしょうか。startを使えばバックグラウンドで 実行できることは分かったのですが複数の子プロセスの完了を 待つ、waitに対応するものが無くて困っています。

  • 【VBScript】※渡したい変数のみ抜粋

    【VBScript】※渡したい変数のみ抜粋 WScrip quit(1) 【バッチスクリプト】 for %%i ("パラメータファイル") do ( cscript a.vbs %%i if not %errorlevel%==0 goto err ) 上記VBSが異常終了した際に返す、戻り値1を そのままバッチスクリプトのerrorlevelに返したい のですが、errorlevel==0となってしまいます。 for文を使わず、vbsを実行していた際には、 旨く引き渡せていたのですが、構文の修正が 必要なのでしょうか? どなたかご教示下さい。 宜しくお願いします。

  • HTML + VBScript で Sleep できない

    お世話になります。ご教授ください。 類似の質問が既にあるのかもしれませんが、質問させていただきます。。。 HTML上に記述するVBScriptでは、WScriptは使用できないという記事を見かけます。 実際、HTML+VBScriptで使用すると、 変数は宣言されていません:'WScript' とエラーが出ました。 WSH は WScript のインスタンスを読み込むことができないうんぬん、と書かれていました。 書きたいことは、 WScript.Sleep 1000 です。 もしくは、これに変わる何かがしたいです。 外部ファイル化(.vbs)を試してみましたが、ダメでした。 ==== サンプル(Sample.vbs) ==== Option Explicit MsgBox "start" Dim Idx = 0 Do While Idx <> 3 WScript.Sleep 1000 MsgBox Idx Idx = Idx + 1 Loop WScript.Sleep 1000 MsgBox "end" ================ <html> <head> <meta http-equiv="Content-Script-Type" content="text/vbscript"> <script language="VBScript" type="text/vbscript" src="sample.vbs"></script> </head> … という感じです。 上記はあくまでサンプルですが、最終的には「ループの中で」待ち状態、になるようにしたいです。 Do While ある条件 1秒待ち ある条件に、なるかならないか Loop (setTimeout を使用する例が書かれていましたが、それではループ制御は走り続け、CPUが痛い目に合いました。。。) もしかして、WScript は使用できるのに、記述ミスかもしれませんし。。。 できない場合は、それに変わる案などいただけるとありがたいです。 よろしくお願いします。

  • WinZIPの実行

    すみません、お尋ねいたします。 VBから、DOSコマンドでファイルを圧縮したいと思っています。 が、圧縮アプリケーションをインストールが出来ない環境で、標準のWinZipのDOSコマンド実行方法が分かれば・・・ 有識者の方、大変お手数ですが、ご教授ください。 よろしくお願いします。

  • DOSコマンドについて

    ご教授お願いします。 Windows Server 2003において、 DOSコマンドによるバッチを作成するにあたり ファイルを圧縮する設定/方法を教えて頂けないでしょうか? 恐れ入りますが、宜しくお願いします。

  • 開いてるファイル(エクセル等)をバッチかVBScript自動的に保存す

    開いてるファイル(エクセル等)をバッチかVBScript自動的に保存する方法は? 幾つかのアプリを終了させ、その際エクセルを終了するときに、 開いているエクセルファイルを全部自動的に保存させて終了させたいと思います。 バッチでは保存のコマンドは無いようで、VBSで終わらせ方は分かったのですが、その前の保存がわかりません。ちなみにBookのタイトルはそのときにより変わります。あと今回はエクセルのマクロはつかいたくないので、VBSで使えるのでお願いします。