| Previous | Next |
| ERROR_IS_JOIN_TARGET | ERROR_IS_SUBSTED |
ERROR_IS_JOINED
What ERROR_IS_JOINED means
ERROR_IS_JOINED 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 joined.” In practical troubleshooting, it belongs to legacy drive mapping in which the requested drive is already joined into another directory location. For ERROR_IS_JOINED, the numeric result identifies the failed contract, while the operation and target object explain why this particular result appeared.
Typical causes
- the same JOIN command runs twice
- cleanup failed during a previous session
- multiple tools assume ownership of the mapping state
How to investigate ERROR_IS_JOINED
- list active mappings and compare source and destination paths
- identify whether the existing JOIN is equivalent or conflicting
- verify commands execute under the same user/session namespace
When investigating ERROR_IS_JOINED, start with the first failing call rather than a later cleanup error. Preserve the raw ERROR_IS_JOINED result before any wrapper converts it. Record whether ERROR_IS_JOINED is reproducible in a clean process, a new user session, or after the relevant object is recreated.
Developer guidance
Query state before mutation and record ownership of mappings created by the application. Remove only mappings the application can prove it owns. For ERROR_IS_JOINED, 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_JOINED, avoid blind retries while the same precondition remains unchanged.
Administrator and support guidance
Eliminate duplicate logon scripts and document the intended drive topology. Prefer modern volume mount points for maintained systems. Before restarting after ERROR_IS_JOINED, collect evidence because a restart may clear the state responsible for this result. When a ERROR_IS_JOINED workaround succeeds, record exactly which process, mapping, media, driver, or configuration value changed.
Example incident
A legacy application setup reruns after a partial install and attempts to JOIN the same drive again, producing ERROR_IS_JOINED. A useful ERROR_IS_JOINED incident timeline shows the successful setup steps, the first operation returning ERROR_IS_JOINED, and any secondary errors produced during its rollback.
How it differs from related results
ERROR_IS_JOINED describes the source drive already being joined; ERROR_IS_JOIN_TARGET describes a drive containing a directory that serves as the target. For ERROR_IS_JOINED, 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 “the same JOIN command runs twice.” The ERROR_IS_JOINED 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_JOINED check should be to list active mappings and compare source and destination paths.
Recovery and verification
Recovery from ERROR_IS_JOINED is complete only when the original operation succeeds under the same relevant conditions. After fixing ERROR_IS_JOINED, 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_JOINED are idempotent. If ERROR_IS_JOINED 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_JOINED with a minimal reproduction, the exact ERROR_IS_JOINED value, application and component versions, target path or device class, and the collected state before and after this failure. For a legacy ERROR_IS_JOINED 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.
