Fixing Logon Failure errors in XP Home

A client running XP Home today had an issue with a machine running slowly, and in the (ab)normal course of troubleshooting, we came across some errors in the event viewer that caused us to reset the security descriptors back to their defaults… and in doing so, we broke his printer sharing. (Oops!)

For those of you at home, we reset the security back to baseline via the secedit utility — something we carry with us on our USB keys since it doesn’t ship with XP Home:

secedit /configure /cfg %windir%\repair\secsetup.inf /db secsetup.sdb /verbose

So, since it’s XP Home, we didn’t have a lot of tools available to us, so we replied upon the Win2k3 Resource Kit tools to help us reset the Guest account, so it had access to the local printer:

The remote user was getting the message “Logon failure: the user has not been granted the requested logon type at this computer”

So we confirmed the guest account was turned on via:

net user guest /active:yes

And then we allowed it to logon from the network. (Case sensitivity rules in effect):

ntrights +r SeNetworkLogonRight -u Guest

And we had to remove the DENY right, since it takes precedence in all transactions:

ntrights -r SeDenyNetworkLogonRight -u Guest

Once we did that, the other computer was able to print again.

Stop the Beeping!

On my laptop, every time I connect to a wireless network, the Intel software pops up a notification window telling me that I’ve connected, but it is accompanied by a loud BEEP — even though my speaker is muted and I run the “No Sounds” sound scheme.

Turns out that BEEP is a service; but a service that’s hidden from almost all user interfaces.

The easiest way to stop it (temporarily) is to open a command prompt (Click Start, Run and then type CMD and click OK or hit enter) and then type the following:

net stop beep

Easy enough. However, after a reboot, you’ll need to do it again… which is a drag, so let’s use a lesser known command, SC, to handle this for us.

From its help text:

DESCRIPTION:
SC is a command line program used for communicating with the
NT Service Controller and services.

In the command window, type

sc config beep start= disabled

There needs to be a space after the equals sign.

Once you do that, your computer should respond with:

[SC] ChangeServiceConfig SUCCESS

You can also do this using the GUI, but I don’t know why you would want to… it’s a chore.

For an XP system (Win2K and Vista are similarly done). Instructions gacked from Windows IT Magazine:

  1. Right-click My Computer and select Manage.
  2. Expand System Tools and select Device Manager.
  3. From the View menu, select Show hidden devices.
  4. Expand Non-Plug and Play Drivers.
  5. Right-click Beep, and select Properties.
  6. Select the Drivers tab.
  7. Click Stop. You can also change the start-up type to Disabled so the beep service never starts.

Enjoyyour new, quieter, life. 🙂

If you need to turn it back on, use this:

net start beep

On the off-chance you want to turn this back on forever, use the command:

sc config beep start= boot

Or using the GUI instructions, change step 7 to:

7. Click START

To have it restart forever:

7. Change the start-up type to Boot so the beep service starts at boot time.