- PR -

ActiveXコントロールを使用したWindowsサービスについて

1
投稿者投稿内容
くろちゃん
会議室デビュー日: 2008/02/06
投稿数: 10
投稿日時: 2008-08-26 11:26
くろちゃんです。
いつもお世話になっております。

今、ActiveXコントロールを使用したWindowsサービスを作成しています。

そのコントロールはサービス起動中常に利用したいので、
サービスOnStartで別途STAスレッドをおこし、
そちらで、コントロールの生成やメッセージループ処理等全てさせたいと考えています。
(サービスとは名ばかり??)

フォームがないアプリでメッセージループさせる方法がよくわからず、
空のフォームをApplication.Runして以下のように実行しています。

サービス:OnStart→STAスレッドStart
STAスレッド:Application.Run(フォーム)→コントロールの生成、イベント紐付けなど

一応希望通り動いているようなのですが、正しいのかどうか自信がありません。
ActiveXコントロールを使用したWindowsサービスを作成する場合、こうやるんだよというのを教えていただけないでしょうか。
渋木宏明(ひどり)
ぬし
会議室デビュー日: 2004/01/14
投稿数: 1155
お住まい・勤務地: 東京
投稿日時: 2008-08-29 19:44
引用:

一応希望通り動いているようなのですが、正しいのかどうか自信がありません。



特別間違った手順ではありません。
最も基本的なところはそれでクリアと考えてよいと思います。

が、それで本当に期待通りの動作をする(し続ける)かどうは、そのコントロールの使用や実装に大きく左右されます。
くろちゃん
会議室デビュー日: 2008/02/06
投稿数: 10
投稿日時: 2008-08-31 17:03
返信ありがとうございます。
気づくのが遅くなって申し訳ございません。

引用:

特別間違った手順ではありません。
最も基本的なところはそれでクリアと考えてよいと思います。



ありがとうございます。
結局、スレッドをプロセスに変えたのですが、無事に動いています。

Windowsサービスは初めてだったので、ActiveXが使えない事にはじまり、GUIを表示することの大変さや、サービスが起動したプロセスではSystemEventsがとれない?などなど
初めて知ることが多かったです。
1

スキルアップ/キャリアアップ(JOB@IT)