I have written a C++ application i want to make it run on startup (Application modifies the content of a text file).When i place its .exe file's shortcut in common startup folder so that it should run on every user startup this works fine for both Admin and simple user. But on simple user account it gives an error of permission denied as output file goes in C:\\Program Files\\xyz.txt as simple user donot have access of this folder.
My question is,where should i place my output file so that it is accessible by any user and my program will be able to run fine?
In all Versions of windows (After XP , ofcourse)
We should point out that the %APPDATA% environment variable is the application data folder for what ever users session is logged on. So if you need the data grouped together in the same file then that solution might not work for you.
My vote is to make your application into a service, this will give it write permissions to that location regardless of who is logged in.
You could just explicitly give authenticated users write permissions to that file, but that feels lazy.