Package installer can't find community folder

I’m trying to build a package for the store. When using the PackageInstaller example in the SDK it isn’t able to find the community folder.

My community folder is correctly set in UserCfg.opt : “D:\msfsData”

the log from the installer built from the sdk example returns : 'E:[MSFS_STORE_PACKAGES_COMMUNITY]'

Problem 2:

the packageInstaller sample has:

    <Feature Id="Store" Title="Install to the MSFS (Store) Community folder" Level="0" AllowAdvertise="no">
      <Condition Level="1"><![CDATA[MSFS_STORE_PACKAGES_COMMUNITY]]></Condition>
      <ComponentGroupRef Id="StorePackageFilesComponentGroup" />

Compiled as is the installer doesn’t display the store and steam options. Changing the level=0 to level=1 fix the problem but I’m not sure if this is correct to do so.

Hello @JulK ,

Just being curious about the issue. Does the session variable [MSFS_STORE_PACKAGES_COMMUNITY] set correctly, but not being correctly retrieved at runtime (i.e., you checked on the log that the variable was correctly set, but not correctly retrieved when requested)? Or, is it failing to capture the data from that file? This is because (especially after feedback from users) I had a very rare issue with the MS Store version of MSFS, where Windows Installer failed to capture that information, but on the Steam version that did not happen, which led me to rethink the installation process of my product for non-Marketplace users of my EMB-110 product, and not use Windows Installer for this matter.


Kind regards,

Carlos Daniel Gonzalez Gomez
CEO, Founder & Lead Developer
NextGen Simulations

I’m new to this so I don’t want to mislead you.

The log I talk about comes from runing the installer from the command line with this (found on the wixToolset website):

msiexec /i MyApplication.msi /l*v MyLogFile.txt

with the default example not modified the log shows ‘E:[MSFS_STORE_PACKAGES_COMMUNITY]’ as the install path

I modified FindCommunityFolder() in CustomAction.cpp ( instead of returning the community_folder variable I hard coded the path to my community folder ) and then the installer worked just fine and the package was installed at the correct location annd the log shows the correct path.

So the variables are never set correctly by the dll the installer retrieves the value just fine. Its the dll functions that returns rubbish.

Another thing occuring to me.

Are these installer meant to be run from msfs or with msfs running ? And me running it from my desktop the reason the community folder path isn’t found ?

No problem. I can understand what you described here.
Hard-coding to a custom path works indeed, because Windows Installer should find the path as is, but when letting it find the correct path from the MSFS appdata UserCfg.opt file, this is something that I am not sure why such failure occurs only on the MS Store version. This makes me think that it is an issue with the folders permissions for Store apps on Windows, because this does not happen with the Steam version of the sim.

Kind regards,

Carlos Daniel Gonzalez Gomez
CEO, Founder & Lead Developer
NextGen Simulations

Ok so Its definitely a permission issue. Since the windows store encrypts the game data the dll can find the file but can’t read it.

I tried everything i could think of, without success.

Tried to make the install make a copy of the file somewhere else before reading it but event that will fail.

i tried with the msi copyFile element, xcopy, robocopy, even using std::fileystem. None of them willl work.

when I do all this outside of the msi it works just fine, but even though the msi run as admin with the same user Id as me it won’t work.

I’m out of ideas now.