出處:中國IT實(shí)驗(yàn)室
) O) s; X+ V' d% u! H: X9 y6 i/ _3 T0 H9 Z' N
個(gè)性化Windows XP客戶端的登錄界面 一般來說,XP客戶端登錄界面分為兩種,一種是使用“歡迎屏幕”;另一種是不使用“歡迎屏幕”的經(jīng)典登錄界面。大家都知道,XP系統(tǒng)一旦加入域后,就不再使用“歡迎屏幕”。所以,今天我們就來討論一下如何個(gè)性化域中的XP登錄界面。
0 A" `+ x1 h \) o. q8 M# v! W5 b* {& p
先讓大家先看一下,我們公司現(xiàn)在和以前使用過的XP個(gè)性化登錄界面。如圖1 2
! z6 u2 d0 O( U" O
: K: t7 A( ^1 n9 | 是不是還不錯(cuò)呢?其實(shí)做法很簡單,下面我就一步一步來和大家分享一下如何操作# X& U" f% ~6 I: [0 H: ?
$ O: V* t0 V: [7 d+ a
7 M6 z( X: @4 u7 w* M7 d* E
; a4 N5 o3 U$ k: l/ Q9 z " \ S( d1 L) y' E
% X( E+ t6 w) \) _( C 在正式操作之前,我想先和大家介紹一下Gina這個(gè)東西。為什么要介紹這個(gè)呢?因?yàn)槲覀兘裉熳龅膫€(gè)性化設(shè)置就是修改Gina來實(shí)現(xiàn)的。它是干什么用的呢?一言以蔽之,它是專門用來進(jìn)行登錄進(jìn)程的驗(yàn)證和身份驗(yàn)證的。從它的英文全稱Graphical Identification and Authentication(圖形標(biāo)識和身份驗(yàn)證)就可以看出它的用途。Gina的功能實(shí)現(xiàn)是依靠C:\WINDOWS\system32\msgina.dll這個(gè)動(dòng)態(tài)鏈接文件來實(shí)現(xiàn)的。這個(gè)文件包含了默認(rèn)的Windows登錄界面。可以自己開發(fā)GINA DLL,以實(shí)現(xiàn)其他的身份驗(yàn)證方法,例如某些磁卡、智能卡驗(yàn)證、動(dòng)態(tài)令牌驗(yàn)證等。我們今天就準(zhǔn)備修改這個(gè)文件的內(nèi)容來達(dá)到個(gè)性化的目的。不過這個(gè)文件是受保護(hù)的系統(tǒng)文件,想要徹底修改替換它也不怎么容易。需要借助故障恢復(fù)控制臺、PE系統(tǒng)或者類似NTFSDOS的工具來實(shí)現(xiàn),比較麻煩,而且極有可能影響系統(tǒng)的穩(wěn)定。這種做法不值得推薦給大家。4 U1 t+ q8 H* P( f: q9 e0 j Q8 }
+ t# o; R: l0 ~2 e 不過微軟還算厚道,在注冊表里留了一個(gè)位置用于安裝GINA,在HKLM\Software\MicrosoftWindows NT\CurrentVersion\Winlogon下設(shè)置GINADLL為你指定的GINA DLL,(注意:GINADLL這個(gè)值缺省沒有,需要新建)如果設(shè)置了這個(gè)值,系統(tǒng)會(huì)先調(diào)用該GINA,而不會(huì)調(diào)用缺省的msGINA.dll。& S5 `8 D* u5 b3 A
! L8 K% ^! a! w6 Q/ v w OK,下面是具體操作步驟:1 I6 b. [0 `. ^
1. 將XP系統(tǒng)中的C:\WINDOWS\system32\msgina.dll這個(gè)文件復(fù)制一份出來,用于編輯之用,并且重命名為重命名為XPGina.dll(名字隨便取啦)
9 k# V3 e9 P: N+ b u) s' W x9 f: v7 ^
2. 用ResHacker或者Exescope(我這里使用ResHacker給大家做演示)打開XPGina.dll后,展開“位圖”,在“101”,“107”下面均有個(gè)“2052”。如圖3所示+ n# F9 {6 t. D5 m
! l5 n- j4 h( s4 |! Z& { 3. 我們的目標(biāo)就是替換這兩個(gè)地方的圖片。其中101處的圖片大小為 413*72,用于用戶登錄過程和鎖定畫面;107 則是個(gè)較大的位圖,格式為 413*88,用于登陸驗(yàn)證的畫面。請盡量保持新圖片的大小和系統(tǒng)自帶圖片大小的一致性,否則很影響美觀性。) Q& a9 j; i @
c( e$ B* j" P; ~6 D 4. 我以101為例來說明如何替換這個(gè)圖片。點(diǎn)擊ResHacker的“操作”按鈕,選擇“替換位圖”。如圖4.7 {9 s* ~7 J2 m4 m, V
' P1 O }% Q" L: O! L6 H# `
然后選擇“打開新位圖文件”,打開你事先準(zhǔn)備好的,經(jīng)過你無限創(chuàng)意的位圖圖片(大小413*72),點(diǎn)擊“替換即可”。如圖5和6。
! ]- m& |+ e* c 5. 107的替換步驟就不再贅述了,和前面的操作步驟完全一樣。只不過圖片選擇413*88的那張。
" z' I$ ~4 ^7 y& o6 d' w
7 T# z& Y5 e2 Q2 w! K 6. 全部修改完以后,點(diǎn)擊ResHacker的“文件”,“保存”即可。這樣,這個(gè)文件就被我們處理好了。
) m. r R9 b6 T M * w$ a3 u# `/ E; m
+ c ]2 x# z. T! ^- w( u
* i3 @) \6 t7 e0 p& _; t3 |4 x( ~3 C6 Z# x! O( O* f+ C' {
9 X0 B2 w0 C" E1 y4 ~- {
! M# Y7 x, f- |6 e2 U( W0 n
% H2 P( d" Z1 D, I
Q: D3 f. I$ i7 q# o, `4 F* u. J" ]! W+ H0 U _. ]
個(gè)性化的文件我們已經(jīng)有了,但是如何讓操作系統(tǒng)啟動(dòng)的時(shí)候調(diào)用這個(gè)文件呢?其實(shí),我在前面已經(jīng)說過了,在注冊表HKLM\Software\MicrosoftWindows NT\CurrentVersion\Winlogon值下新建一個(gè)REG_SZ的字符串值,將內(nèi)容設(shè)置為C:\windows\XPGina.dll(前提是確保這個(gè)個(gè)性化文件在這個(gè)路徑中,否則系統(tǒng)啟動(dòng)的時(shí)候會(huì)找不到這個(gè)文件而報(bào)錯(cuò))。重新啟動(dòng)計(jì)算機(jī)就可以看到你的勞動(dòng)成果了,很激動(dòng)吧。
# I4 O, M' i; Y4 t* _5 ]
7 r4 t9 ?/ X8 e5 ~ 操作已經(jīng)接近尾聲了,但是如何在公司的機(jī)器上大規(guī)模部署起來呢?總不能一個(gè)一個(gè)的去客戶端做注冊表修改吧?!當(dāng)然不必!我們可以使用啟動(dòng)腳本、ADM模板來批量操作。下面我貼出我們公司目前的啟動(dòng)腳本文件:& W4 e/ V: `( D2 l$ a1 {# h8 G; K
3 t0 \0 y/ J1 Y7 r* x4 h @echo off* m- P: ^3 r* |
if exist c:\windows\XPGina.dll (9 V6 ~; X" }1 k9 p9 O7 D
echo Windows Registry Editor Version 5.00 >> .\reg.reg" c& m6 X. l+ g8 D& s) J- }' r
echo . >> .\reg.reg
1 K, d. h( F7 f" Y8 q6 f g echo [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon] >> .\reg.reg/ M" U8 ]# G6 L2 B- {
echo "LogonPrompt"=" 祝您工作順心!" >> .\reg.reg
4 Y: S& K7 x4 Y) q! X2 j c echo "Welcome"="(BY IT支持維護(hù))" >> .\reg.reg
! I7 c" R( ?8 S9 ~" o0 U ` echo "GinaDLL"="c:\\windows\\XPGina.dll" >> .\reg.reg' |0 M4 \) Q+ Z6 [; t
regedit /s .\reg.reg& J) I, G, e1 }3 G1 A- J
del /F .\reg.reg
. T% T/ f% _9 F$ z3 ^" ], _( F. q7 Q ) else (
0 Q0 B# q( @1 p* w- t net use z: /del% F, V' W& X, W2 \/ n. |) N% F
net use z: \\FileServer\\Share "password" /user:username@yourdomain.com
) a k/ O! x+ A' ^ copy z:\ XPGina.dll "c:\windows\XPGina.dll" /n
2 ?7 J; Y$ H* L) E+ k net use z: /del
8 ]" S: H' Y; y! t6 V, N; B )
1 i0 d% ?0 @9 Z2 N
; D; ]6 o1 i. p$ s# U" b! ^ 對以上批處理文件,我稍微做一下解釋。大致思路是先檢查C盤Windows目錄下是否有XPGina.dll這個(gè)文件,如果沒有就從Z盤拷貝(Z盤是從文件共享服務(wù)器FileServer上映射的一個(gè)網(wǎng)絡(luò)驅(qū)動(dòng)器),拷貝完成后再斷開驅(qū)動(dòng)器的映射。如果有,就導(dǎo)入reg.reg注冊表。至于注冊表中具體寫的什么內(nèi)容,相信大家從批處理文件中一看就可以看出來。導(dǎo)入完成以后就刪除該注冊表文件。
9 r: P- U) Q" x J9 }
. c) r5 `. Y2 f7 S& ` 順便稍上40樓朋友給我們帶來的刪除前面注冊表操作的批處理腳本,這樣就可以回滾操作了,
) d( x6 h# q: N, z$ r' G5 _6 `( B
@echo off! N6 n+ }" ^+ b* o
if exist %SystemRoot%\XPGina.dll ( J4 A. K$ f- R Q, e! N
echo Windows Registry Editor Version 5.00 >> .\reg.reg
6 e. B# p V- v, P echo . >> .\reg.reg
& v$ V0 S3 R5 I8 u9 v echo [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon] >> .\reg.reg5 u5 j8 @/ D/ v' ~2 ~
echo "LogonPrompt"=- >> .\reg.reg5 ^9 @, |( ~" z& `, _
echo "Welcome"=- >> .\reg.reg5 l- r* _# i8 R1 _0 }+ M
echo "GinaDLL"=- >> .\reg.reg
# t+ w# G& \% h regedit /s .\reg.reg
@3 \& x) ]7 B/ C5 f del /F .\reg.reg6 A: r+ e) T |/ P9 i
) else (6 W4 N, m& d" t' C$ L5 y* S
del "%SystemRoot%\XPGina.dll" /F1 x- Z1 V Z! q' n E. J; m7 k5 p' I
)
6 h$ ^7 S6 g e7 |1 n0 o* |$ ^' s8 S2 ^! C l! M
最后,整個(gè)操作步驟我還想補(bǔ)充幾點(diǎn)說明:7 J, v" I- _# m6 p
. v5 t! q8 N7 H3 O0 F
1. 操作系統(tǒng)不同,需要替換的位圖文件的位置也不同,例如,XP是替換101和107,而2003就未必是這個(gè)地方了。不要試圖用XP的GINADLL文件用在2003上,否則2003的登錄界面很難看,其實(shí)也說不上難看,只是圖片不是我們預(yù)期的圖片。! y, ?6 Z$ ^: l( W. B5 n7 s: J; r+ J: a
6 [ P5 u. y9 y) T7 U$ \
2. 在批量實(shí)施的時(shí)候,請用啟動(dòng)或關(guān)機(jī)腳本。否則可能會(huì)因?yàn)闄?quán)限問題,無法寫進(jìn)注冊表數(shù)據(jù)。3 ? p6 }3 a$ }& B2 ~- p9 Z
6 Y9 A6 S1 l+ D8 u2 J/ W
3. 在純安全模式下,個(gè)性化界面不會(huì)生效。這也就給了當(dāng)我們遇到第4點(diǎn)中的問題時(shí)提供了操作可能。
" k# V9 g) V9 V
2 t0 J+ L2 P/ Y: i- R4 Q, i 4. 如果遇到應(yīng)用錯(cuò)誤或者不想使用個(gè)性化登錄界面,請直接刪除注冊表中HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon下的GinaDLL。重新啟動(dòng)計(jì)算機(jī)就行了。
! f: ?) [. a# j1 n, r3 S. C5 r( b' y3 x. a4 f% R# u7 Y4 D
OK,整個(gè)步驟到此就結(jié)束了,雖然沒有什么技術(shù)含量,但是我敢保證,如果你在公司所有的計(jì)算機(jī)上都個(gè)性化了登錄界面,例如加上公司的logo,那么一定會(huì)給同事們或老板耳目為之一新的感覺。記得有家公司來我們公司參觀的時(shí)候,看到個(gè)性化登錄界面后,問我們公司是不是和番茄花園合作,做了系統(tǒng)美化。 |