I thought that CSIDL_COMMON_APPDATA\company\product
should be the place to put files that are common for all users of the application and that the application can modify, however, on Vista this is a read-only location, unless modified by the installer (as per MSDN - http://msdn.microsoft.com/en-us/library/ms995853.aspx), so... what's best? Modify the location's security settings to allow writing or use CSIDL_COMMON_DOCUMENTS\company\product
instead? Maybe there's a third option?
Also, is there an "official" Microsoft recommendation on this somewhere?
In Windows Explorer, select the file or folder that you want to assign ASP.NET permissions to select Properties from the context menu. The Properties dialog opens. 2. Click Security to open the Security tab.
Modify just the security on a specific sub-directory of the AppData directory (this is from the link you provided):
CSIDL_COMMON_APPDATA This folder should be used for application data that is not user specific. For example, an application may store a spell check dictionary, a database of clip-art or a log file in the CSIDL_COMMON_APPDATA folder. This information will not roam and is available to anyone using the computer. By default, this location is read-only for normal (non-admin, non-power) Users. If an application requires normal Users to have write access to an application specific subdirectory of CSIDL_COMMON_APPDATA, then the application must explicitly modify the security on that sub-directory during application setup. The modified security must be documented in the Vendor Questionnaire.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With