他のexe起動中に待機しておくには?

解決


いな  2004-09-06 20:15:13  No: 116206

さっそく質問させていただきます。
VB.NETで開発しています。
form1のボタンクリック時、引数を渡し別のexeを起動させ終了するまで待機状態にさせてたいのですが、うまくできません。

***クリックイベント
 Dim T_Gyom As System.Threading.Thread

 Me.Enabled = False
 ’起動するためのスレッドを実行
 T_Gyom = New System.Threading.Thread(New       System.Threading.ThreadStart(AddressOf BtnClick))
 T_Gyom.Start()
 'スレッドが終了するまで待機
  While (T_Gyom.IsAlive)
       Application.DoEvents()
  End While

  Me.Enabled = True

****
****Private Sub BtnClick()
   Dim Gyom As Process = New Process
   Dim BinPath As String = System.IO.Directory.GetCurrentDirectory()
   '業務を起動(担当者コードを引数として渡す)
   Gyom.StartInfo.FileName = BinPath & "\" & BtnMode & ".exe"
   Gyom.Start(Gyom.StartInfo.FileName, "****")
   '業務のプロセスが終了するまで待機
   Gyom.WaitForExit()
END SUB
****

  単に、Gyom.Start()  だとうまく待機中になるのですが、
ファイル名、引数を書くと待機中にならず元画面Enabled = Trueになってしまいます。
づすればよいのでしょうか?


いな  2004-09-06 23:51:16  No: 116207

すいません。
解決できました。
 
Gyom.StartInfo.FileName = BinPath & "\" & BtnMode & ".exe"
Gyom.StartInfo.Arguments = "0010"  'コード
Gyom.Start() 

で出来ました。


kisi  2005-06-15 19:40:02  No: 116208

こんにちは。
本テーマにちょっと合ってないかもしらないですが、ご存知なら、教えていただきたいと思います。

VB.NETのプログラムの中で、バッチファイルを実行させます。バッチファイルの中で下記のことを書いてありますが、うまく行かないようです。バッチファイルの中で、別のファイルを呼び出すことができないでしょうか。
何か方法がありますか。よろしく御願いします。

osql -P admin -U sa -d DB -i "C:\Program Files\InitDB.sql"


いな  2005-06-15 19:45:58  No: 116209

う、ついに同じHNが...


※返信する前に利用規約をご確認ください。




  


  このエントリーをはてなブックマークに追加