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

[Visual Basic 初心者掲示板] [過去ログの一覧]


アキ 2008/01/15(火) 11:03:56 <初心者>
初めまして。アキと申します。
VB2005、XPproで開発を行っています。

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

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

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

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

通ってみた 2008/01/15(火) 15:12:20
クライアントにはBを起動してもらい、BからAを起動してBは自らを終了処理すればよいと思います

通ってみた 2008/01/15(火) 15:14:54
もしかしてBからAを起動する方法がわからないとか・・・のようですね
「vb プログラム 起動」で検索すればわかると思います

アキ 2008/01/15(火) 15:30:13 <初心者>
ご意見ありがとうございます。

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

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

通ってみた 2008/01/15(火) 16:37:54
.Netはわからないですが、Form_Load内で全てを完結させている場合、フォームが表示されずに終了してしまっている可能性がありますがどうでしょうか

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

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

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

毎週金曜日はポイント最大3倍!さらに4倍のチャンスも!

Programming Library