tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板) [ツリー表示へ]   [Home]
一括表示(VB.NET VB2005)
タイトルWindowsサービスAPから対話式操作
記事No10262
投稿日: 2010/10/21(Thu) 09:19
投稿者KYMY
Windowsサービスアプリケーションを作成しています。

課題点:
Windowsアプリケーションのように、対話式に操作がしたい。

Windowsのデスクトップ右下のタスクバーにアイコンを表示させ、
そのアイコンを右クリックすることでメニューを表示させて、そこから処理を選択するようなフローが取りたいです。
しかしながら、その実装ができず対応に困っております。

メニューのイメージとしては、「開始」、「終了」、「設定変更(FORM起動し、設定値を変更できる)」

環境:
 OS:XP、2003Server
 開発環境:VB.NET2003
 VB暦:半年

以上となります。

何卒よろしくお願いいたします。

[ツリー表示へ]
タイトルRe: WindowsサービスAPから対話式操作
記事No10263
投稿日: 2010/10/21(Thu) 11:43
投稿者魔界の仮面弁士
> そのアイコンを右クリックすることでメニューを表示させて、そこから処理を選択するようなフローが取りたいです。
> しかしながら、その実装ができず対応に困っております。
http://support.microsoft.com/kb/821794/en-us
に書かれていますように、直接的な対話は行わないでください。


サービスの現在の状態を表示させたり、設定を変更したりさせるような機能が必要な場合は、
アイコンを表示させるデスクトップアプリを、サービスとは別に作成してみてください。
デスクトップ側からは、サービスに対して現在の状況を問い合わせ、それを表示させたり、
サービス側に対して、状態変更依頼を発行するという形での実装になります。

このあたりが参考になるかと。
http://www.itmedia.co.jp/enterprise/articles/0502/01/news083.html
http://techbank.jp/Community/blogs/nob/archive/2010/10/05/28363.aspx
http://msdn.microsoft.com/ja-jp/library/cc402150.aspx


なお、サービスが起動している最中は、「デスクトップに誰もログオンしていない状態」や
「複数のユーザーが同時にログオンしている状態」も珍しくありませんので、
それらを考慮した設計にする必要があります。

[ツリー表示へ]
タイトルRe^2: WindowsサービスAPから対話式操作
記事No10265
投稿日: 2010/10/22(Fri) 08:42
投稿者KYMY
> サービスの現在の状態を表示させたり、設定を変更したりさせるような機能が必要な場合は、
> アイコンを表示させるデスクトップアプリを、サービスとは別に作成してみてください。
> デスクトップ側からは、サービスに対して現在の状況を問い合わせ、それを表示させたり、
> サービス側に対して、状態変更依頼を発行するという形での実装になります。

サービスとは直接対話は行わないものなのですね。
デスクトップアプリを別に作り、そこからサービスに何かするような形で作ってみます。
参考も張っていただきありがとうございました。

[ツリー表示へ]