title: Users/Public not writeable in windows 7: where do I put user data?
body: <p>I've started to become a Good Citizen, as per this question here:</p>
  
  <p><a href="https://stackoverflow.com/questions/1066782/domain-compatibility-where-should-shared-data-be-written">Domain compatibility: where should shared data be written?</a></p>
  
  <p>My user information is now written to the environment variable:</p>
  
  <pre><code>Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData)
  </code></pre>
  
  <p>and then appending a directory there.  If the directory does not exist, then the program automatically creates it, and then all cross-user information (log files, captured data, setup options, etc) are all stored in that file.  My understanding of that file is that it should be entirely user writable, regardless of the setup of the machine.</p>
  
  <p>On windows XP when attached to a domain, there's no problem; this file is detected and written to properly.  On windows 7, the program doesn't work.  The user's directory is now C:\ProgramData\MyFolder, and that folder is created as read only (genius! Why not make it just read only, after all, no one wants to write to the CommonApplicationData location!).</p>
  
  <p>What directory should I be using?  That 'special folder' is the one dedicated to the task that I need, but it appears that that folder isn't user writeable.  </p>
  
  <p>Edit in response to the first response:
  I'm using a WiX installer, and am completely fine with adding whatever file to the installer there.  I'm not sure how to go about doing that, so please answer with the WiX installer magic words.</p>