CreateProcess STATUS_DLL_NOT_FOUND - which dll?
I have a process which calls CreateProcess. It appears that CreateProcess
returns 0 indicating success. However, the HANDLE to the process then gets
immediately set, indicating the process has exited. When I call
GetExitCodeProcess, STATUS_DLL_NOT_FOUND is then returned.
I understand that a DLL is missing. I even know exactly which one.
However, what I don't understand is how to figure that out
programmatically.
I noticed that Windows will present a dialog saying that the process
failed to start because it couldn't find the specified DLL (screenshot:
http://www.mediafire.com/view/?kd9ddq0e2dlvlb9 ). In the dialog, Windows
specifies which DLL is missing. However, I find no way to get that
information myself programmatically.
If a process fails to start and would return STATUS_DLL_NOT_FOUND, how do
I programmatically retrieve the library name to which the target process
was linked which couldn't be found? That way I can automatically record in
an error report what DLL appears to be missing or corrupt in a given
installation.
No comments:
Post a Comment