We have a part of our program which can save a diagnostic file for the user to email to us so we can help them with problems. We have the option of saving it to the desktop, and it seems to be the prevailing idea at the time. However, I have these two questions:
- Is there any instance where we WON’T be able to save to the desktop? I was just having problems with Win7, then I realized I was not doing it right, and now I am able to save them fine. But, are there any instances (for example, a locked-down system at work) where those permissions may be denied? I know even at my school, where everything was locked down, we could create files on the desktop.
- Is it OK per Design Guidelines etc. to save to the desktop? I mean, we’re not saving regularly, it’s just for diagnostic purposes. Is there a really, really important reason why NOT to do this?
Thanks a lot.
Is the only purpose of the diagnostics file so that they can email it to you? If that’s the case, you might be able to try saving to a temporary file (which AFAIK will always work), and programmatically launching their email client and attaching that file (although it’s some ugly code to do that).
Or you could have an upload form on your website, and programmatically upload the file so that the user doesn’t even have to launch their email client.
The issue with both of these approaches is that it requires the user to have internet access to get you the file, so you would probably still need to let them save the diagnostics file to a specified location in case they needed to send it to you at a later time.
Regarding whether a user would ever be unable to write to the desktop, this post on the Tom’s Hardware forums points out that although write access could be disabled, the user would still be the owner of the desktop folder and would thus be able to re-enable write access — but I think that was Win2k specific. Another forum post claims that you can make the desktop read-only in XP with ALS. I’m not sure how it works in Vista, but it would seem that write-access to the Desktop is by no means guaranteed in Windows.
As @jeffamaphone points out, it would be a very good idea to offer a “save as” dialog, just in case. Personally, I’d lean towards having the desktop be the default folder, with a browse button to select another folder, in your “Save diagnostics” dialog. It’s irritating, as a user, to not have control of where output goes.