Brynhildr

KeroRemote

リモートデスクトップエンジニアのブログ。

CTRL+ALT+DEL
いやはや結構リクエストが多かった「CTRL+ALT+DEL」のキー送信機能ですが、なんとか暫定的では御座いますが実装に漕ぎ着けました。一応サポートOSであるWindows7のみですが。というのも、Windows7になって「SendSAS」という機能が実装されたのですが、これが俗に言う「CTRL+ALT+DEL」をシミュレートというやつです。こいつを使ってチョイチョイです。

実は、随分前に出来てはいたのですが、ちょっと条件が厳しいので実装を躊躇しておりました。

条件1:UACがOFF

まず、UACがONだと動きません。もちろんUACを有効の状態で「CTRL+ALT+DEL」を有効にする方法もあるのですが、実行モジュールに証明書を貼り付けたり、実行環境に証明機関をウンヌンカンヌンだったんですが、そーゆー事をすると、環境依存が激しくなり動かない人へのサポートが大変!な予感がしたので、華麗にスルーする事にしました。自動的にガガーッと実行環境にそんなん設定されても困ると思いますしね。環境はできるだけクリーンでいたいじゃないですか。とゆーわけでモジュールのマニュフェストファイルの「uiAccess」の値は「false」のままです、えぇ。

条件2:Windowsサービス登録

Brynhildrの操作される側の起動は、Windowsサービスとして登録状態に限ります。起動時に「ServerMode」で「Service」を「Entry」にするだけです。「Entry」が出ないという方は、管理者権限で起動させてみると良いかもです。それでも出ないとゆー方は・・・すみません、近くのPCの御詳しい方に相談して見て下さい。

条件3:ポリシーの変更

えーと、「gpedit.msc」を起動して、「コンピュータの構成」→「管理用テンプレート」→「Windwosコンポーネント」→「Windowsログオンのオプション」→「ソフトウェアのSecure Attention Sequence を無効または有効にする」で、「有効」でオプションで「サービス」を選択して下さい。レジストリでゆーと「HKEY_LOCAL_MACHINE」→「SOFTWARE」→「Microsoft」→「Windows」→「CurrentVersion」→「Policies」→「System」の、「SoftwareSASGeneration」の値を「1」です。これで、Windowsサービス(=Brynhildr)からのSendSAS命令を受け取れるという仕組みです、えぇ。

とゆーワケでカナーリとハードルが高めなんですが、トンガリ仕様のブリュンヒルデさんだからこれでもまー良いかなーと。とりあえず条件さえクリア出来れば動きますしね。これでサーバーのログインで「CTRL+ALT+DEL」が出て来てもいちいちスクリーンキーボードを起動しなくても良いワケですよ、いやー良かった。てかまーWindows8とかWindowsServer2012とかだとどーなるかわかりませんけどね。ちなみにWindowsVistaだとSASはあるけどSendSAS命令が無いので動かないという。ちなみにオマケですけどWindows2000とかWindowsXPでも別の方法で「CTRL+ALT+DEL」を動くようにはしてあります。そーいえば、Windows2000でWindowsサービスの登録に失敗する不具合も修正しました、オマケですけど。

そんなBrynhildrの次バージョンがfacebookで間もなく先行公開されますです。




12件のコメント ... ( 管理人承認制 )



接続時にサーバーとして動作するPCに確認メッセージが出るとうれしいです。


匿名  2012/11/02


> 確認メッセージ


そうですね、御要望は頂いております。確認メッセージを出した際に離席していたり待ちの間をどうするかなどの問題がありますので検討させて頂いている次第で御座います。


IchiGeki  2012/11/03


|・ω・) ちらり・・・・ Twitter アカウントが凍結されてる・・・?!


Brynhildr などから UAC有効な環境で Ctrl + ALT + DEL する裏技
//blog.livedoor.jp/blackwingcat/archives/1995649.html


黒翼猫  2020/04/01


> Twitter アカウントが凍結されてる・・・?!


あれ?特に大丈夫だと思いますけど・・・。


IchiGeki  2020/04/01


初心者です。
すいません。
windows10proをwindowsXP proでつなげようとしていますが
『Connection Faled(0×10274)』で繋がりません。
どのようにすれば良いですか?
格闘してます。


高田  2020/04/01


あれ、ichigeki7 凍結されてませんか?


ところで2.57からWin2000として起動するとサービスが0×7024(2.59のエラー)吐いて、無限にダイアログ出し続けて死にます。
何故かOSバージョンXPに偽装すると問題ないのですが…
…..と書いたのですが、
XPに偽装すると、Terminal Service Open Failed で1分ほどして死にますね・ω・


黒翼猫  2020/04/01


> Connection Faled(0×10274)


サーバーまで一度も到達できていない際に出るエラーです。2台のPCは同じネットワーク(同じサブネット)でしょうか?もし異なるのであればNATを越えるためにルーターなどにポートフォワーディングなどの設定する必要があります。同じネットワークということでしたらサーバー側のファイアウォールやセキュリティソフトによるブロックなども考えられますのでお確かめ頂ければと思います。よろしくお願いいたします。


IchiGeki  2020/04/01


>ichigeki7 凍結されてませんか?


新しく「rdbrynhildr」にID変更してます。凍結されたのは自分じゃないですw


> 0×7024


指定したTCPポートが利用できない旨に出るエラーですので変更して試してもらえますかね?


> Terminal Service Open Failed


ターミナルサービスのサービスが止まっているのではないかと。Brynhildrはこれが止まってるとWindowsサービスとして動作できやせん。すいやせん。


IchiGeki  2020/04/01


2.56だと動くのでFWやポート変更は考えにくいかな
ターミナルサービスは2000Proにないのですが・ω・


黒翼猫  2020/04/02


> 2.56だと動く


なるほど。ちょっと調べてみますね。


> ターミナルサービスは2000Proにない


ターミナルサービスはNT3.51から確かあったかと。形態とか名前とか変わってきてるので。こっちもちょっと調べてみますね。


IchiGeki  2020/04/02


いえ、ターミナルサービスは2000Server にはあるんですが、2000Proにはサービスはありません・ω・
XPのHome場合はリモートデスクトップはありませんがリモートアシスタンスがあるので、全バージョンで標準装備になったのです


黒翼猫  2020/04/02


> 2000Proにはサービスはありません


おー、まじですかー。確かに試してるのはServerの方でした・・・。「WTSEnumerateProcesses」が使いたいんです。2000では使わなくても良かった気がしますけど。


IchiGeki  2020/04/02




... 不具合報告の際は、アプリのバージョンやOS等の動作環境の記載を御願い致します。

表記されている会社名・製品名・システム名などは、各社の商標、または登録商標です。
当サイトはAmazon.co.jpアソシエイトプログラムに参加しています。
© 2010 IchiGeki