Okay, thanks. That was really helpful and I think I've spotted the problem by looking in the log.
Not long ago my TEMP folder was set to M:\TEMP (ramdisk) - however 2 reboots ago it was changed to C:\TEMP (hard drive). The ENV shows C:\TEMP but for some reason Avast! is still looking at the old TEMP ENV var which was probably active when it was first installed but is no longer valid. The log shows a file create error for a temporary file in M:\TEMP
User and System ENV variables for both TMP and TEMP (as shown via both Control Panel and CMD shell SET command) show both User and System set to C:\TEMP before and after the test.
Avast! perhaps doesn't seem to be querying TMP on loadup. Some people may switch their TEMP location at either bootup or logon to another drive (mine was previously set to a ramdisk to cure YouTube video playback stutter problems due to a slow hard drive)
To recap - as M: no longer exists it never gets set TEMP=M:\TEMP and is always forced to C:\TEMP by batch file at each logon using SETX.EXE - 2 reboots should have cleared the environment and, as indicated, control panel shows the master system ENV is set OK to C:\TEMP but Avast! scanner is still looking for the older M:\TEMP TEMP environment but M:\ does not exist any more.
Not sure how I persuade Avast! to re-query the ENV. I'm guessing I can set it in the INI file but its 00:31 and I have to be up at 6am so will try to check later tomorrow.
I will post the LOG file to the thread you indicated via the link
Regards and thanks again