When does this error show up?
You run something like subst X: C:\Users\You\ProjectA, then later try subst Y: X:\SomeSubfolder. Windows kicks back with ERROR_SUBST_TO_SUBST (0x0000008B) — “The system tried to substitute a drive to a directory on a substituted drive.”
This also happens if you already have subst Z: D:\Work and then attempt subst D: Z:\Temp. The moment you point a new drive letter to a path that lives on an already-substituted drive, Windows rejects it.
Why does this happen?
The subst command maps a drive letter to a local folder path. Under the hood, Windows creates a symbolic link-like object in the object manager namespace. The key rule: you can't chain or nest these mappings. Windows won't let you create a subst that resolves through another subst — it sees a circular dependency risk and a namespace ambiguity.
What's actually happening here is that the target path X:\SomeSubfolder isn't a real physical path; it's a virtual path that only exists because X: is already substituted. So when you try to substitute Y: to that virtual path, Windows checks if the target is itself a subst drive, and it is — so it blocks the operation.
The fix: unmap and remap in the correct order
Skip any workarounds with junction points or symbolic links for this specific error — they won't solve the nesting constraint. The real fix is to restructure your substitutes so no drive points through another substitute.
- List all current substitutes
Open Command Prompt as Admin (yes, you need admin rights forsubstchanges on some systems). Run:
This shows every drive you've mapped. Write them down.subst - Remove the conflicting substitutes
Suppose you hadX: -> C:\Users\You\ProjectAand then triedY: -> X:\Subfolder. Remove both:
subst X: /d subst Y: /d - Remap the parent, then the child using the real physical path
First, map the drive that holds the folder:
Now — don't usesubst X: C:\Users\You\ProjectAX:as part of the target forY:. Instead, pointY:directly to the physical path:
Nowsubst Y: C:\Users\You\ProjectA\SubfolderY:resolves to the same physical folder without passing throughX:. Windows is happy. - Verify it worked
Runsubstagain. You'll see both drives listed. Test accessing each.
If it still fails
Three things to check:
- Are you trying to substitute a drive letter that's already a network drive or a removable disk? You can't use
subston a drive letter assigned to a network share or an active USB drive. Remove the network mapping first (net use X: /delete). - Did you accidentally leave leftover subst drives? Run
substand remove any that mention the same drive letter you're trying to use. - Is the target folder on an NTFS volume?
substworks on NTFS and FAT32, but if you're on an exFAT external drive, it might silently fail — check withfsutil fsinfo volumeinfo C:\.
If none of that works, restart Explorer or reboot. The object manager sometimes holds stale references after failed subst attempts.