C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト


(過去ログ 55 を表示中)
■30791 / )  Re[2]: WindowsサービスでConsole.ReadLine
□投稿者/ オショウ (69回)-(2009/01/06(Tue) 22:49:11)
追伸

以前にも書きましたが、サービスって何ものか、まだ解っていないのでは?
システムサービスには、基本、デスクトップは無いのです。
よって、コンソールへの出力はできません。

次に、絶対できないのか?・・・
と言うことになりますと、サービスの設定でデスクトップとの対話を許可
するかどうかと言う設定があります。
そこでまず許可しないとできません。

で、許可しても簡単には対話できません・・・
そのサービスが動作するOSは何でしょうか?
WinXP までなら簡易的には対話できますが、VistaやServer OSの場合、セキュリティー
やら権限やら・・・果ては環境変数・レジストリ等を継承できるよう偽装しないと、
出力、もしくはデスクトップ側で表示するアプリとの通信はできません。

ただし、全く別のアプリでサービスとは非同期で尚且つ手動で起動させるようなアプリ
とサービスとの通信であれば、.NETリモートやただのソケット通信やPipe等で、サービ
ス側から出力された内容をデスクトップ側アプリで受信して表示させることはできます。

違いは、サービスと非同期でサービスがデスクトップ側アプリを起動しない、手動で起
動させる場合は、自前の通信プロトコルで可能ですが、サービスがデスクトップ側へ向
かってアプリを起動する場合は、いろいろ制約があるので、環境(OS)によっては、
できない場合もあります。

今回のようにただデバッグ出力を受信して表示するようなものですと、サービス側から
起動させなくても手動で起動すれば勝手に受信して表示するようなものでしたら大した
ことは無いと思います。

● YOUさんの現在の実力では、そこまで行くのは、結構大変ではないかと推測します。

  何はともあれ頑張って下さい。
  調べればちゃんと情報は入手できますヨ!

以上。
返信 編集キー/


管理者用

- Child Tree -