• ベストアンサー

DOS窓の非表示について

常駐で動くC++のプログラムがいくつかあり、 それらの初回起動はBATファイルで『start aaaa.exe』のように 起動をかけています。 C++のプログラムはDOS窓が表示されるようになっていて プログラムが動くたびにパソコンの画面上で複数のDOS窓が チカチカッとなってしまい、とてもわずらわしく、 出来ればDOS窓を非表示にしたいのですが、何か方法はありませんでしょうか?

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

  • ベストアンサー
  • localica
  • ベストアンサー率52% (202/385)
回答No.2

バッチ単独では無理ですが、VBSからバッチを呼び出すことによってお望みの動作が得られます。 Set shell = WScript.CreateObject("WScript.Shell") shell.Run "Path\バッチファイル", 0, false

aya--chan
質問者

お礼

できましたぁ! DOS窓が非表示ですがタスクマネージャで確認すると確かに起動しています。 データを流してみましたが、しっかりと結果が返ってきました。 ありがとうございます。 ただ1点気になるのが、DOS窓は表示されていないのに データを流したときに、一瞬だけDOS窓のようなものがチカチカします。 これは仕方の無いことなのでしょうか? (ちなみに負荷テストのため多量にデータは流して確認しています)

その他の回答 (2)

  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.3

startに オプションの /MINをつけてやればいいのでは ・・・ start /MIN aaa.exe start /MIN bbb.exe

aya--chan
質問者

お礼

情報ありがとうございます。 試してみます

  • DIooggooID
  • ベストアンサー率27% (1730/6405)
回答No.1

cmd /c aaaa.exe ではいかがでしょうか。

aya--chan
質問者

お礼

ご回答ありがとうございます。 質問の段階で、うまく今の現状を伝えられていませんでした。 今は、例えば『aaaa.exe』 『bbbb.exe』 『cccc.exe』とC++の 常駐プログラムがあり、スタート.batで以下のように指定して毎朝起動をかけています。 【スタート.bat】 start aaaa.exe パラメータ start bbbb.exe パラメータ start cccc.exe パラメータ DIooggooIDさんの案を試しては見ましたが、 cmd /c aaaa.exeが起動したあとに、 cmd /c bbbb.exeが起動しませんでした。 調べてみたところcmd /c は指定したプログラムが終了してから 次のコマンドラインを実行しているようです。 前述のとおり常駐プログラムですので、aaaa.exeは終了.batを起動しないと 終了しないようになっています。