Ctrl + Alt + Del のエミュレート – プログラミング – Home

通知
すべてクリア

[解決済] Ctrl + Alt + Del のエミュレート


中級者X
 中級者X
(@中級者X)
ゲスト
結合: 23年前
投稿: 26
Topic starter  

「Ctrl + Alt + Del」をエミュレートできないかと考えています。
要は「Ctrl + Alt + Del」を押さず、何かボタンでも押したら
「Windows のセキュリティ」ダイアログを表示させたいという
ことです。

keybd_event(VK_CONTROL, 0, 0, 0); // Ctrl
keybd_event(VK_MENU, 0, 0, 0); // Alt
keybd_event(VK_DELETE, 0, 0, 0); // Del
keybd_event(VK_DELETE, 0, KEYEVENTF_KEYUP, 0);
keybd_event(VK_MENU, 0, KEYEVENTF_KEYUP, 0);
keybd_event(VK_CONTROL, 0, KEYEVENTF_KEYUP, 0);

のようにキーイベントを発行したのですができません。

どなたかご存知の方、ご教授願います。

環境はWin2000、VC++6.0です。


引用未解決
トピックタグ
けみ
 けみ
(@けみ)
ゲスト
結合: 23年前
投稿: 22
 

LockWorkStation();
というAPIでできましたが、WIN2000以降?のようです。
winuser.hには
#if(_WIN32_WINNT >= 0x0500)
って定義されていました。

また、他の方法では
PostMessage(HWND_BROADCAST, WM_HOTKEY, 0, MAKELONG(MOD_ALT | MOD_CONTROL,
VK_DELETE));

のように書くと良いらしいのですが、こちらは権限の設定がうまくできなくて
試せませんでした。「ファイル名を指定して実行」が出てきてしまいました。


返信引用
けみ
 けみ
(@けみ)
ゲスト
結合: 23年前
投稿: 22
 

あ、すいません。
LockWorkStation();
はちょっと画面が違いますね。コンピュータのロック画面です。


返信引用
うま
 うま
(@うま)
ゲスト
結合: 23年前
投稿: 3
 

ホットキーを使えばよいような気がします
キーワード「WM_HOTKEY」辺りで検索してみてください


返信引用
中級者X
 中級者X
(@中級者X)
ゲスト
結合: 23年前
投稿: 26
Topic starter  

確かに「ファイル名を指定して実行」がでますね...。
権限を変えるのって難しいんですよね...?


返信引用
けみ
 けみ
(@けみ)
ゲスト
結合: 23年前
投稿: 22
 

WinXP のリモート アシスタンスのような機能を持っている
VNCというツールがあってクライアント側からサーバー側に
CTRL+ALTL+DELを送信するという機能があります。

http://www.uk.research.att.com/vnc/
http://www.sra.co.jp/people/akira/vnc/ (VNCのページ(紹介・日本語))

ソースも公開されているので、それを参照してみたんですが
これのサーバー側の処理でPostMessage~、の前に何かやっています。

また、
http://www1.linkclub.or.jp/~y-yazaki/Know_How/Programer/N0000001.html
このページではプログラムをサービスにしデスクトップとの対話を
可能にしてデスクトップを”Winlogon”にスレッドを切りかえてから
メッセージを送信すると書いてありました。

???
私は挫折してしまいました。すいません。


返信引用
中級者X
 中級者X
(@中級者X)
ゲスト
結合: 23年前
投稿: 26
Topic starter  

いろいろとありがとうございます
解決とはいきませんでしたが、とりあえず解決済みにしたいと思います
何か分かりましたら、ご報告します


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました