Was given a Dell Inspiron 1520 laptop running Windows Vista to fix. It would boot up but there was no desktop, just a black screen with a working mouse pointer. This appears to be a common problem and there are a number of solutions posted on the web. I tried a few lots of them.
Here are the fixes I tried (spoiler: solution 7 worked):
Solution 1
- Press F8 and start up computer to enable recovery menu
- Select Repair your computer
- In the System Recovery Options dialog box accept the default keyboard layout (US).
- Select user name from drop down box on next screen and enter password
- Choose Command Prompt from the list
- Type in c:
- Then type in Regedit
- Clicked “File>Import”
- Clicked to show “all files” at the bottom
- Navigated to C:\Windows\System32\Winevt\Logs
- Deleted all event logs one by one.
- Alternative solution is to rename the Logs folder to Logs_OLD (ren Logs Logs_OLD) and recreate an empty Logs folder (mkdir Logs).
- Closed all windows and rebooted.
Didn’t work.
top
Solution 2
- Press F8 and start up computer to enable recovery menu
- Select Repair your computer
- In the System Recovery Options dialog box accept the default keyboard layout (US).
- Select user name from drop down box on next screen and enter password
- Choose Command Prompt from the list
- At C:> type regedit [Press ENTER]
- The registry editor will open.
- In the Registry select ‘HKEY_LOCAL_MACHINE’ and then go to File/Load Hive.
- In the ‘Load Hive’ dialog box, navigate to the C:\Windows\System32\Config folder.
- In the Config folder, select SOFTWARE and click Open.
- In the Name Hive dialog box, type a unique name, such as EDIT1 and click OK.
- You should now see the EDIT1 branch, expand this branch and navigate to \Microsoft\Windows NT\CurrentVersion\Winlogon.
- In the right side of the Winlogon Key you will see a Value called ‘Shell’, double click this value.
- In the Value Data box, it should show ‘Explorer.exe’ and nothing else. If it shows something different, change the Value Data to Explorer.exe.
- Click OK.
- Scroll back up and select the EDIT1 branch.
- Go to File and select Unload Hive.
- Exit the registry editor and the command prompt.
- Press the ‘Restart’ button to reboot.
Didn’t work. Value was already set as Explorer.exe.
top
Solution 3
- Press F8 and start up computer to enable recovery menu
- Select Repair your computer
- In the System Recovery Options dialog box accept the default keyboard layout (US).
- Select user name from drop down box on next screen and enter password
- Choose Command Prompt from the list
- Navigate to C:\windows\system32\config\
- There should be two registry files: “software” and “software_previous”
- Rename “software” file to “software_corrupt” and “software_previous” to “software”
- Exit the command prompt.
- Reboot
Didn’t work.
top
Solution 4
- Press F8 and start up computer to enable recovery menu
- Select Repair your computer
- In the System Recovery Options dialog box accept the default keyboard layout (US).
- Select user name from drop down box on next screen and enter password
- Choose Command Prompt from the list
- At C:> type regedit [Press ENTER]
- The registry editor will open.
- In the Registry select ‘HKEY_LOCAL_MACHINE’ and then go to File/Load Hive.
- In the ‘Load Hive’ dialog box, navigate to the C:\Windows\System32\Config folder.
- Select “SYSTEM”
- Select Open.
- In the Load Hive dialog box, type in “MySYSTEM” box for the registry hive that you want to edit.
- After the hive is loaded, modify the following key value per the instructions below: You will need to know what ControlSet the machine is currently running on, this can be determined by going to HKEY_LOCAL_MACHINE\MySYSTEM\Select and find the “Current” value in the Right hand side. (Example: Current value is 1 then the ControlSet will be ControlSet001)
- Key: HKEY_LOCAL_MACHINE\SYSTEM\ControlSet00X\Services\RpcSs (X is the Number from the Current Key from above)
- Value Name: ObjectName
- Old Value: LocalSystem
- New Value: NT AUTHORITY\NetworkService
- Unload the SYSTEM hive by selecting the key “MySYSTEM” and then select File -> Unload Hive… menu item.
- Exit regedit.exe
- Reboot the system normally
Didn’t work. Value was already set as NT AUTHORITY\NetworkService.
top
Solution 5
- Press F8 and start up computer to enable recovery menu
- Select Repair your computer
- In the System Recovery Options dialog box accept the default keyboard layout (US).
- Select user name from drop down box on next screen and enter password
- Choose Command Prompt from the list
- At C:> type regedit [Press ENTER]
- The registry editor will open.
- Browse to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
- Right-click in the right-hand pane and create a new 32-bit DWORD value called PromptOnSecureDesktop, setting the value to 0.
- Exit regedit.exe
- Reboot the system normally
Didn’t work.
top
Solution 6
- Created Windows 7 USB boot disk using X17-59183.iso that I saw mentioned on Reddit.
- Booted faulty laptop from USB drive
- Accept default language
- Click Repair your computer in bottom left of Install Windows screen (do not click Install now)
- Select system hard drive on next screen and click Next
- Select Command Prompt from the list
- Run chkdsk c: /f /r (takes a long time)
- Run sfc /scannow /offbootdir=c:\ /offwindir=c:\windows
- Reboot
Didn’t work.
top
Solution 7
Created a Windows Vista installation USB drive by following the instructions here:
http://www.vistax64.com/general-discussion/296167-vista-iso-download.html
Then re-installed Windows Vista as detailed here:
http://computer.howstuffworks.com/how-to-reinstall-windows-without-losing-data.htm
Hooray!
top