[Delphi:90672] リモートデスクトップ接続の検知

848 views
Skip to first unread message

K.Yamagami

unread,
Sep 3, 2008, 6:52:45 PM9/3/08
to Del...@ml.users.gr.jp
SAWAと申します

アプリ側で、自分が実行されているPCが他のPCからリモートデスクトップで
接続されているのか、ローカルで実行されているのか判断する方法は
ないでしょうか。

アプリでタイマーで何かのステータスを監視する方法でも、システムからの
イベントを受け取る形でも良いのですが、何かないかと悩んでいます。
方法がないわけはないと思うのですが。。。。

XPでもVistaでも同じだとは思いますが、とりあえずはXP SP3環境で
実現したいと考えております。

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

--
K.Yamagami <sa...@m5.kcn.ne.jp>


Makoto Watanabe

unread,
Sep 3, 2008, 10:38:47 PM9/3/08
to Del...@ml.users.gr.jp
K.Yamagami 様、こんにちは。
  渡邊誠人です。現在時刻:2008/09/04 11:36:39

> アプリ側で、自分が実行されているPCが他のPCからリモートデスクトップで
> 接続されているのか、ローカルで実行されているのか判断する方法は
> ないでしょうか。

 確認していないので、解りませんが...。
 リモートディスクトップではエラーになると思われる、DirectX 系の命令を実
行してみて、実行できればローカルで動かしていて、エラーになったらリモート
からの接続だって事には出来ないでしょうかね?
 何の命令がエラーになるのかは調べてみないと解らないのですが、直接グラフィッ
クを操作するような命令はエラーになると思います。

--
 ヘ ヘ     ・. ・‥…………………………………………‥・Becky! 2.48
ミ・.・ミ  ・.●・          .NET 研究所 http://www.dotnet.jp/
(m m)~ ●・           渡邊誠人(http://www.lunatican.net/)


Atsushi Matsuno

unread,
Sep 3, 2008, 11:01:20 PM9/3/08
to Del...@ml.users.gr.jp
SAWA さんこんにちは。松野と申します。

> アプリ側で、自分が実行されているPCが他のPCからリモートデスクトップで
> 接続されているのか、ローカルで実行されているのか判断する方法は
> ないでしょうか。

WIN32 API の GetSystemMetrics(SM_REMOTESESSION) あたりを
調べてみてはいかがでしょうか。

--
Atsushi Matsuno / HEXARD INC.
E-mail: mat...@hexard.co.jp


K.Yamagami

unread,
Sep 4, 2008, 11:05:46 AM9/4/08
to Del...@ml.users.gr.jp
こんにちは、SAWAです。

松野様、渡邊様、回答ありがとうございました。松野様におしえていただいた

> WIN32 API の GetSystemMetrics(SM_REMOTESESSION) あたりを

と、これをヒントに見つけた

http://www.swissdelphicenter.ch/torry/showcode.php?id=1109

の方法を併用することで、必要なタイミングでリモート接続されているか
どうかを取得できました。ありがとうございました。
--
K.Yamagami <sa...@m5.kcn.ne.jp>


Reply all
Reply to author
Forward
0 new messages