I've tried the script & it bombs out if the writevalue already exists.

We only need to make 2 changes to the registry.

Change the value of DWORD "DisablePLADMinusOne" from 0 to 1.

Add the DWORD "DisableResetLastAccessDate" with a value of 1.

I've cut the script you kindly did down to those 2 lines.

GOSUB write_registry $name="DisablePLADMinusOne" $type="REG_DWORD" $value="1"
GOSUB write_registry $name="DisableResetLastAccessDate" $type="REG_DWORD" $value="1"
GOSUB write_registry
EXIT

:write_registry
$key="HKEY_LOCAL_MACHINE\SOFTWARE\Network Associates\TVD\Shared Components\On Access Scanner\McShield\Configuration"
IF (WriteValue($key,$name,$value,$type) <> 0)
? "Warning KIX: write problems with key "$name". error @error (@serror)"
ENDIF
RETURN

Is there a way of changing the original value, or will I have to use the DELVALUE option to remove the DWORD "DisablePLADMinusOne", then re-add it with the correct value?

(Then I'll have to place a safeguard to get the script to "RunOnce"!)

Thanks (Again!)

Colin