The following long winded post explains why I believe that people should NEVER put front end Access databases into c:\program files\
My main reason for posting is to ask if any expert disagrees with my belief.
The second reason for my post is to document the fairly painful process that led to my final resolution. There were two older EE questions which now reference this summary of this final resolution.
--------------So, here are the details --------------------------
For several years, my SBS 2003 network had a daily login script that copied \\server\FrontEnd.mdb to clientComputer C:\program files\myFrontEnds\*.*
Under XP this worked fine. Under Windows 7 with UAC on, it seemed to work (except for a minor problem which was solved in Q_26473654)
So, I was happily thinking that everything was working fine when I discovered that changes to vba module mdl99 in \\server\FrontEnd.mdb were not
working on clientComputer.
While trouble shooting, I opened C:\program files\myFrontEnds\FrontEnd
.mdb and found that it did not
contain the mdl99 changes.
But, I then copy C:\program files\myFrontEnds\FrontEnd
.mdb to c:\newFolder\FrontEnd.mdb,
and suddenly the MDB did contain the mdl99 changes !!!! THAT IS WEIRD.
If then copied the MDB back to c:\program files\myFrontEnds\ and the mdl99 changes disappear again !!!! THAT IS WEIRDER.
A little more research revealed that double clicking on any mdb under c:\program files\ does not open the selected MDB
. Instead, it opens a much older copy of the mdb which is stored in "C:\Users\rberke\AppData\L
ogram Files\ myFrontEnds\FrontEnd.mdb"
I decided that Windows 7 simply does not want people to put there own programs into c:\program files\.
I now put my MDBs into c:\MyFrontEnds\ and things seem to work fine.
But, in an earlier question, another expert told me this was a bad -- here is what he said.
----------- from q_26486755
Root drives are protected in Vista and Win7, but of course you can change permissions/restrictions as needed.
Proper application deployment techniques in Vista forward suggest that you install Programs to the Program Files section (this is a WRITE ONLY section) and that you install Data files to one of the Data folders (depending on how much access is needed, and by whom). If your FE needs to write to local tables, or you store data directly in the FE, then you'll need to move it to the Data folders section.
You can store your apps on the root drive, but don't be surprised when a Win7 update comes out and breaks this. UAC is not going away, and it's only going to get more restrictive. The root drive was NEVER intended as a storage location for user-run programs. That's what Program Files are for (or the Data folders, depending).