为什么OpenDesktop总是返回0 ???

mscrack 2004-05-03 10:04:30
procedure TForm1.Button1Click(Sender: TObject);
var
hDeskPrev,hStaPrev:HWINSTA;
hDesktop,hSta:HDESK;
begin
hStaPrev := GetProcessWindowStation();
hDeskPrev := GetThreadDesktop( GetCurrentThreadId() );
hSta := OpenWindowStation( 'Winsta0', false, MAXIMUM_ALLOWED );
SetProcessWindowStation( hSta );
hDesktop := OpenDesktop( 'Winlogon', 0 , false, MAXIMUM_ALLOWED );
SetThreadDesktop( hDesktop );

PostMessage( HWND_BROADCAST, WM_HOTKEY, 0, MAKELONG( MOD_CONTROL or MOD_ALT, VK_DELETE ) );

SetThreadDesktop( hDeskPrev );
SetProcessWindowStation( hStaPrev );
CloseDesktop( hDesktop );
CloseWindowStation( hSta );
end;

广播ctrl+alt+delete键,失败了. 为什么OpenDekstop总返回0 ?
win2000/xp下禁用ctrl+al+delete键,该怎么做才能找到'SAS WINDOW'窗口?
...全文
260 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
visual_cjiajia 2004-05-04
  • 打赏
  • 举报
回复
中国程序员 烂!偶门用的 编译器 都是 老外写的 》》》倒中国人《易语言》作者也不懂是怎么做他那个编译器,算他钻牛脚尖!
constantine 2004-05-03
  • 打赏
  • 举报
回复
win2000/xp下禁用ctrl+al+delete键,有办法?????
mscrack 2004-05-03
  • 打赏
  • 举报
回复
http://irazin.ru/Samples/SASHook.htm
http://irazin.ru/Downloads/Progs/Injector.zip
http://irazin.ru/Downloads/Samples/SASHook.zip

说句不好听的话, 人家老外写的比CSDN那篇上面的好很多. CSDN上的摘抄了几百遍,在找 SAS WINDOW的时候,还是用"...我写了个系统服务,找到WINLOGON上有SAS WINDOW窗口..."来打发读者. 如果想知道,可以看看这个例子,但是OpenDesktop却还是返回0,不知道为什么! 盼解中...

1,183

社区成员

发帖
与我相关
我的任务
社区描述
Delphi Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧