Category Archives: Windows Server 2008 R2

Print Spooler (spoolsv.exe) crashes repeatedly – find corrupt/unsupported drivers

If you find that your print spooler service continuously crashes or won’t even start at all, it could be due to an unsupported or corrupted printer driver. To help determine what the cause of the issue is, you will need to do the following.

  1. Download Windows Debugging Tools SDK from this location and install them to a location you’ll remember.
  2. Create a folder on your C: drive named debug.
  3. Open a command prompt change directory to the folder where you installed the debugging tools.
  4. Change directory again to “Debuggers\x86.” (Note: This location may change depending on operating system. You are looking for the file location of adplus.exe.)
  5. Run the following command: adplus -crash -pmn “spoolsv.exe” -o C:\debug.
  6. Start the Print Spooler service.

The adplus command will wait for the print spooler service to start then attach itself to it for debugging purposes. When the service crashes, it will create a folder inside of C:\debug with a date/timestamp similar to this: 20120807_095027_Crash_Mode. Inside of that folder will be a couple of log files. Examine the log files and search for verify. In my case, it found the following line: *** WARNING: Unable to verify checksum for C:\Windows\System32\XRZWSLAI.DLL. Next, we need to delete the printer and drivers from the registry.

To delete the printer and drivers from the registry, do the following:

  1. Open the registry editor.
  2. Browse to: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Environments\Windows NT x86\Drivers\ (Note: If you’re running the 64-bit version of Windows, the registry location will most likely be Windows x64 rather than Windows NT x86.)
  3. There will be a subkey Version-2 or Version-3 depending on your operating system.
  4. Export the registry key before deletion to ensure you have a backup.
  5. Delete the appropriate key that relates to the corrupt/unsupported driver.
  6. Browse to: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Printers.
  7. Export the registry key before deletion to ensure you have a backup.
  8. Delete the appropriate key that relates to the printer.
  9. Start the Print Spooler service.

NPS Certificate Setup for PEAP/EAP-MSCHAPv2 Wireless Authentication on Windows Server 2008

So if you find yourself wanting to use PEAP 802.1x authentication, you will need to make sure there is a certificate bound to the PEAP authentication method on the network policy. In order to get the right type of certificate, you should follow the steps below. Note: In my case, I was unable to add a regular “Computer” enrollment so I had to follow the steps below to get it working. If you find yourself able to enroll a “Computer” certificate at step 9 below, you can ignore steps 1-8.

  1. In the Certificate Templates Console, under Template Display Name, find Computer. Right-click it, click Duplicate Template, and then click OK.
  2. In Properties of New Template, on the General tab, under Template display name, type a name for your new template. You can use something like Wireless Authentication. While you are on the General tab, you can also set a validity period. By default it will be 1 year. Do not select more than 2 years or some additional tweaking will be required (steps not listed here).
  3. Click the Security tab. Here is where you need to add permission for you to enroll. Click Authenticated Users and check the box next to Allow for Enroll. Click OK and now you’ll see the new certificate template at the bottom of the list.
  4. Close the Certificate Templates console. Click Start, Run, certsrv.msc, enter. This will open the local Certification Authority console.
  5. Right-click the Certificate Templates folder, point to New, then click Certificate Template to Issue. Scroll down the list and find the new template you created. The name I suggested was Wireless Server Auth but you might have picked something else. Highlight this template and then click OK. Now you should see that it is added to the list of Certificate Templates.
  6. While you are in this console, click on the Issued Certificates container. You should see a list here of all the certificates that this CA has issued. You can also view Pending Requests (for certificates that require approval before being issued) and Failed Requests (there was a problem issuing the cert).
  7. Go back to the local computer certificate console (Start, Run, mmc, enter, File… Add/Remove Snap-in, Certificates, Add, Computer account, Next, Local computer Finish, OK). Right-click the container under Personal\Certificates, point to All Tasks, Request New Certificate, Next, Next. You should now see the Wireless Authentication certificate. Choose it and click Enroll. At this point you should now see another certificate in the list. You can tell which one is the one you just issued by looking at the details tab and viewing Certificate Template Information.
  8. Go back to PEAP properties in the Network Policy and choose the newly created certificate.

Installing 32-bit Printer Drivers on Windows 2008 R2 Asks for ntprint.inf

You may find that attempts to add certain 32-bit printer drivers to a Windows 2008 R2 print server prompt you for the location of ntprint.inf. This is a huge pain, but it can be solved by doing the following:

  1. Locate a Windows Vista or Windows 7 32-bit computer on your network and document it’s computer name.
  2. Click Browse on the prompt for ntprint.inf and type in the location to the Windows 7 machine: \\computer-name\c$\windows\winsxs\
  3. Scroll down through the window and locate x86_ntprint.inf_xxxxx then click it to open it. xxxxx is a random hex string and version number.
  4. Click ntprint.inf and click OK to select it and then OK once more to accept the path and finish the driver installation.

Autologon Domain-Joined Windows 2008 R2 Server

When a workstation/server is joined to a domain, it hides the checkbox for “Users must enter a user name and password to use this computer” from the userpasswords2 control panel.

To get autologon working, you need to restore this functionality by running the following from a command prompt to add a registry key:

reg add “HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon” /v AutoAdminLogon /t REG_SZ /d “1” /f

Once that is done, it is recommended to run the following from a command prompt to add a registry key to specify the default logon domain:

reg add “HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon” /v DefaultDomainName /t REG_SZ /d “domain” /f

After both registry keys have been added, launch the userpasswords2 (Start->Run->control userpasswords2) and click “OK.” to set the username/password you want to autologon with.

Please note: This tip also works for Windows 7 and Windows Server 2008.