出處:中國(guó)IT實(shí)驗(yàn)室
: x( P5 Z, P) ~) E5 q2 o' u3 l3 P/ K" M9 f: Q& Y
個(gè)性化Windows XP客戶端的登錄界面 一般來說,XP客戶端登錄界面分為兩種,一種是使用“歡迎屏幕”;另一種是不使用“歡迎屏幕”的經(jīng)典登錄界面。大家都知道,XP系統(tǒng)一旦加入域后,就不再使用“歡迎屏幕”。所以,今天我們就來討論一下如何個(gè)性化域中的XP登錄界面。$ D5 k) Z( d ~7 Z/ p7 z/ R8 o, {
( @; A/ ~. p/ W# F 先讓大家先看一下,我們公司現(xiàn)在和以前使用過的XP個(gè)性化登錄界面。如圖1 28 V8 T4 l0 f8 z# r! d4 e; S
) A% z+ K$ R0 _' t; x+ [ 是不是還不錯(cuò)呢?其實(shí)做法很簡(jiǎn)單,下面我就一步一步來和大家分享一下如何操作% }4 B/ `8 ~$ J! r( F; x* |
% x2 `# s, q4 Z- [9 L1 R; K / ^9 Q3 T4 d4 k( z/ u, _
3 R" ]8 s6 s7 t" r6 J" I0 n
: N$ I- i/ L* a4 z1 Q! _% z9 x& J) j9 G% @' q' b- M F3 z
在正式操作之前,我想先和大家介紹一下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)識(shí)和身份驗(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ù)控制臺(tái)、PE系統(tǒng)或者類似NTFSDOS的工具來實(shí)現(xiàn),比較麻煩,而且極有可能影響系統(tǒng)的穩(wěn)定。這種做法不值得推薦給大家。
# ^7 V) _& k1 ^/ V1 R$ _; c5 A7 W% f9 {, E
不過微軟還算厚道,在注冊(cè)表里留了一個(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。
% U5 i# z: X, O4 \5 u! n; i. O. j0 V" F. j( G% O ~
OK,下面是具體操作步驟:, u) x& \6 l8 X, r8 z- U, ]
1. 將XP系統(tǒng)中的C:\WINDOWS\system32\msgina.dll這個(gè)文件復(fù)制一份出來,用于編輯之用,并且重命名為重命名為XPGina.dll(名字隨便取啦)& r5 V$ I2 v% D) ^6 z$ q- ~
y8 H" O Q+ n: E& O+ d 2. 用ResHacker或者Exescope(我這里使用ResHacker給大家做演示)打開XPGina.dll后,展開“位圖”,在“101”,“107”下面均有個(gè)“2052”。如圖3所示
c) m: p1 Y- \1 i% z' x8 l2 V' z8 D/ C- ~5 {. Y
3. 我們的目標(biāo)就是替換這兩個(gè)地方的圖片。其中101處的圖片大小為 413*72,用于用戶登錄過程和鎖定畫面;107 則是個(gè)較大的位圖,格式為 413*88,用于登陸驗(yàn)證的畫面。請(qǐng)盡量保持新圖片的大小和系統(tǒng)自帶圖片大小的一致性,否則很影響美觀性。
4 ?: I4 B9 C- f, E* I- k, |/ D. P+ T
3 G+ w S6 [5 ?/ I! z% b+ i 4. 我以101為例來說明如何替換這個(gè)圖片。點(diǎn)擊ResHacker的“操作”按鈕,選擇“替換位圖”。如圖4." g9 w H8 ]! y' M2 E- w; [
5 D; x$ E/ m+ {( U0 a0 z7 m4 ~ 然后選擇“打開新位圖文件”,打開你事先準(zhǔn)備好的,經(jīng)過你無限創(chuàng)意的位圖圖片(大小413*72),點(diǎn)擊“替換即可”。如圖5和6。* |. r0 O3 B' x+ B# A$ t
5. 107的替換步驟就不再贅述了,和前面的操作步驟完全一樣。只不過圖片選擇413*88的那張。" I1 U: q3 M, S' o
" I1 T. G9 T3 S% d7 D2 Y 6. 全部修改完以后,點(diǎn)擊ResHacker的“文件”,“保存”即可。這樣,這個(gè)文件就被我們處理好了。 , W# t! m$ B0 d# `1 N) O
) Z- ` ~$ ^* }! S' Q
; w, v! A; M, W' G9 c! _$ {; F
2 u* a- S# {- A |% _ u, L3 \& K% t
6 N; B' F8 N4 R3 }/ B 8 Z3 ?/ `) R/ S9 `. c3 A* u( `
1 }4 p/ V2 a5 u& a- D- N3 i
0 I; z% e$ v$ s! v v
' g0 ^8 I! S6 [2 t$ T 個(gè)性化的文件我們已經(jīng)有了,但是如何讓操作系統(tǒng)啟動(dòng)的時(shí)候調(diào)用這個(gè)文件呢?其實(shí),我在前面已經(jīng)說過了,在注冊(cè)表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)吧。1 p# s9 x4 ]% F9 {$ ]
. r2 E9 \3 y1 n1 _ d8 J- A
操作已經(jīng)接近尾聲了,但是如何在公司的機(jī)器上大規(guī)模部署起來呢?總不能一個(gè)一個(gè)的去客戶端做注冊(cè)表修改吧?!當(dāng)然不必!我們可以使用啟動(dòng)腳本、ADM模板來批量操作。下面我貼出我們公司目前的啟動(dòng)腳本文件:
) T2 S7 V! q' d$ _. S( D# e O& n9 q5 R
@echo off7 H' c9 O, k5 C2 b( g* Y: {7 Q
if exist c:\windows\XPGina.dll (
! X- w& M/ ^0 n/ q: g echo Windows Registry Editor Version 5.00 >> .\reg.reg
& N, u# I; W! i: y! W6 v echo . >> .\reg.reg, m& D& V8 e6 S6 |
echo [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon] >> .\reg.reg
C; D$ M, b' k- a echo "LogonPrompt"=" 祝您工作順心!" >> .\reg.reg3 N0 }8 P) ] h {% ~5 h% N, {
echo "Welcome"="(BY IT支持維護(hù))" >> .\reg.reg
( }: n0 J8 g& I echo "GinaDLL"="c:\\windows\\XPGina.dll" >> .\reg.reg5 b* W$ B, |/ Z, K. E
regedit /s .\reg.reg
9 K( _8 @' S$ d6 k: k" M$ q2 e! \ del /F .\reg.reg6 L: `; w; D$ U/ `; g3 [- u- d
) else (3 @$ L" a- M J" p, d& B! \" U: A
net use z: /del
% j7 Z, Q0 X' D( z net use z: \\FileServer\\Share "password" /user:username@yourdomain.com
b& ~4 \8 w. @3 c0 ^/ U copy z:\ XPGina.dll "c:\windows\XPGina.dll" /n$ O: F" F, O9 P( H v
net use z: /del0 p+ h4 J, f! q. s) n# h+ r
)
3 j/ Y& w8 \6 F! V/ Q2 D; z
7 z# m: q1 t6 I, N2 Z _% n& |+ q2 k 對(duì)以上批處理文件,我稍微做一下解釋。大致思路是先檢查C盤Windows目錄下是否有XPGina.dll這個(gè)文件,如果沒有就從Z盤拷貝(Z盤是從文件共享服務(wù)器FileServer上映射的一個(gè)網(wǎng)絡(luò)驅(qū)動(dòng)器),拷貝完成后再斷開驅(qū)動(dòng)器的映射。如果有,就導(dǎo)入reg.reg注冊(cè)表。至于注冊(cè)表中具體寫的什么內(nèi)容,相信大家從批處理文件中一看就可以看出來。導(dǎo)入完成以后就刪除該注冊(cè)表文件。, P# E* P8 u+ q- p2 f, s
* C- I7 Q4 q: T4 K* h# U" F! a 順便稍上40樓朋友給我們帶來的刪除前面注冊(cè)表操作的批處理腳本,這樣就可以回滾操作了,; Q2 F0 k, R+ W7 k1 E
. Z( t; A4 o9 M" |- X @echo off1 e3 t" { X3 m! t% ] I: ?
if exist %SystemRoot%\XPGina.dll (+ r1 J( Y. F* r, w
echo Windows Registry Editor Version 5.00 >> .\reg.reg
4 @5 O, T) h1 R echo . >> .\reg.reg3 Y6 e, j, E6 \1 V
echo [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon] >> .\reg.reg- V3 L2 H5 F" K! J+ Q3 s. f) L
echo "LogonPrompt"=- >> .\reg.reg
8 \' T/ h1 I$ D. s* E, V echo "Welcome"=- >> .\reg.reg& Z% `5 |7 m) S6 z: q6 F
echo "GinaDLL"=- >> .\reg.reg0 p" X8 V3 y/ o2 ? D1 n
regedit /s .\reg.reg
$ p9 \! o3 H, ~$ I9 C: { del /F .\reg.reg& F8 q3 `( @, j2 M3 u6 t" a
) else (' ~6 N6 z6 Y/ J. e0 {9 R& K( X
del "%SystemRoot%\XPGina.dll" /F
y/ G- G! b" u3 _- x )) B O$ @: ]1 V' [
, k+ z( {% I' N* ~; q: T 最后,整個(gè)操作步驟我還想補(bǔ)充幾點(diǎn)說明:1 Q: e' j& j+ X+ M3 d% J
. ], K# D- Z0 d% H7 H 1. 操作系統(tǒng)不同,需要替換的位圖文件的位置也不同,例如,XP是替換101和107,而2003就未必是這個(gè)地方了。不要試圖用XP的GINADLL文件用在2003上,否則2003的登錄界面很難看,其實(shí)也說不上難看,只是圖片不是我們預(yù)期的圖片。; ^. F* B" y2 |0 O- [2 X! t
* w$ S. x \: v4 |2 m: R
2. 在批量實(shí)施的時(shí)候,請(qǐng)用啟動(dòng)或關(guān)機(jī)腳本。否則可能會(huì)因?yàn)闄?quán)限問題,無法寫進(jìn)注冊(cè)表數(shù)據(jù)。9 `. M+ D7 K6 I; a* v- S6 V: n
# J3 h( Q0 ~0 U5 v
3. 在純安全模式下,個(gè)性化界面不會(huì)生效。這也就給了當(dāng)我們遇到第4點(diǎn)中的問題時(shí)提供了操作可能。, z1 ]) ]$ y4 Q& }; ?
) q0 P( S, H, y- z, V' M2 q3 x 4. 如果遇到應(yīng)用錯(cuò)誤或者不想使用個(gè)性化登錄界面,請(qǐng)直接刪除注冊(cè)表中HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon下的GinaDLL。重新啟動(dòng)計(jì)算機(jī)就行了。' [! M7 z) \4 Q" C
& d. F& R: [( k' u$ N2 D, s OK,整個(gè)步驟到此就結(jié)束了,雖然沒有什么技術(shù)含量,但是我敢保證,如果你在公司所有的計(jì)算機(jī)上都個(gè)性化了登錄界面,例如加上公司的logo,那么一定會(huì)給同事們或老板耳目為之一新的感覺。記得有家公司來我們公司參觀的時(shí)候,看到個(gè)性化登錄界面后,問我們公司是不是和番茄花園合作,做了系統(tǒng)美化。 |