
서비스를 시동할 때 user32.dll 실패 메시지나 가용 메모리가 있을 때 메모리 초과 메시지를 받는 다면
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SessionManager\SubSystems\Window
에서
SharedSection=xxxx, yyyy를 찾는다. 여기서 xxxx는 상호동작하는 프로그램에의해 생성된 데스크탑 힙의 크기(단위 KB)이며, yyyy는 시스템 와이드 힙의 크기이다. yyyy 바로 뒤에 ",zzzz"를 추가한다. 여기서 zzzz는 서로 상호동작하지 않는 프로세스에의해 생성된 숨은 데스크탑 힙의 크기이다. 이 값을 512로 설정함으로서 종종 문제를 해결할 수 있다. zzz을 추가하면 이 문자열은
SharedSection=xxxx, yyyy, zzz처럼 보일 것이다.
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control
로 부터 RegistrySizeLimit를 제거하고
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SessionManager\Memory Management
의 PagePoolSize를 "0"으로 설정해야 할 것이다.
시스템을 다시 부팅할 필요가 있다.