SetThreadDesktop 함수(winuser.h)

호출 스레드에 지정된 데스크톱을 할당합니다. 데스크톱의 모든 후속 작업은 데스크톱에 부여된 액세스 권한을 사용합니다.

구문

BOOL SetThreadDesktop(
  [in] HDESK hDesktop
);

매개 변수

[in] hDesktop

호출 스레드에 할당할 바탕 화면에 대한 핸들입니다. 이 핸들은 CreateDesktop, GetThreadDesktop, OpenDesktop 또는 OpenInputDesktop 함수에서 반환됩니다 .

이 데스크톱은 프로세스의 현재 창 스테이션과 연결되어야 합니다.

반환 값

함수가 성공하면 반환 값이 0이 아닙니다.

함수가 실패하면 반환 값은 0입니다. 확장 오류 정보를 가져오려면 GetLastError를 호출합니다.

설명

호출 스레드에 현재 데스크톱에 창이나 후크가 있는 경우(hDesktop 매개 변수가 현재 데스크톱에 대한 핸들이 아닌 경우) SetThreadDesktop 함수가 실패합니다.

경고 대화형 데스크톱에서 창을 여는 모든 서비스에는 상당한 보안 위험이 있습니다. 데스크톱 창을 열면 애플리케이션이 서비스의 데스크톱 창에 악성 메시지를 보내고 기능 기능에 영향을 줄 수 있는 로그온한 사용자의 공격에 취약해집니다.
 

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
대상 플랫폼 Windows
헤더 winuser.h(Windows.h 포함)
라이브러리 User32.lib
DLL User32.dll
API 세트 ext-ms-win-ntuser-windowstation-l1-1-0(Windows 8 도입)

추가 정보

CreateDesktop

데스크톱

GetThreadDesktop

OpenDesktop

SetProcessWindowStation

창 스테이션 및 데스크톱 함수