2020+2024 compatible Microsoft.FlightSimulator.SimConnect.dll?

Hi,

I’m currently in the process of updating my .NET 8 application to fully support MSFS2024. Unfortunately, I’m (quite severely) affected by on of the only breaking change in the new SDK.

Since SIMCONNECT_DATA_FACILITY_AIRPORT has been updated to support longer idents, many function that I rely on will only work for one sim.

Specifically, I’m using SimConnect_SubscribeToFacilities_EX1 to have a list of airports in my reality bubble.

When using the MSFS2024 SDK with MSFS2020, I don’t get any useful results, as the ident is not the expected length.
Same goes the other way around.

Is there any way to get this working without too much hassle? The only solution I can think of is dynamically loading the desired DLL. Which is probably possible, but would require a complete refactoring of my simconnect code and I would lose all compile time checks.
Otherwise I’d need to compile two (basically identical) versions of my tool, just with different DLLs.

Thanks for your help :slight_smile:

Best regards
Axel

Oof, I hate to say it but in this instance you are probably correct. You’d need to compile against both SDK versions or mess around with dynamically loading assemblies as far as I see it in this case.

Ok, yesterday I published an updated version of my tool which supports both and everything seems to be running fine.

It’s definitely not an ideal solution, but before any SimConnect function is called, I’m checking if FlightSimulator.exeor FlightSimulator2024.exeis running.
Then I can copy the correct version of the SimConnect.dll and Microsoft.Flightsimulator.SimConnect.dll into the application folder.

Since the .dlls are lazy-loaded only when first calling a Simconnect function, this solution works just fine.

Hope it helps in case anyone has the same issue :slight_smile:

1 Like