-
VIsta 이상 버전에서 Windows Service 에 등록된 프로그램에서 다른 프로그램 띄우기IT/Windows 2011. 7. 4. 03:08
Windows Vista 이상 버전에서는 세션 관리정책으로 인해서 Windows 의 Service 에 등록된 프로그램이 직접 다른 프로그램을 띄우지 못하게 막았다. 보안상의 이유로 이렇게 한 듯 한데. 이로 인해서 서비스로 등록된 프로그램이 다른 프로그램을 띄우고자 할때 XP 에서 하던대로 CreateProcess 를 하게 되면 이 프로그램이 다른 세션에서 뜨는 문제가 생긴다.
이를 막기 위해서 아래와 같은 코드를 사용한다.
핵심은 CreateProcess 대신에 CreateProcessAsUser 를 사용하는 것이다.
'IT > Windows' 카테고리의 다른 글
비스타의 세션 0 고립화와 응용 프로그램 호환성 (0) 2011.08.15 시스템 권한으로 HKCU 레지스트리 값 읽기 (0) 2011.08.15 레지스트리를 조작하여 Application 을 Windows 방화벽(Firewall) 에 등록시키는 방법 (0) 2011.08.11 현재 Windows 의 사용자 계정 확인하기 (0) 2011.08.11 Windows 에서 Service 에 등록된 프로그램와 일반 시작 프로그램의 차이 (0) 2011.07.04