Ah, I forgot: the magic voodoo wizardry of „higher level languages“ like C# which „manage“ the underlying gory parts, namely having to mess around with the „raw C API“ ![]()
Now I fully understand, yes, that makes sense now!
In the C/C++ world where I „live“ the symbols (= function names, global variables) are simply named e.g.
SimConnect_Open()
etc. (respectively the „symbol name“ that the C/C++ compiler generates out of it), so no namespace whatsoever to distinguish between the FS2020 and P3D implementation.
So one needs to take care of this „programatically“ in the C/C++ world and carefully link the corresponding SimConnect.dll to the respective plugin code (library).
Oh and what I meant with „in parallel“ was „one day you play A, and the next day you play B“ - if the user had to „manually“ exchange the SimConnect.dll of the desired „flight simulator of the day“ then this would be annoying.
But again, this is not a problem in the „managed world“ of C# and friends ![]()