| Previous | Next |
| ERROR_IS_JOINED | ERROR_NOT_JOINED |
ERROR_IS_SUBSTED
What ERROR_IS_SUBSTED means
ERROR_IS_SUBSTED is a Win32 system result whose documented message is: “An attempt was made to use a JOIN or SUBST command on a drive that has already been substituted.” In practical troubleshooting, it belongs to legacy SUBST drive-letter mappings where the selected drive letter already redirects to a directory. For ERROR_IS_SUBSTED, the numeric result identifies the failed contract, while the operation and target object explain why this particular result appeared.
Typical causes
- a logon script executes the same SUBST command repeatedly
- another program has claimed the intended drive letter
- stale mapping state remains in the session
How to investigate ERROR_IS_SUBSTED
- run a mapping inventory in the affected interactive session
- compare the existing destination with the requested destination
- check scheduled tasks and logon scripts for competing SUBST commands
When investigating ERROR_IS_SUBSTED, start with the first failing call rather than a later cleanup error. Preserve the raw ERROR_IS_SUBSTED result before any wrapper converts it. Record whether ERROR_IS_SUBSTED is reproducible in a clean process, a new user session, or after the relevant object is recreated.
Developer guidance
Treat an identical mapping as an idempotent result and fail visibly on a conflicting destination. Do not overwrite a drive letter owned by another component. For ERROR_IS_SUBSTED, logs should include the operation name, canonical target, process architecture, operating-system build, and the state that was validated immediately before the call. For ERROR_IS_SUBSTED, avoid blind retries while the same precondition remains unchanged.
Administrator and support guidance
Choose a dedicated drive letter and remove duplicate mapping scripts. Remember that SUBST state can be session-specific and may differ between administrator and service contexts. Before restarting after ERROR_IS_SUBSTED, collect evidence because a restart may clear the state responsible for this result. When a ERROR_IS_SUBSTED workaround succeeds, record exactly which process, mapping, media, driver, or configuration value changed.
Example incident
Two developer tools both attempt to assign drive S: with SUBST, and the second tool receives ERROR_IS_SUBSTED. A useful ERROR_IS_SUBSTED incident timeline shows the successful setup steps, the first operation returning ERROR_IS_SUBSTED, and any secondary errors produced during its rollback.
How it differs from related results
ERROR_IS_SUBSTED means the drive is already a SUBST mapping, not that a path merely lies beneath a substituted drive. For ERROR_IS_SUBSTED, that distinction determines whether the remedy belongs in application input, resource release, mapping topology, driver compatibility, or underlying storage.
Evidence worth collecting
For this result, capture evidence around the condition “a logon script executes the same SUBST command repeatedly.” The ERROR_IS_SUBSTED evidence package should include the exact API or command, all non-secret input fields, normalized paths or device names, object ownership, and a timestamp correlatable with Windows Event Log and application tracing. The first concrete ERROR_IS_SUBSTED check should be to run a mapping inventory in the affected interactive session.
Recovery and verification
Recovery from ERROR_IS_SUBSTED is complete only when the original operation succeeds under the same relevant conditions. After fixing ERROR_IS_SUBSTED, repeat the action and verify that no stale mapping or handle remains. Run the operation a second time to confirm that the setup and cleanup associated with ERROR_IS_SUBSTED are idempotent. If ERROR_IS_SUBSTED disappears only after reboot, continue investigating the owner or leaked state rather than treating reboot as the permanent correction.
When to escalate
Escalate ERROR_IS_SUBSTED with a minimal reproduction, the exact ERROR_IS_SUBSTED value, application and component versions, target path or device class, and the collected state before and after this failure. For a legacy ERROR_IS_SUBSTED case, also state whether the executable is 16-bit, DOS-derived, virtualized, redirected, or running under a compatibility subsystem.
References
Looking for a different code? Search another status or error code.