leecher1337 / ntvdmx64

Run Microsoft Windows NTVDM (DOS) on 64bit Editions
784 stars 81 forks source link

Windows cannot update after ntvdmx64 installed #131

Closed Zxilly closed 3 years ago

Zxilly commented 3 years ago

As title described, I cannot update my Windows to 21H1 and got error 0x80070020. I use install.bat uninstall to remove ntvdmx64 and things work out. Is that possible to fix this issue?

leecher1337 commented 3 years ago

See #128 I may add these 2 batchfiles to installation package to just disable and enable loader so that users don't have to uninstall the whole package. The problem is due to an attempt of Windows update to replace conhost.exe which fails when loader is active. Currently there is no known way to overcome this issue. It can be reproduced, but as update installation is running during logon, usermode debugging is not easily possible at this stage, thus the reason on why conhost.exe gets blocked when loader is loaded is still unknown (after all, conhost also loads other .dll modules and it doesn't get blocked by that). If someone is able to debug it, that would be great. From what I undestrand so far, poqexec!PoqOperation_HardlinkFile somehow fails. conhost.exe is just a hardlink to the current conhost.exe in the WinSXS-Folder. On update, the hardlink needs to get changed, but this fails with an error, but no idea, why.

leecher1337 commented 3 years ago

No further feedback by the user, assuming that it can be considered fixed.

Zxilly commented 3 years ago

I cannot install new version ntvdmx64 after that commit and re-compile. I will try to collect log and later report.