为什么OpenDesktop总是返回0 ???
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'窗口?