本文主要介紹Gina.dll登錄功能的注冊(cè)表實(shí)現(xiàn),在前文中,我們知道WlxLoggedOutSAS與WlxActivateUserShell函數(shù)分為登錄之前的處理函數(shù)與登錄之后的處理函數(shù)。于是,我們就可以結(jié)合注冊(cè)表的一些功能來(lái)實(shí)現(xiàn)Gina.dll的登錄。
首先,在注冊(cè)表中,記錄著所有與Winlogon以及Gina登錄的信息。不過(guò),以下幾個(gè)值是比較有用的:
\HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Winlogon
1. SetAutoLogon
這個(gè)值如果為1,則自動(dòng)登錄;如果為0,則顯示登錄框
2. DefaultUserName
登錄框默認(rèn)用戶(hù)名
3. DefaultPassword
登錄框的默認(rèn)密碼
4. DefaultDomainName
默認(rèn)的登錄域
因此,當(dāng)我們把SetAutoLogon設(shè)置為1,同時(shí)設(shè)置正確的用戶(hù)名以及密碼(必須是正確的用戶(hù)名以及密碼,不然會(huì)提示密碼錯(cuò)誤),就可以實(shí)現(xiàn)自動(dòng)登錄。那么,如果在WlxLoggedOutSAS函數(shù)中,對(duì)用戶(hù)身份校驗(yàn)成功之后,就可以在注冊(cè)表中設(shè)置以前幾個(gè)值,然后調(diào)用msgina.dll就可以實(shí)現(xiàn)自動(dòng)登錄,一旦登錄成功后,WlxActivateUserShell就會(huì)被調(diào)用,我們可以在WlxActivateUserShell中將注冊(cè)表中以上位置的那些值刪除,然后丟給msgina.dll處理。
這種辦法在WinXP是測(cè)試通過(guò),并且,根據(jù)筆者的測(cè)試發(fā)現(xiàn)IBM ThinkPad的指紋登錄軟件的gina.dll就是通過(guò)以上的方法來(lái)實(shí)現(xiàn)的。
作者:Gezidan
本文版權(quán)歸作者和博客園共有,歡迎轉(zhuǎn)載,但未經(jīng)作者同意必須保留此段聲明,且在文章頁(yè)面明顯位置給出原文連接,否則保留追究法律責(zé)任的權(quán)利。
posted on 2011-08-03 13:42
日需博客 閱讀(1054)
評(píng)論(0) 編輯 收藏 引用 所屬分類(lèi):
Windows 、
技術(shù)文章 、
轉(zhuǎn)載