"shibuii" <> wrote in message
news:F8685D93-3CE2-4590-977E-...
> This patch is showing as required on my users' system. When I try to
> install, eventually I get a windows box that says: Access Denied.
>
> when I look in the log for the update, this is what it says about failing:
>
> 7.641: DoRegistryUpdates:SetupInstallFromInfSection Failed for
> ProductInstall.GlobalRegistryChanges.Install error: 0x5
> 7.641: INF_REGISTRY Failed
> 7.641: DoInstallation
oRegistryUpdates failed
> 7.681: VerifySize: Unable to verify size: Source = NULL: c:\winnt\oem20.cat
> 8.092: Access is denied.
>
> I'm doing this as the administrator on the machine - this is a windows 2000
> Pro PC - Any help?
This suggests that there is a registry key which has the wrong permissions
for the user which is doing the update. Unfortunately the log doesn't make
this clear. There might be a /verbose option on the update if it is run manually
from the cmd line but even if there was there would be no guarantee that
it would show you the precise detail you are looking for. Alternatively you
might be able to infer which key is the cause of the problem by expanding
the update, extracting the .inf file and then looking in it for section names
which correspond with the names given in the log. However, I think the
easiest thing to do would be to run both FileMon and RegMon concurrently.
Run RegMon with a fairly loose filter, e.g. perhaps just update.exe
would be a tight as you could go on that side. FileMon on the other hand
would be run just to try to get a more accurate timestamp for the above log
records; so it could be as tight as update.log for writes only. (The writes
will show you the length of the records being written so if there is a pattern
in the log based on the length of their records you can then map the timestamps
from the FileMon trace onto the less precise timestamps of the update's log
records and then from there find the precise set of RegMon trace records
which correspond with those intervening milleseconds.) Depending on how
many RegMon records you capture you might also be able to spot the
problem in it by eyeballing its trace only. E.g. it would probably be somewhere
near the bottom of that trace.
Good luck
Robert Aldwinckle
---