[solved!] I can't get unity to start - Missing redistributable DLL files

Hey all, I have been looking at a solution for this for a couple of days now. Basically when I try to launch unity 2022.3…22f1, it fails to launch. This is if launched from the hub, or directly from the folder it lives in. following the information from another post. I installed the windows debugging tools and ran unity in it and get the following error teh VS debugger

16bc:5734 @ 00707703 - LdrpResolveDllName - INFO: Original status: 0xc0000034
16bc:5734 @ 00707703 - LdrpResolveDllName - RETURN: Status: 0xc0000135
16bc:5734 @ 00707703 - LdrpResolveDllName - ENTER: DLL name: C:\Users\clini\.dotnet\tools\MSVCR100.dll
16bc:54d0 @ 00707703 - LdrpProcessWork - ERROR: Unable to load DLL: "MSWSOCK.DLL", Parent Module: "C:\WINDOWS\SYSTEM32\WSOCK32.dll", Status: 0xc000007b
16bc:5734 @ 00707703 - LdrpResolveDllName - INFO: Original status: 0xc000003a
16bc:5734 @ 00707703 - LdrpResolveDllName - RETURN: Status: 0xc0000135
16bc:5734 @ 00707703 - LdrpSearchPath - RETURN: Status: 0xc0000135
16bc:5734 @ 00707703 - LdrpProcessWork - ERROR: Unable to load DLL: "MSVCR100.dll", Parent Module: "C:\WINDOWS\SYSTEM32\MSVCP100.dll", Status: 0xc000007b
16bc:0bb8 @ 00707703 - LdrpInitializeProcess - ERROR: Walking the import tables of the executable and its static imports failed with status 0xc000007b
16bc:0bb8 @ 00707703 - _LdrpInitialize - ERROR: Process initialization failed with status 0xc000007b
16bc:0bb8 @ 00707703 - LdrpInitializationFailure - ERROR: Process initialization failed with status 0xc000007b
The thread 3000 has exited with code 3221225595 (0xc000007b).
The thread 22324 has exited with code 3221225595 (0xc000007b).
The thread 21712 has exited with code 3221225595 (0xc000007b).
The program '[5820] Unity.exe' has exited with code 3221225595 (0xc000007b).

I tried reinstalling every Redistributable from 2010 to present in both 32 and 64 bit formats. The files are now present in system32 as far as I can tell, but it is still falling over with the same error. Can someone please help?

Failing to load a DLL could also be antivirus blocking access.

There’s also a possibility that these DLLs are broken and need to be replaced. Windows repair installation might fix this but I’d first check online if you can find a way to verify specific files have not been tampered with. No need to go through that process if the files match what is expected.

I’d also run a virus scan over them just for ease of mind.

Installing MSVC files may not fix the issue if they don’t replace these files in these exact locations. They are called “distributable” for a reason. Some apps actually ship with them, install them to your system in a specific location and only load their specific versions of these DLLs to avoid any “shared DLL updates” to break their app and receive unnecessary support inquiries.

I fixed it. Basically i uninstalled all of the restributables and rebooted. Then I installed the 2013 version, then the 2015-2024 and rebooted again. Initially i tried to launch the version of unity I wanted to run from the desktop, but that didn’t work, but now instead of a cannot start error, it actually told me I was missing the dll. So I uninstalled unity and reinstalled it, and now it has launched.

Before this, I did try removing those dll files from C:/windows/system32 and repairing various redistributables. It looks like whatever was wrong required them reinstalled instead.

Thank you @CodeSmile for the help as it made me reconsider things.