サービスに依存するGUIアプリケーション – プログラミング – Home

サービスに依存するGUIアプリケーショ...
 
通知
すべてクリア

[解決済] サービスに依存するGUIアプリケーション


NOR
 NOR
(@NOR)
ゲスト
結合: 23年前
投稿: 128
Topic starter  

Visual C++ 2008 MFCです。
DBなどのサービスを使用するGUIアプリケーションを
スタートアップに登録させている場合、サービス開始前に起動してしまい、
正しく動作しなくなる可能性があります。

サービス同士は依存関係を持たせることができるようですが、
このようなGUIアプリケーションをスタートアップに入れる場合、
サービス開始まで待たせる方法はあるのでしょうか?


引用未解決
トピックタグ
AR2
 AR2
(@ar2)
Estimable Member
結合: 5年前
投稿: 110
 

私はスタートアップのショートカットにコマンドラインオプションを付与し、サービス
が起動していなければ何度かリトライするモードを組み込んでます。


返信引用
えーと
 えーと
(@えーと)
ゲスト
結合: 19年前
投稿: 54
 

ここらへんが役に立つかも?
http://www.monyo.com/technical/windows/33.html

スタートアップスクリプトにするか、依存関係を
SpoolerかMessangerにするといいみたいです。


返信引用
えーと
 えーと
(@えーと)
ゲスト
結合: 19年前
投稿: 54
 

すみません
サービスを使用するアプリでしたね。

無視してください。


返信引用
ITO
 ITO
(@ITO)
ゲスト
結合: 22年前
投稿: 1235
 

 僕だったら、
   ・APIは、自動的に起動する。
   ・フラグ、レジストリー等でサービスプログラムの起動を確認。
   ・起動が確認できたら、処理を継続。
   ・一定時間を超えてもサービスプログラムが起動しなければエラー終了。
      (原因が分かるとなお良い)
 にしますね。


返信引用
aetos
(@aetos)
Noble Member
結合: 5年前
投稿: 1480
 

DB などっていうことは、相手は自作のサービスではなく、例えば SQL Server サービス
だったりするのでしょうか。
つまりは、サービス側に同期機構を組み込むための改変ができないケース。
サービスが立ち上がったかどうかは QueryServiceStatusEx 関数で調べることができま
すが、ステータスが RUNNING ならば、SQL クエリが確実に成功する保証があるのでしょ
うか? 若干不安です。


返信引用
NOR
 NOR
(@NOR)
ゲスト
結合: 23年前
投稿: 128
Topic starter  

ARさん、えーとさん、ITOさん、aetosさん、解説ありがとうございます。

今回の件では、相手サービスはまさにSQL Serverです。
OS自身の機能では、サービス起動を待つような仕組みは無いのですね。

アプリケーション自身で一定時間待ちながら状態を調べるような処理を
組み込むようにしてみようかと思います。
ありがとうございます。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました