1 /* $Id: desktop.c,v 1.1 2001/06/12 17:50:27 chorns Exp $
3 * COPYRIGHT: See COPYING in the top level directory
4 * PROJECT: ReactOS user32.dll
5 * FILE: lib/user32/misc/desktop.c
7 * PROGRAMMER: Casper S. Hornstrup (chorns@users.sourceforge.net)
9 * 06-06-2001 CSH Created
21 return NtUserCloseDesktop(hDesktop
);
31 ACCESS_MASK dwDesiredAccess
,
32 LPSECURITY_ATTRIBUTES lpsa
)
34 ANSI_STRING DesktopNameA
;
35 UNICODE_STRING DesktopNameU
;
38 if (lpszDesktop
!= NULL
) {
39 RtlInitAnsiString(&DesktopNameA
, (LPSTR
)lpszDesktop
);
40 RtlAnsiStringToUnicodeString(&DesktopNameU
, &DesktopNameA
, TRUE
);
42 RtlInitUnicodeString(&DesktopNameU
, NULL
);
45 hDesktop
= CreateDesktopW(
53 RtlFreeUnicodeString(&DesktopNameU
);
65 ACCESS_MASK dwDesiredAccess
,
66 LPSECURITY_ATTRIBUTES lpsa
)
68 UNICODE_STRING DesktopName
;
72 hWinSta
= NtUserGetProcessWindowStation();
74 RtlInitUnicodeString(&DesktopName
, lpszDesktop
);
76 hDesktop
= NtUserCreateDesktop(
100 DESKTOPENUMPROC lpEnumFunc
,
110 DESKTOPENUMPROC lpEnumFunc
,
121 return NtUserGetThreadDesktop(dwThreadId
, 0);
130 ACCESS_MASK dwDesiredAccess
)
132 ANSI_STRING DesktopNameA
;
133 UNICODE_STRING DesktopNameU
;
136 if (lpszDesktop
!= NULL
) {
137 RtlInitAnsiString(&DesktopNameA
, lpszDesktop
);
138 RtlAnsiStringToUnicodeString(&DesktopNameU
, &DesktopNameA
, TRUE
);
140 RtlInitUnicodeString(&DesktopNameU
, NULL
);
143 hDesktop
= OpenDesktopW(
149 RtlFreeUnicodeString(&DesktopNameU
);
160 ACCESS_MASK dwDesiredAccess
)
162 UNICODE_STRING DesktopName
;
164 RtlInitUnicodeString(&DesktopName
, lpszDesktop
);
166 return NtUserOpenDesktop(
177 ACCESS_MASK dwDesiredAccess
)
179 return NtUserOpenInputDesktop(
190 return NtUserPaintDesktop(hdc
);
198 return NtUserSetThreadDesktop(hDesktop
);
206 return NtUserSwitchDesktop(hDesktop
);