SVCHOST Error on Logon

By Paulus, 24 February, 2007

If you log on to the computer and you see a message like this:

svchost.exe -- application error the instruction at "0x745f2780" reference memory at "0x00000000". the memory could not be 'read'

Chances are that you have corrupted Windows Update data. To fix this problem follow these steps:

  1. Start the Services control ( start->run services.msc )
  2. Double click the service Automatic Updates.
    1. Click on the Log On tab.
    2. Local System account should be selected.
    3. There is no check in Allow service to interact with desktop.
    4. The service is enabled in the hardware profile.
    5. Click on the General tab.
    6. Startup type is set to Automatic
    7. Click on Start to start the service.
  3. Double click on the service Background Intelligent Transfer Service (BITS)
    1. Local System account should be selected.
    2. There is no check in Allow service to interact with desktop.
    3. The service is enabled in the hardware profile.
    4. Click on the General tab.
    5. Startup type is set to Automatic
    6. Click on Start to start the service.
  4. Close out of the Services control and go back to start->run and type cmd. In the command prompt window type the following:
    1. REGSVR32 WUAPI.DLL
    2. REGSVR32 WUAUENG.DLL
    3. REGSVR32 WUAUENG1.DLL
    4. REGSVR32 ATL.DLL
    5. REGSVR32 WUCLTUI.DLL
    6. REGSVR32 WUPS.DLL
    7. REGSVR32 WUPS2.DLL
    8. REGSVR32 WUWEB.DLL
  5. You may or may not need to reboot for this command:
    net stop wuauserv
  6. Move the SoftwareDistribution folder to OldSoftwareDistribution:
    cd %windir%
    move SoftwareDistribution OldSoftwareDistribution
  7. Start the Automatic Update service.
    net start wuauserv

I've created a batch file to automat this as best I can. You will need to do steps 1-3 manually. The batch file can be downloaded here.