Article ID: 156484 - View products that this article applies to.
This article was previously published under Q156484
Cmd.exe, Perl.exe, or other console-mode applications may fail to initialize properly and terminate prematurely when launched by a service using the CreateProcess() or CreateProcessAsUser() APIs. The calling process has no way of knowing that the launched console-mode application has terminated prematurely.
In some instances, calling GetExitCode() against the failed process indicates the following exit code:
In multithreaded applications, the premature termination causes desktop heap leaks. Over time the desktop heap is exhausted, which results in User32.dll or Kernel32.dll initialization errors.
128L ERROR_WAIT_NO_CHILDREN - There are no child processes to wait for.
To resolve this problem, please see the following articles in the Microsoft Knowledge Base for more information:
TITLE : How to correct common User32.dll file errors
TITLE : Win32k.sys Causes STOP 0x0000001e and 0x0000000a On SMP