Skip to content

Windows installer exit codes

Jonathan Martin edited this page Sep 28, 2026 · 1 revision

Windscribe Windows installer exit codes

The initial installer (bootstrap) is the process callers observe. Its exit code is a Win32 error code: either one it produces itself, or the inner installer's code passed through unchanged.

Specific install-block failures (helper start, extract, BFE, custom folder, and so on) are recorded in %ProgramData%\Windscribe\installer.log and in the inner installer's error dialog as names such as EXTRACT_FAILED. Those details are not reflected in the process exit code; they collapse to ERROR_INSTALL_FAILURE.

Intentional codes

Name Value Cause
ERROR_SUCCESS 0 Install completed, or the user ran -help.
ERROR_INVALID_DRIVE 15 -dir path is not on the system drive.
ERROR_GEN_FAILURE 31 Bootstrap could not generate a cryptographically random suffix for its staging directory.
ERROR_INSUFFICIENT_BUFFER 122 GetWindowsDirectoryW reported a path longer than MAX_PATH.
ERROR_BAD_ARGUMENTS 160 Invalid command line: wrong argument count, or -dir / -username / -password specified without a value or as an incomplete pair.
ERROR_ALREADY_EXISTS 183 Bootstrap staging directory already exists. Unexpected; may indicate a path leak or tampering.
ERROR_ELEVATION_REQUIRED 740 Process is not running as administrator.
ERROR_OLD_WIN_VERSION 1150 OS is older than Windows 10.
ERROR_CANCELLED 1223 User cancelled: declined the OS-compatibility warning, quit the inner installer UI, or the install run was cancelled.
ERROR_INSTALL_FAILURE 1603 Inner install failed (see installer.log for the specific INSTALLER_ERROR), or the bootstrap failed to extract 7zr.exe or windscribeinstaller.7z.
ERROR_INSTALL_ALREADY_RUNNING 1618 Another Windscribe installer instance already holds the single-instance mutex.
ERROR_INSTALL_PLATFORM_UNSUPPORTED 1633 x64 installer launched on Windows on ARM. Download the ARM64 build.
ERROR_BAD_USERNAME 2202 -username was an email address.

Passthrough Win32 errors

These paths return the failing API's GetLastError() (or equivalent) rather than a fixed code. The numeric value is still a Win32 error.

Source Typical codes Cause
Token query (OpenProcessToken / GetTokenInformation) ERROR_ACCESS_DENIED (5), ERROR_NO_TOKEN (1008), and similar Bootstrap or inner installer could not determine whether the process is elevated.
Single-instance mutex ERROR_ACCESS_DENIED (5) and similar Security descriptor or CreateMutexW failed.
GetWindowsDirectoryW API GetLastError() Could not locate the Windows directory.
Staging directory create API error from CreateDirectory / ACL setup Could not create the Administrators+SYSTEM-only staging folder under C:\Windows\Temp.
CreateProcessW of the inner installer ERROR_FILE_NOT_FOUND (2), ERROR_ACCESS_DENIED (5), ERROR_BAD_EXE_FORMAT (193), and similar Bootstrap extracted the inner installer but Windows refused to launch it (missing file, AV/Smart App Control, and so on).

Abnormal termination

Pattern Cause
Exit code > 0xFFFF (for example 0xC0000005) Inner installer crashed or aborted. The value is an NTSTATUS / exception code, not a mapped install error. The bootstrap logs it and, unless -silent, shows a crash dialog.

Clone this wiki locally