Form Activated時にProcess.Start

解決


和歌山  2012-06-06 08:34:15  No: 147630  IP: 192.*.*.*

Form Activated時にProcess.Start(○○.exe) で実行ファイルを起動する
ようなプログラムを作成しました。
ただ、起動はしてもそのソフトを終了させることができません。
ボタンクリック時にProcess.Startを実行した場合は終了できました。

実現させたい動作としては
①フォームが起動すると同時に実行ファイルも起動
②実行ファイルで作業完了したら、実行ファイルを手動で終了させる

という流れなのですが。開発環境はVisualBasic2010 です。
VB6のときはShell を使ってForm Activated時に実行ファイルを起動し、
うまくいってたのですが・・・。

編集 削除
魔界の仮面弁士  2012-06-06 10:24:48  No: 147631  IP: 192.*.*.*

> Form Activated時に
Shown イベントでは無く?


> 起動はしてもそのソフトを終了させることができません。
「そのソフト」とは○○.exe の事でしょうか。それとも作成中のVBアプリのことでしょうか。
また、終了させることができないというのは、具体的にはどういう状況なのでしょうか。


> という流れなのですが。
〇〇.exe の部分を、電卓(calc.exe)やメモ帳(notepad.exe)にした場合も
同じ結果になるのでしょうか。

そのほか、バッチファイル(*.cmd もしくは *.bat)経由で起動させた場合、
実行結果は変化するのでしょうか。


> VB6のときはShell を使って
Process.Start の方が良いとは思いますが、2010 にも Shell 関数は一応ありますね。

VB6 の時と VB2010 の時で、実行環境やカレントディレクトリは同一ですか?
実行環境が Vista 以降だとしたら、管理者モードの有無で結果は変わりますか?
実行環境が 64bit OS だとしたら、x86ビルドと AnyCPU ビルドで結果は変わりますか?

編集 削除
和歌山  2012-06-06 12:48:48  No: 147632  IP: 192.*.*.*

>Shown イベントでは無く?

Shown イベントで実行すると、うまくいきました。

> そのソフト」とは○○.exe の事でしょうか
  exeファイルです。

>〇〇.exe の部分を、電卓(calc.exe)やメモ帳(notepad.exe)にした場合も
同じ結果になるのでしょうか。
同じになりました。

shownイベント時に実行することにより、全て解決いたしました。
ありがとうございました。

編集 削除