如何实现自动登陆系统?怎么设置系统自动登陆?

AquArius 29 0

如何实现自动登陆系统?

这样做的好处是在多人使用一部电脑的环境中安全性有保障。不过,如果电脑只是你一个人使用,每次都必须输入密码,实在是令人讨厌。要取消这个登录步骤,可以通过修改注册表文件中的Winlogon项目来实现。但在修改之前有必要提醒大家,这样做的后果是你的密码会以纯文本的形式存放于注册表文件中。换句话说,只要有人能够打开你的注册表文件,那他就会知道你的登录密码。了解这些情况后,如果仍想改动的话,可按以下步骤操作:
  一、打开注册表编辑器(在运行中输入“regedit”),依次展开 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon ]分支,然后在右侧窗口双击"DefaultUserName",输入你的登录用户名。如果没有DefaultUserName,可以在注册表编辑器的右侧窗口空白处点右键,选择新建→字符串值(s)→DefaultUserName来添加这个项目。
  二、同样在该分支下,在注册表编辑器的右侧窗口中双击"DefaultPassword",输入你的密码。假如没有“DefaultPassword”这一项,可按上面的步骤来新建一个字符串值。
  三、接下来在右侧窗口中双击"AutoAdminLogon",将数值设置为"1"。假如没有“AutoAdminLogon",可按上面的步骤来新建一个字符串值。
  更简单的 *** :打开记事本,把下面的代码复制进去,换上你的用户名和密码,保存为.reg文件,双击导入注册表。
===================code begin=================
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]
"DefaultUserName"="这里改成你想自动登录的用户名"
"DefaultPassword"="这里改成用户对应的密码"
"AutoAdminLogon"="1"
  现在重新启动电脑看一下,就会发现系统能自动登录。

怎么设置系统自动登陆?

展开全部
将系统改为自动登录的运作方式有两种 *** 。
一种 *** 比较复杂,但可以帮助您完全掌握Windows
2003自动登录的设置 *** 。首先单击“开始运行”,在输入框中键入“regedit”打开注册表编辑器,然后在注册表编辑器左方控制台中依次单击展开“HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows
NT/Current
Version/Winlogon”,再选择“编辑添加字符串值”,在数值名称中键入“AutoAdminLogon”,然后在窗口中的空白位置上点一下,再双击刚新建的字符串“AutoAdminLogon”,在弹出的“编辑字符串”对话框中输入“1”设置系统允许自动登录。再重复以上的操作,创建一个名为“DefaultUserName”的字符串值,编辑字符串为您准备用于自动登录的账户名称。再新创建一个名为“DefaultpassWord”的字符串值,并编辑字符串为您准备用于自动登录的用户账户密码,编辑完并检查无误后,关闭注册表编辑器并重新启动电脑即可自动登录。注意,如果已有“DefaultUserName”,可以不必重新创建,直接更改原有字符串值。如果您的系统工作在局域网环境下,并且在登录到系统上时需要登录域服务器,那么您还需要再添加一个“DefaultDomainName”并编辑字符串为您登录的域名称。
另一种 *** 比较简单,您只需单击“开始运行”,并在输入框中键入“control
userpassWords2”,这样就可以在“用户账户”管理窗口中清除“要使用本机,用户必须输入密码”复选项的选中状态,然后按下键盘的“Ctrl+Shift+A”,将会得到一个“自动登录”的设置对话框(如图2),您可以按自己的需要设置系统在电脑启动时自动登录使用的用户账户和密码。

下面分享相关内容的知识扩展:

联想电脑系统自动后需要输入账号密码,我确定输入正确的,但就是登录不了,我该怎么办?

找一张系统光盘,或者U启也行,里面大多都带有“清除或者破解系统密码”的功能,删除密码重新设置就行了。

C#能不能做一个软件,在登录2003系统的时候,自动输入用户名和密码

C#能不能做一个软件,在登录2003系统的时候,自动输入用户名和密码?
就是有个软件能在登录2003系统的时候,自动输入之前设置好的用户名和密码,然后自动登录,不需要再用户输入?有没有这样的WINDOWS API?
如果C#没有的话,还有没有其它语言能这样实现的,谢各位了。
不是,我的意思是:
在你登录WIN 2003系统的时候,不是要输入用户名及密码啊,
我现在是想做一个软件,让这个软件自动输入WIN 2003系统的用户名及密码,而不用我自己去手动输入
是登录WIN 2003操作系统,看图。

如何实现自动登陆系统?怎么设置系统自动登陆?-第1张图片-技术汇

一、原理

在NT/2000/XP/2003中交互式的登陆支持是由WinLogon调用GINA DLL实现的,GINA DLL提供了一个交互式的界面为用户登陆提供认证请求。WinLogon会和GINA DLL进行交互,缺省是MSGINA.DLL(在System32目录下)。微软同时也为我们提供了接口,我们可以自己编写GINA DLL来代替MSGINA.DLL。

WinLogon初始化时会创建3个桌面:

winlogon桌面:主要显示Windows 安全等界面,如你按下CTRL+ALT+DEL,登陆的界面等

应用程序桌面:我们平时见到的那个有我的电脑的界面

屏幕保护桌面:屏幕保护显示界面。

在默认情况下,GINA显示登陆对话框,用户输入用户名及密码 。所以要获得用户名和密码 ,则可以写一个新的GINA DLL,其中提供接口调用msgina.dll的函数WlxLoggedOutSAS。

二、程序实现

GINA DLL要输出下列函数(winlogon会调用):

(表一)GINA 函数一览表

函数   描述

WlxActivateUserShell  激活用户外壳程序

WlxDisplayLockedNotice  允许GINA DLL 显示锁定信息

WlxDisplaySASNotice   当没有用户登陆时,Winlogon调用此函数

WlxDisplayStatusMessage  Winlogon 用一个状态信息调用此函数进行显示

WlxGetConsoleSwitchCredentials   Winlogon调用此函数读取当前登陆用户的信任信息,并透明地将它们传到目标会话

WlxGetStatusMessage   Winlogon 调用此函数获取当前状态信息

WlxInitialize   针对指定的窗口位置进行GINA DLL初始化

WlxIsLockOk   验证工作站正常锁定

WlxIslogoffOk   验证注销正常

WlxLoggedOnSAS   用户已登陆并且工作站没有被加锁,如果此时接收到SAS事件,则Winlogon 调用此函数

WlxLoggedOutSAS   没有用户登陆,如果此时收到SAS事件,则Winlogon 调用此函数, This indicates that a logon attempt should be made 。

WlxLogoff   请求注销操作时通知GINA DLL 

WlxNegotiate   表示当前的Winlogon版本是否能使用GINA DLL

WlxNetworkProviderLoad   在加载 *** 服务提供程序收集了身份和认证信息后,Winlogon 调用此函数

WlxRemoveStatusMessage   Winlogon 调用此函数告诉GINA DLL 停止显示状态信息

WlxScreensaverNotify   允许GINA与屏幕保护操作交互

WlxShutdown   在关闭之前Winlogon 调用此函数,允许GINA实现任何关闭任务,例如从读卡器中退出智能卡

WlxStartApplication   当系统需要在用户的上下文中启动应用程序时调用此函数

WlxWkstaLockedSAS  当工作站被锁定,如果接收到一个SAS,则Winlogon 调用此函数

为了简化编程,我们从MSGINA.DLL中动态获取上述函数,在自定义的DLL中(以下称为MyGina.DLL)中直接调用MSGINA.DLL的函数即可。现在我们要处理的就是WlxLoggedOutSAS函数:

int WINAPI WlxLoggedOutSAS(PVOID                pWlxContext,

         DWORD                dwSasType,

         PLUID                pAuthenticationId,

         PSID                 pLogonSid,

         PDWORD               pdwOptions,

         PHANDLE              phToken,

         PWLX_MPR_NOTIFY_INFO pMprNotifyInfo,

         PVOID *              pProfile)

{

//=========================加入我的登陆=========================

 Clogin login;

 if (login.DoModal()==IDCANCEL)

 {

   return WLX_SAS_ACTION_NONE;

 }

 if(login.bCLOSE==TRUE)

 {

  return WLX_SAS_ACTION_SHUTDOWN;

 }

 if(login.DoModal()==IDOK)

 {

  char UserName[40];

  char PassWord[40];

  char PassWord2[40];

  

  strcpy(UserName,theApp.MyUser);

  strcpy(PassWord,theApp.MyPass);

//为了便于演示,直接在程序里面比较密码,并且把默认管理员帐号设置为自动登陆

//自动登陆函数SetAutoLogon

  strcpy(PassWord2,theApp.MyPass2);

 //  AfxMessageBox(UserName);

 //  AfxMessageBox(PassWord);  

  if(!strcmp(UserName,"Administrator"))

   if(!strcmp(PassWord,"123"))

    if(!strcmp(PassWord2,"456"))

    {

     SetAutoLogon("administrator","","123");

     return theApp.MyWlxLoggedOutSAS(pWlxContext,dwSasType,pAuthenticationId,

    pLogonSid,pdwOptions,phToken,pMprNotifyInfo,pProfile);

    }

 }

 AfxMessageBox("密码或者用户名错误!不能登陆!");

 return WLX_SAS_ACTION_NONE;

}

然后设计登陆框,实现自己的界面。本示例如图所示。

三、安装和注意事项:

(一) 在编写GIAN DLL中要注意,GINA DLL使用的是unicode。

(二) 【安装】GINA DLL的安装:

1. 添加注册表

键名 :

\HKEY_LOCAL_MACHINE\Software\Microsoft\WindowsNT\CurrentVersion\Winlogon

变量名 : GinaDLL

变量类型 : [REG_SZ]

内容 : "你的GINA DLL的名称" 如:"MyGina.DLL:

2. 将你的GINA DLL(MyGina.dll)拷贝到系统目录下(system32);

3. 重启机器,你的GINA DLL(MyGina.dll)就会运行。

【注意】

1) 如果出现进不了你的系统,那你进入DOS后,将msgina.dll拷贝成你的GINA DLL(MyGina.dll)就可进入了;或者进入安全模式,删除掉那个键值( GinaDLL )。

2) Console 程序如果想使用MFC类,必须包含<afx.h>,同时注释掉<windows.h>。

3) 如果出现这种错误:“LINK : fatal error LNK1104: cannot open file "mfc42u.lib" ”,那么说明 lib路径的设置问题,你的链接器在指定的目录下没有找到这个的文件,你应该添加新的目录以便编译器找到所需的库文件。具 *** 置:IDE中菜单Tools\Options\Directories\show directories for\ <library files>。

4) 如果出现这种错误:“uafxcwd.lib(dllmodul.obj) : error LNK2005: _DllMain@12 already defined in main.obj ”或者“mfcs42ud.lib(dllmodul.obj) : error LNK2005: _DllMain@12 already defined in main.obj ”,那么“See if you have _AFXDLL and _USRDLL in the preprocessor definitions. Try removing one of them”。具 *** 置:IDE中 菜单Project \ Setting \ C/C++ \ preprocessor definition 。

如何实现自动登陆系统?怎么设置系统自动登陆?-第2张图片-技术汇

下面()是系统安装时自动创建的SQLSERVER登录名。

下面()是系统安装时自动创建的SQL SERVER登录名。

sa

guest

dbo

user



A