文/NinJai
编者按:Windows xp是一款支持多用户的操作系统,围绕它的登录和账户问题有许多值得我们探讨,最近论坛也有不少朋友提到,其中有一些是初级问题,有一些比较常见。
为了让广大IT168的读者对Windows XP账户管理、登录中出现的问题、账户使用中的一些疑问有一个清楚的认识,我们特别邀请了在这方面比较有经验的作者撰写了这么一个FAQ,希望对大家更好的认识Windows XP有所帮助。
1.为什么计算账户中会出现一个Guest?
按照惯例还是先来回答一下这位朋友的提问,用户账户中出现Guest是非常正常的,您不用担心自己的电脑被入侵。所谓“Guest”,按照字面意思来理解,意指“客人”,不管是Windows还是linux中都有它的身影,该账户的权限与管理员权限相比要小得多。按照Windows XP对账户组的分级,我们可以看到Administrators(管理员权限,对计算机拥有最高的控制权利)、Backup Operators(为了辈分或还原文件可以替代安全限制)、Guests(跟Uers组有同样的访问权,但限制更多)、Power Uers(拥有大部分管理权限,但也有限制,可以运行经过验证的应用程序,也可以运行旧版应用程序)、Uers(用户无法进行有意或无意的改动,可以运行经过证明的文件,但不能运行大多数旧版应用程序)、Remote Desktop Uers(有授予远程登录的权限)。
图1
在Windows XP中你也可以禁用Guest账户,方法是选择“开始→设置→控制面板→用户账户”,单击“Guest”,在打开的窗口中点击“禁用来宾账户”。
图2
2.为什么计算机账户中多了个asp.net帐户?
账户中出现Guest稀疏平常,但如果有一天你的账户里出现了一个ASP.NET账户,你会不会直冒冷汗?其实你大可不必担心。这个账户是在安装Microsoft .Net Framework时自动创建的,主要用来使微软Internet信息服务中的ASP.NET工作进程完全支持Web服务器上的ASP.NET,对于不进行ASP.NET开发的普通用户而言,我们完全可以删除之而后快。
当然如果删除,也许在运行某些需要.Net Framework软驱动的软件时,会出现意想不到的问题,我们可以运行“%systemroot%/Microsoft.NET/Framework/vXXXX/aspnet_regiis.exe /i”来重建(其中XXX代表版本号)。
3.为什么我的Windows XP在登录的时候不让我输入用户名?只能选择里面已经有了账户。
从Windows XP开始,系统默认采用欢迎模式的登录界面,如果在欢迎屏幕处你想登录其他用户(如Administrator账户),那就按两次Alt+Del+Ctrl即可。
如果你想使用传统的登录方式(类似于Windows 2000登录模式),那就选择“开始→设置→控制面板→用户账户”,点击“更改用户登录或注销方式”。
图3
取消勾选“使用欢迎屏幕”,再点击“应用选项”。
图4
这样当你登录Windows XP的时候,可以在登录框的用户名中输入已经存在的账户并输入该账户的密码即可完成登录。
4.我常常要使用Administrator账户登录进行一些计算机管理,有没有办法将Administrator账户添加到欢迎屏幕中来?
默认情况下Windows XP欢迎屏幕账户列表中没有包含Administrator账户,我们可以把Administrator账户添加到账户列表中来,方法如下:
运行“Regedit”命令打开注册表编辑器,首先定位到“[HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows NT/ CurrentVersion/Winlogon]”,在右边窗口中找到“LogonType”(如果没有则新建一个,其类型为REG_DWord),将其值设置为1,接下来定位到“[HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows NT/CurrentVersion/Winlogon/SpecialAccounts/UserList]”,在其下新建一个名为“Administrator”的项,将其默认值设置为1即可。
对于其它账户也可以采用类似的方法将其添加到欢迎屏幕的账户列表中,如果删除该注册表分支下以账户名命名的项或者将其默认值设置为0,即可将其从欢迎屏幕账户列表中去除,这对我们保护隐私有一定好处。
5.为什么我的Windows XP会直接进入系统?我记得我已经设置了Administartor密码了啊。
出现这样的情况你肯定是开启了Windows XP的欢迎登录模式,而出现这样问题的原因可能是:你并没有设置自己在安装Windows XP时添加的用户的密码,而且你并没有开启Guest访问权限,这样你只需要要么为你的用户设置一个密码,要么选择“开始→设置→控制面板→用户账户”,在这里开启Guest来宾访问权。
如果设置无效的话要找回“消失”的欢迎屏幕我们可以新建一个账户或者为已有账户设置密码,如果问题还未得到解决,那么运行“Regedit”命令打开注册表编辑器,定位到“[KEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/
CurrentVersion/Policies/Explorer]”分支,在右边窗口中找到NoWelcomeScreen(如果没有则新建一个,其类型为DWORD),将其值修改为0即可。
6.我正在使用自己的计算机,但是另外一位朋友突然想用我的电脑,我之前已经为他建立了一个用户,我不想他使用我正在使用的账户,但我又不想关闭自己正在运行的BT下载,能实现吗?
答案当然是肯定的。Windows XP为我们提供了“用户快速切换”功能,该功能允许我们在不注销当前用户的情况下登录到另外一个用户的界面中。其具体操作如下:
首先选择“开始→设置→控制面板→用户账户”,点击“更改用户登录或注销方式”,勾选“使用欢迎屏幕”和“使用快速用户切换”两项。
接下来按下Alt+Del+Ctrl键打开任务管理器,选择“关机→切换用户”菜单(或者直接按下Win+L键),再登录你朋友的账户即可。
图5
需要注意的是,如果你要使用“快速用户切换”功能,那就必须开启“使用欢迎屏幕”,否则该功能处于不可选状态。
7.我使用的是传统登录模式,因为习惯问题,我每次想打开任务管理器都是按下Alt+Del+Ctrl键,但每次都要再点一次鼠标(点击“任务管理器”),有没有更快点的方法?我以前使用Windows 98/Windows 2000都是直接按Alt+Del+Ctrl打开任务管理器的啊?
可以试试Ctrl+Shift+ESC组合键,实际上这个热键才是真正调用任务管理的热键。无论你是否开启欢迎模式,我们都可以用这个热键来直接打开任务管理器。如果你不习惯它们,也没关系,你可以鼠标右键点击任务栏,选择“任务管理器”菜单,效果是一样的。
其实有关登录和账户的热键还是不少的,最有用的一个就是Win+L了。如果你开启了欢迎模式并开启了快速用户切换功能,那么按下Win+L就是快速切换用户的功能,如果你没有开启“快速用户切换”功能,那么不管你是否开启了欢迎模式,Win+L热键都是锁定计算机,如果你的当前用户设置了密码,那么在重新使用该计算机的时候必须输入密码方可进入,如果没有设置密码,那么直接回车就回来了。
8.我的Windows XP根本就没有设置密码,可是每次登录都要让我输入密码,实际上只要回车就可以进入系统的,我讨厌每次都按回车,能不能直接进入系统?我记得这在Windows 2000中很容易设置的呀?
实现的方法不少,我先介绍修改注册表的方法吧:
运行“Regedit”命令打开注册表编辑器,依次展开“[HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft
/Windows NT/CurrentVersion/Winlogon ]”分支,然后在右侧窗口双击“DefaultUserName”,接着输入你的登录用户名。如果没有则新建一个字符串值,注意要区分大小写字母。
接下来在右边窗口中双击“DefaultPassword”,然后在空白栏内输入你的密码。假如未发现“DefaultPassword”一项,同样新建一个即可。最后将接下来在右侧窗口中双击“AutoAdminLogon”,将数值设置为“1”。假如未发现“AutoAdminLogon”,可按上面一样的步骤来新建。
再来介绍一种更简单的方法:
在“开始→运行”中输入“rundll32 netplwiz.dll,UsersRunDll”命令,按回车键后弹出“用户帐户”窗口,然后取消选定“要使用本机,用户必须输入用户名和密码”一项,点击“确定”。
图6
在弹出的窗口中输入你想自动登录的账户和密码就行了。
图7
9.上面介绍的这个方法真是不错啊。不过每次都要输入这么长的命令实在是太麻烦了?Windows 2000控制面板里就有一个用户密码的功能,为什么Windows XP中没有?干嘛不也来一个?
是的,Windows 2000中有,但Windows XP却隐藏了这个组件。不过好在我们可以自己在控制面板中添加,方法也很简单,将面的内容保存为*.reg并导入就行了:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT/CLSID/{98641F47-8C25-4936-BEE4-C2CE1298969D}]
@="密码账户管理"
[HKEY_CLASSES_ROOT/CLSID/{98641F47-8C25-4936-BEE4-C2CE1298969D}/DefaultIcon]
@="%SystemRoot%//System32//nusrmgr.cpl,1"
[HKEY_CLASSES_ROOT/CLSID/{98641F47-8C25-4936-BEE4-C2CE1298969D}/Shell]
[HKEY_CLASSES_ROOT/CLSID/{98641F47-8C25-4936-BEE4-C2CE1298969D}/Shell/Open]
[HKEY_CLASSES_ROOT/CLSID/{98641F47-8C25-4936-BEE4-C2CE1298969D}/Shell/Open/command]
@="Control Userpasswords2"
[HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Explorer/
ControlPanel/NameSpace/{98641F47-8C25-4936-BEE4-C2CE1298969D}]
@="Add Userpasswords2 to Control Panel"
双击控制面板中的“密码账户管理”打开它,我们可以做点什么呢?
·重新设置密码。随便选择一个用户,点击“重设密码”按钮即可。
·添加新的用户。点击“添加”按钮,再按照向导进行操作。
·管理密码。比如我们要清除自己的MSN Messenger登录密码,那就切换到“高级”标签,点“管理密码”,再进行删除操作吧。
·增强安全性。用过Windows 2003 Server的朋友都知道,每次登录前都需要我们按下Alt+Del+Ctrl键,这样免得有些木马有可趁之机,Windows XP中也可以这么做,点“要求用户按Alt+Ctrl+Delete”就行了。
图8
10.我的Windows XP密码弄丢了,不能登录,里面还有很多重要的东西呢……怎么办?
这个问题要解决就没那么简单了,从Windows NT/2000/XP/2003开始,账户管理就有了一种叫“安全帐号管理器(Security Account Manager)”的机制,安全帐号管理器对用户账户的管理是通过安全标识符(SID,Security Identifiers)进行的。
每个SID都是在我们为系统添加一个账户时生成的,它由用户和组的安全描述、标志符的颁发机构、修订版本、可变的验证值四部分组成,它被存储在系统中一个名为“sam”的无后缀名文件中(图1,其位置为:%SystemRoot%/system32/config/sam)。一旦我们删除该账户,其对应的SID也被删除,而且它是唯一的,也就是说,即使我们马上再建一个同样的账户,新生成的SID值都是不一样的。由于Windows的登录都是靠SID来验证的。
明白了这个原理,我们再来纠正两种错误的做法:
一、有些人觉得删除SAM文件就可以正常登录了。这种方法您千万别尝试,它只实用与原装版本的Windows 2000,对Windows XP不行,可能会引起系统锁死的故障,对Windows XP/2003用户可以尝试将C:/Windows/Repair目录下的sam文件拷贝覆盖到C:/Windows/system32/config目录中,注意覆盖前请先备份C:/Windows/system32/config/sam文件。不过这样你也无法抢救使用EFS加密的文件。
二、有些人说可以使用别的账户登录,登录后再进行抢救工作。这样做固然不错,但你同样无法抢救使用EFS加密的文件。
那么改如何解决才是正道呢?我们可以使用一款名为@Stake LC4的软件破解存放在SAM文件中用户名和密码信息,该方法的优点在于可以完美解决忘记密码的问题,即使管理员账户中使用EFS加密的文件也一样能够访问,不会存在数据丢失的情况,不过缺点是如果你设置的密码过于复杂,该软件计算时间会非常长一些,这需要你有足够的耐心了。
运行@Stake LC4,选择“File→New session”菜单,选择“Import→Import From SAM File”并定位到X:/Windows/System32/Config/sam文件,这时候我们会看到LC4将本机中存在的所有账户的账户名(User Name)、域(Domain)等全部信息。
图9
如果某账户的密码为空,大家可以在该账户的“Password”项看到“*empty*”。
接下来选择要破解密码的账户,选择“Session→Begin Audit”开始进行破解,其所用时间的长短视你的密码长短而定。完成后选择“File→Export Password File”将结果保存到一个文本文件中,查看该文本文件即可获知管理员密码。
新闻热点
疑难解答