Best directory to store app data and settings on Windows8 / 8.1 / Windows10

I have an AIR app which under certain conditions fails to save data on the users PC. The current folder I am using is the AppData\Roaming folder however I am trying to find the reason why on certain PC’s the App doesn’t save into a particular folder inside AppData\Roaming.

Is that folder not writable by an App on Windows8 / 8.1 and above? Does it have any permissions associated with it. I have checked an one PC and even UAC was off but still the App couldn’t write to that directory.

Is there a folder on Windows 8 / 8.1 and above where I can save my applications data and settings for sure?

If you try saving to AppData\Local, does that work better?

:slight_smile:

Not tried it yet, but do you think the roaming folder has any issues? Will try the local folder though…

I only receive notices of these postings in a weekly summary and see that you asked your question almost a week ago, so probably you already have your answer. But, if not, I am actually a bit surprised to see kirupa’s recommendation,since his credentials are far superior to mine.

What I would say is that the way you have phrased the question suggests that you are using an absolute URL or Native Path with File to open a directory into which you wish to save state. The File API provides support for some special URL protocols which are – in my experience – guaranteed to give you access to the preferred location for such content, irrespective of OS or OS release: File.applicationStorageDirectory.

I don’t know why a user would set permissions on that sub-directory that would prevent creating of a new file there, or modifying an existing one, but, if they did, your application would get status telling you that and you could use a dialog to let such a paranoid person choose an alternative location. Using any sort of file:// url with an absolute path, or a Native Path string to the same effect, causes you to have to write protective code based on Windows versus Mac OS Sierra, so I think the opaque solution built into AIR is a better one.

1 Like