Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have this unusual problem where applications will break if I allow their automatic update to run.

I am running a relatively standard Windows 7 Professional x64 system. I don't really have all that much installed on the system. I normally use my computer while logged in as a limited account.

To give one example. I have Evernote installed. I was notified their was a pending update. It asked me if I wanted to download and update, which I agreed to. I was given a UAC prompt and provided my administrator username and password and then upgrade appeared to be completed normally. After the update was completed when I attempt to run Evernote I get the error message Windows cannot access the specified device, path or file. You may not have the appropriate permissions to access the item.

If I use icacls to examine the permissions on the Evernote I see this.

C:\Program Files (x86)\Evernote\Evernote3.5>icacls Evernote.exe
Evernote.exe  No permissions are set. All users have full control.
Successfully processed 1 files; Failed processing 0 files

So the permissions are obviously screwed up. If I try to look at the permission through the filesystem I get weird errors about the filesystem permissions being screwed up (sorry I didn't write them down). Windows does not let me take ownership or replace the filesystem permission through the explorer interface.

If I completely uninstall Evernote, delete the program folder and install a clean copy everything starts working fine.

The problem this seems to be happening for pretty much any and every program that wants to self update. So far in addition to Evernote this includes Adobe Acrobat, iTunes, Mozilla Firefox, the pack version of Google Chrome, and VLC.

Just to make the problem more confusing. Windows has updated itself several times and nothing seems to break after a Windows update.

I have now ran a chkdsk /f a couple times. I have booted from a livecd and ran badblocks -sn /dev/hd. I have allowed memtest86 to run through several passes. The hardware seems to be fine.

I am almost to the point where I am just going to backup/reinstall the system but if I can avoid that for a couple months it would be nice.

So my question is does anyone have any idea why self-updating 3rd party applications seem to break when they update, do you know how to fix it?

share|improve this question
i think i'm seeing the same thing with the java updater... – Antony Jul 19 '10 at 4:28

The article NULL DACL Behaviour in Windows Vista describes the same condition as happens to you, which happens when a file is created with empty DACLs (as distinct from null DACL which grants universal access).

You can find further information in Vista incompatibility isn't always Vista

The fact that I got no access indicates that this must have been an empty DACL. In Vista, an empty DACL really means "no access" - in Windows XP, an empty DACL means "owner has full control, everyone else no access".

As a conclusion I would say that icacls is lying to you, and has probably not been updated since XP. Since Vista the behavior of an empty DACL has changed, but icacls doesn't know about it.

The question is now: Why would installed executables be ending up with no DACLs at all.

It seems like a system call is systematically failing on your system when issued by an application, but it does work when issued by Windows Update.

I would try two solutions:

  1. Turn off any security application that can monkey with permission settings, such as antivirus or firewall
  2. Turn UAC off

If the first test is positive and the problem is with an installed security product, then reinstalling Windows might not be an effective solution.

share|improve this answer
up vote 0 down vote accepted

I never got around to solving this, and have since reinstalled. Harrymc's answer may have been valid.

share|improve this answer

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .