When an appx package is installed under Windows, it automatically creates an app data store with three directories: one for local files, one for roaming files, and one for temporary files. At least, this is what
says. So, the programmer doesn't need to create a special folder for the user's files, as such a folder is already there.
The problem is how to address this folder in order to put there certain files during the installation. Deployment Manager where you specify all your files has "Remote path" parameter. It would be very convenient to be able to put there a constant like 'data' or 'appdata'. But I couldn't find any information about this. I only came across constants like 'res', 'assets', 'classes', 'library' which all are related to mobile platforms, not Windows.
If this is not an option, we only can arrange that the app moves some files from the installation folder to the app data store during the first run. To do that, the app will need to know the full address of the app data store (namely, the folder for local files). The same page contains some code examples but they are written in C# I'm not familiar with. I will really appreciate if somebody tells me how to do it in Delphi.
That's true, RAD Studio supports APPX format deployment via Desktop Bridge. But I've been trying for more than a month now to deploy an appx package and submit it to Microsoft Store without any success! My problem seems to be very simple, I only need
Thank you, Marcin! Now I know how to submit my app to Microsoft Store. But the bad news is that it can't pass their test.I tried it 3 times and received 3 failure reports.
The problem is that my app needs to keep some files in a default data folder like <user>\AppData\Roaming\MyApp, so that the users can easily access them. Deployment Manager in RAD Studio has "Remote path" parameter, but I couldn't find out how to use it to specify <user>\AppData. There are constants like res, assets, classes, library - but they all seem to relate to mobile platforms, not Windows.
So I used a workaround: during its first run, my app creates a new folder and copies there some files from the installation folder. It works fine on my computer, but fails when they test it in Microsoft Store. They don't explain why, just send me screenshots with messages like "Access denied" or "The app tries to create a file under WindowsApps folder". I suspect my app lacks certain rights or priorities which are supposed to be specified in the manifest file.
Any idea how to deal with it?
I pack my Windows application in appx file using Deployment Manager. When I try to upload it to Microsoft Store, it fails with the following message:
"You don't have permissions to specify the following namespaces in the appx manifest file of the package MyApp.appx: restricted namespace: schemas.microsoft.com/appx/manifest/foun...strictedcapabilities "
I try to edit the automatically generated file AppxManifest.xml (removing the "Capabilities" section from it, or completely replacing its contents with a standard pattern from RAD Studio help), change the manifest file name and specify the manifest setting as "Custom". Still, the result is the same: Microsoft Store doesn't like the line about "restricted capabilities", though now this line isn't supposed to be there at all.
It really looks like an appx file always contains a standard, automatically generated manifest, even when I try to specify it in my own way.