I have been fighting to re-install Windows Live OneCare for the last while on my older Windows XP machine. I had it running before but something happened and I decided to uninstall OneCare and then re-install it. However the installation process kept failing with the general error 0020-80070643 which, according to the various Internet articles and references seems to indicate that it could be:
- Incorrect installation of Windows Defender,
- a Virus,
- Remnants of an other Anti Virus product,
- Remnants of a previous install of OneCare,
- and many other guesses.
I tried the blind approach first, the blind approach is when you take the error you have, search for the “solution” and try if it works for you. Of course, most of the time it doesn’t work.
Then I found the log files during the installation process. If you want to see the log files you shouldn’t finish the installation process once you get the error message as the following cleanup process deletes everything, even the log files. The log files can be found in c:\Program Files\Mirosoft Windows OneCare Live\Logs. Open the Logs.log file in notepad and search for the error number, from there you look for the moment the error happened, this will most likely indicated in which installer package (MSI) the error occurred.
In my case the error was raise during the installation of the mp_avbits.msi package. Opening up the AVBitsInstall.log file indicated the the error was caused by the verification of the certificate of the mpfilter.inf file in the DifxApp process. It looked like that the installation process had a problem with the driver signing. If you search in the AVBitsInstall.log for “DIFXAPP: ERROR” you may find something similar as shown below:
DIFXAPP: INFO: Checking signature with catalog 'mpfilter.cat' ...
DIFXAPP: ERROR: Signature verification failed while checking integrity
of driver package 'Mpfilter.inf' ('mpfilter.inf'). (Error code 0xE0000244.)
DIFXAPP: InstallDriverPackages failed with error 0x800B0100
After some research I found that this process is a custom action within the installer package which is located in the DifXAppA.dll, you can find more information about this dll at http://msdn.microsoft.com/en-us/library/ms790293.aspx and http://msdn.microsoft.com/en-us/library/aa906233.aspx. Knowing that the installation process has a problem with the driver signing and reading the information that there is an option to install unsigned drivers whether the driver is unsigned or not. I decided to adjust the installation package to force the installation of unsigned drivers thus basically bypassing the verification. To change the Flags you can use Orca which is a MSI editor from Microsoft, which I have attached to this blog for ease of use.
To change the msi packages you need to start the installation process for OneCare and then monitor the staging folder for when the mp_avbits.msi package is downloaded.
Typically the OneCare staging folder is located at c:\Program Files\Microsoft Windows OneCare Live\Staging
As soon as it is downloaded you open the package with Orca, make the change and save it again.
The change you need to make is shown in the image below.
- In the Tables list select MsiDriverPackages
- In the Flags column of the MPFILTER component enter the number 12
- Save and close the msi package.
Since this problem comes in two’s you also need to monitor for the MPSSetup.msi package. This package requires two similar changes as displayed in the second image.
The changes you need to make are as follows:
- In the Tables list, select MsiDriverPackages
- In the Flags column of the MSFDriver component enter the number 12
- In the Flags columns of the MSFWHelperDriver component enter the number 12.
- Save and close the msi package.
Make sure you make those changes are saved before the installation process had a chance to open the packages for installation.
The installation process should now be successful.
Downloads
Orca.Msi (2.36 mb)