プログラムの起動する順番を設定したい。


アキ  2008-01-15 11:03:56  No: 138624  IP: 192.*.*.*

初めまして。アキと申します。
VB2005、XPproで開発を行っています。

あるプログラム(以下A)を作成し、インストーラを作成して配布できるところまで作成してあります。
ここに、毎回プログラム起動時に、新しいバージョンのAがサーバーに置いてないか確認しに行くプログラム(以下B)を追加したいと思っています。

流れとしては
B起動→サーバ内データが更新されていればAに更新をかける→A起動
という形で、毎回クライアントがプログラムを起動するたびにチェックをかけたいと思います。

ここで、「先にBを起動し、次にAを起動する」という動きをどのように実現すればいいのかわからず悩んでおります。
インストーラに「最初にBを起動」と設定し、Bに「終了後にAを起動」と設定すればいいのかとも思いましたが、具体的な設定方法がまったくわかりません。

よろしければどなたかご教示願えませんでしょうか。

編集 削除
通ってみた  2008-01-15 15:12:20  No: 138625  IP: 192.*.*.*

クライアントにはBを起動してもらい、BからAを起動してBは自らを終了処理すればよいと思います

編集 削除
通ってみた  2008-01-15 15:14:54  No: 138626  IP: 192.*.*.*

もしかしてBからAを起動する方法がわからないとか・・・のようですね
「vb  プログラム  起動」で検索すればわかると思います

編集 削除
アキ  2008-01-15 15:30:13  No: 138627  IP: 192.*.*.*

ご意見ありがとうございます。

ご指摘の通り検索し、Shell関数に辿りつきましたので、BからShell関数でAを呼び出すという形にしてみました。

ところが実際にインストールして実行してみると、Bが起動せずにAのみ起動するという状態になってしまいました。
インストーラ作成時にスタートプロジェクトはBと設定したはずなのですが・・・

編集 削除
通ってみた  2008-01-15 16:37:54  No: 138628  IP: 192.*.*.*

.Netはわからないですが、Form_Load内で全てを完結させている場合、フォームが表示されずに終了してしまっている可能性がありますがどうでしょうか

例えばB内で適当なテキストファイルを出力するようにしておけば、そのファイルが生成されたかどうかで起動したかどうか確認できると思います

編集 削除
 2008-01-15 17:34:41  No: 138629  IP: 192.*.*.*

> ところが実際にインストールして実行してみると、Bが起動せずにAのみ起動するという状態になってしまいました。
> インストーラ作成時にスタートプロジェクトはBと設定したはずなのですが・・・

インストールした後に、エクスプローラからダブルクリックでBを実行したがダメと言うこと?
文章から、ショートカットはBを実行するモノになるように指定したのに、実際のショートカット(スタートープログラムに登録されたモノ)はAのままだったという事?

編集 削除