Updated error codes for all Validator tools

By Stephen Kellett
12 May, 2017

We’ve just updated our documentation for all our Validator tools to include an up to date list of Exit return codes. You may find these useful if you’re running these tools from the command line.

These error codes apply to C++ Bug Validator, C++ Coverage Validator, C++ Memory Validator, C++ Performance Validator, C++ Thread Validator, .Net Coverage Validator, .Net Memory Validator, .Net Performance Validator and VM Validator.

0All ok
-1Unknown error. An unexpected error occurred starting the runtime
-2Application started ok. You should not see this code returned
-3Application failed to start. E.g. runtime not present, not an executable or injection dll not present
-4Target application is not an application
-5Don’t know what format the executable is, cannot process it
-6Not a 32 bit application
-7Not a 64 bit application
-8Using incorrect MSVCR(8|9).DLL that links to CoreDLL.dll (incorrect DLL is from WinCE)
-9Win16 app cannot start these because we can’t inject into them
-10Win32 app – not used
-11Win64 app – not used
-12.Net application
-13User bailed out because app not linked to MSVCRT dynamically
-14Not found in launch history
-15DLL to inject was not found
-16Startup directory does not exist
-17Symbol server directory does not exist
-18Could not build a command line
-19No runtime specified, cannot execute script (or Java) (obsolete)
-20Java arguments are OK – not an error (obsolete)
-21Java agentlib supplied that is not allowed because Java Bug Validator uses it (obsolete)
-22Java xrun supplied that is not allowed because Java Bug Validator uses it (obsolete)
-23Java cp supplied that is not allowed because Java Bug Validator uses it (obsolete)
-24Java classpath supplied that is not allowed because Java Bug Validator uses it (obsolete)
-25Firefox is already running, please close it (obsolete)
-26Lua runtime DLL version is not known (obsolete)
-27Not compatible software
-28InjectUsingCreateProcess, no DLL name supplied
-29InjectUsingCreateProcess, Unable to open PE File when inspecting DLL
-30InjectUsingCreateProcess, Invalid PE File when inspecting DLL
-31InjectUsingCreateProcess, No Kernel32 DLL
-32InjectUsingCreateProcess, NULL VirtualFree() from GetProcAddress
-33InjectUsingCreateProcess, NULL GetModuleHandleW() from GetModuleHandleW
-34InjectUsingCreateProcess, NULL LoadLibraryW() from LoadLibraryW
-35InjectUsingCreateProcess, NULL FreeLibrary() from FreeLibrary
-36InjectUsingCreateProcess, NULL VirtualProtect() from GetProcAddress
-37InjectUsingCreateProcess, NULL VirtualFree() from GetProcAddress
-38InjectUsingCreateProcess, unable to find DLL load address
-39InjectUsingCreateProcess, unable to write to remote process’s memory
-40InjectUsingCreateProcess, unable to read remote process’s memory
-41InjectUsingCreateProcess, unable to resume a thread
-42UPX compressed – cannot process such executables
-43Java class not found in CLASSPATH
-44Failed to launch the 32 bit svlGetProcAddressHelperUtil.exe
-45Uknown error with svlGetProcAddressHelperUtil.exe
-46Couldn’t load specified DLL into svlGetProcAddressHelperUtil.exe
-47Couldn’t find function in the DLL svlGetProcAddressHelperUtil.exe
-48Missing DLL argument svlGetProcAddressHelperUtil.exe
-49Missing function argument svlGetProcAddressHelperUtil.exe
-50Missing svlGetProcAddressHelperUtil.exe
-51Target process has a manifest that requires elevation
-52svlInjectIntoProcessHelper_x64.exe not found
-53svlInjectIntoProcessHelper_x64.exe failed to start
-54svlInjectIntoProcessHelper_x64.exe failed to return error code
-55getImageBase() worked ok
-56ReadFile() failed in getImageBase()
-57NULL pointer when trying to allocate memory
-58CreateFile() failed in getImageBase()
-59ReadProcessMemory() failed in getImageBase()
-60VirtualQueryEx() failed in getImageBase()
-61Bad /appName argument in svlInjectIntoProcessHelper_x64.exe
-62Bad /dllName argument in svlInjectIntoProcessHelper_x64.exe
-63Bad /procId argument in svlInjectIntoProcessHelper_x64.exe
-64Failed to OpenProcess in svlInjectIntoProcessHelper_x64.exe
-65A DLL that the .exe depends upon cannot be found
-66A stdin file was specified, but Validator could not open it
-67A stdout file was specified, but Validator could not open it
-68Failed to create the child output pipe
-69Failed to create a duplicate of the output write handle for the std error write handle. This is necessary in case the child application closes one of its std output handles
-70Failed to create the child input pipe
-71Failed to create a duplicate output read temporary file
-72Failed to create a duplicate input write temporary file
-73Using was trying to launch a service as an application that was linked to MV APIs. User cancelled when informed of this fact
-74Returned by Memory Validator if user performs a baseline comparison and detects leaks
-75Shutdown and restart the 32 bit version of this program, launching the target program, user should never see this error code
-76Shutdown and restart the 64 bit version of this program, launching the target program, user should never see this error code
-77NULL startup address
-78.Net Core application
-79Entry point calls .Net code not native code
-80VirtualAllocEx() call failed
-81InjectUsingCreateProcess, NULL GetLastError() from GetProcAddress()

Edited 2022/09/05 to add error codes -66 to -81.

Fully functional, free for 30 days