PapyNet,
I used to have this same problem. For my case, on top of that problem that you've described, the auto-update function also failed, although manual update works perfectly.
I found out, through pure luck, that the cause of my problem is because my "system environment variables" for 'TEMP' & 'TMP' are pointing to an invalid directory.
I used to have a RAMDISK pointing to Z:, and thus, I defined the following "system variables":
TEMP = Z:\
TMP = Z:\
And with that, I installed Avast, and Avast was working fine for a long time, until I decided to remove my RAMDISK, and forget to re-define these 2 variables to point to a new temp-directory. As a result, Avast started to exhibit those behaviours that I described above. After I re-defined the 2 variables to point to a proper and valid directory (e.g. C:\temp), and rebooted my PC, Avast immediately reverted back to it's normal mode and did everything correctly. I'm a happy man now.
Here's how you can check whether your environment variables are correctly defined:
1. Do a mouse-right-click on 'My Computer' icon, and select 'Properties'.
2. A 'System Properties' window will pop-up.
3. Click on 'Advanced' tab.
4. At the bottom of the window, click on 'Environment Variables' button.
5. Another window will pop-up, displaying 2 sections -- User vs System
6. Check both sections for the variables 'TEMP and 'TMP'.
7. Change them to point to a valid directory.
8. Reboot PC.
9. See if Avast is working fine now.
Hope this helps.
Cheers,
Phi.