Jump to content

Getting MSFS 2020 to run on W7 x64


sunryze

Recommended Posts

So out of the box, Microsoft Flight Simulator 2020 (the new one) does not support 7 or 8. Obviously, it came out past the EOL date of 7 and MSFT wants to forget about 8. But I really think it is possible to get working. Trying to run the app with steam just ends up in it closing, and running FlightSimulator.exe gives us this:

image.png.5a091b8bf6140dbd37252f9f9c79a58c.png

Alright, a missing function. This is something we would need to extend in the DLL, but I am not sure what would be a worthy replacement. Someone with knowledge like win32 would be helpful here, but I don't want to disrupt his time making the already awesome Vista extended kernel. I would assume that it may be easier to port 8 functions over first, but we aren't in a need of that.

The first step is to find if this function exists in 8, and see if we can use the same dll on 7 or port over its function. But this isn't our entire problem.

The main issue is that this isn't the only missing function. There are a lot of missing API-MS-WIN-* DLL files (might exist in 8) and as well as that, the missing functions using DependencyWalker tell us this:
ESENT.DLL -> JetStopServiceInstance2
IEFRAME.DLL -> Entry Points not bound, function #160, 141 and 159
API-MS-WIN-CORE-THREADPOOL-L1-1-0.DLL -> SetWaitableTimerEx
IMM32.DLL -> ImmDisableLegacyIME
NCRYPT.DLL -> NCryptKeyDerivation
MFPLAT.DLL -> MFRegisterLocalByteStreamHandler, MFCreateMFByteStreamOnStreamEx
UXTHEME.DLL -> GetThemeAnimationTransform, GetThemeAnimationProperty, GetThemeTimingFunction
DWMAPI.DLL -> DwmTetherContact, DwmRenderGesture
NDFAPI.DLL -> NdfCreateNetConnectionIncident
OLE32.DLL -> CoIncrementMTAUsage, RoGetAgileReference
MFPLAT.DLL -> MFCreateDXGIDeviceManager
API-MS-WIN-CRT-PRIVATE-L1-1-0.DLL -> __CxxFrameHandler4

Those are all the missing functions. There is a lot to do here, but who knows if it will work anyway because the game is DirectX12 now.

After looking through deeper, the last missing DLL seems to just be a number that is wrong. *FrameHandler4 does not exist in that DLL, but *FrameHandler3 and 2 exist. I am wondering if they give the same results when used. Some other DLLs like OLE32 tell us that the missing functions just don't have anything related at all.

Any ideas here?
 

Link to comment
Share on other sites

  • 2 months later...

  • 2 years later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...