원격 데스크톱 서비스 관리
원격 데스크톱 서비스 API를 사용하면 RD 세션 호스트(원격 데스크톱 세션 호스트) 서버, 클라이언트 세션 및 프로세스를 열거하고 관리할 수 있습니다.
도메인에 있는 모든 RD 세션 호스트 서버의 이름을 검색하려면 NetServerEnum 함수를 호출하여 SV_TYPE_TERMINALSERVER 유형의 서버를 열거합니다. 특정 RD 세션 호스트 서버에 대한 핸들을 열려면 WTSOpenServer 함수에 대한 호출에서 서버 이름을 전달합니다. 핸들 사용을 마쳤으면 WTSCloseServer 함수를 호출하여 해제합니다.
WTSOpenServer에서 반환된 핸들을 사용하여 서버에서 다음 작업을 수행할 수 있습니다.
함수 | 작업 |
---|---|
WTSDisconnectSession | 지정된 세션에서 클라이언트의 연결을 끊습니다. 세션이 활성 상태로 유지되고 사용자가 다시 로그온하여 동일한 세션에 연결할 수 있습니다. |
WTSEnumerateSessions | 지정된 RD 세션 호스트 서버의 세션 목록을 반환합니다. |
WTSEnumerateProcesses | 지정된 RD 세션 호스트 서버의 프로세스 목록을 반환합니다. |
WTSLogoffSession | 지정된 세션을 로그오프합니다. |
WTSQuerySessionInformation | 지정된 RD 세션 호스트 서버의 지정된 세션에 대한 정보를 반환합니다. |
WTSSendMessage | 지정된 세션의 클라이언트 표시에 메시지 상자를 표시합니다. |
WTSShutdownSystem | 지정된 RD 세션 호스트 서버를 종료하고 필요에 따라 다시 시작합니다. |
WTSTerminateProcess | 지정된 RD 세션 호스트 서버에서 지정된 프로세스를 종료합니다. |
WTSVirtualChannelOpen | 지정된 가상 채널의 서버 끝에 대한 핸들을 엽니다. 가상 채널에 대한 자세한 내용은 원격 데스크톱 서비스 가상 채널 사용을 참조하세요. |
WTSWaitSystemEvent | 클라이언트 세션 만들기 또는 RD 세션 호스트 서버에 로그온하는 사용자와 같은 이벤트를 기다립니다. |
이러한 함수 중 일부는 호출자에게 정보를 반환하기 위해 버퍼를 할당합니다. 버퍼 사용을 마쳤으면 WTSFreeMemory 함수를 호출하여 버퍼를 해제합니다.