天天爱天天做天天做天天吃中文|久久综合给久合久久综合|亚洲视频一区二区三区|亚洲国产综合精品2022

  • 
    
    <delect id="ixd07"></delect>

      汶上信息港

      標(biāo)題: 打造自己的XP客戶端的登錄界面 [打印本頁(yè)]

      作者: 520    時(shí)間: 2009-4-16 10:26
      標(biāo)題: 打造自己的XP客戶端的登錄界面
      出處:中國(guó)IT實(shí)驗(yàn)室7 b2 g  J9 j  w6 R: S# x
      + h/ l; y& v, a0 [9 |# ]# n
             個(gè)性化Windows XP客戶端的登錄界面     一般來(lái)說(shuō),XP客戶端登錄界面分為兩種,一種是使用“歡迎屏幕”;另一種是不使用“歡迎屏幕”的經(jīng)典登錄界面。大家都知道,XP系統(tǒng)一旦加入域后,就不再使用“歡迎屏幕”。所以,今天我們就來(lái)討論一下如何個(gè)性化域中的XP登錄界面。
      ) m. G  w, D0 C  v7 |
      8 O$ Q; k8 g- |. R" i. X       先讓大家先看一下,我們公司現(xiàn)在和以前使用過(guò)的XP個(gè)性化登錄界面。如圖1 2
      0 H* ?9 H! s% `# x6 q& w* @7 C2 J: ]' g: h+ w9 v9 z, R7 l
             是不是還不錯(cuò)呢?其實(shí)做法很簡(jiǎn)單,下面我就一步一步來(lái)和大家分享一下如何操作
      ! N, J# T6 H7 P& g& D$ l: T& T' E   
      ) [8 x; V! i2 d2 ^# C

      3 `1 S9 P8 j% G8 @7 \$ E' K, _3 {. V 5 f* y- z  J# `2 i
      - C) ]7 C8 u" l& r( [
      1 C7 T* v9 @$ ~
             在正式操作之前,我想先和大家介紹一下Gina這個(gè)東西。為什么要介紹這個(gè)呢?因?yàn)槲覀兘裉熳龅膫€(gè)性化設(shè)置就是修改Gina來(lái)實(shí)現(xiàn)的。它是干什么用的呢?一言以蔽之,它是專門用來(lái)進(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)鏈接文件來(lá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)容來(lái)達(dá)到個(gè)性化的目的。不過(guò)這個(gè)文件是受保護(hù)的系統(tǒng)文件,想要徹底修改替換它也不怎么容易。需要借助故障恢復(fù)控制臺(tái)、PE系統(tǒng)或者類似NTFSDOS的工具來(lái)實(shí)現(xiàn),比較麻煩,而且極有可能影響系統(tǒng)的穩(wěn)定。這種做法不值得推薦給大家。
      # W4 J$ x. D2 ~+ \+ T% {( q' D- j, @
             不過(guò)微軟還算厚道,在注冊(cè)表里留了一個(gè)位置用于安裝GINA,在HKLM\Software\MicrosoftWindows NT\CurrentVersion\Winlogon下設(shè)置GINADLL為你指定的GINA DLL,(注意:GINADLL這個(gè)值缺省沒(méi)有,需要新建)如果設(shè)置了這個(gè)值,系統(tǒng)會(huì)先調(diào)用該GINA,而不會(huì)調(diào)用缺省的msGINA.dll。
      3 Q4 ~0 @  Y- Q" ^' E1 {" k: R. q' V2 B' N2 P( a
             OK,下面是具體操作步驟:
      . ], o* s- x6 P2 Q7 h       1.        將XP系統(tǒng)中的C:\WINDOWS\system32\msgina.dll這個(gè)文件復(fù)制一份出來(lái),用于編輯之用,并且重命名為重命名為XPGina.dll(名字隨便取啦)  C& r* C- l; b& s

      6 s! _6 y& E, e# M       2.        用ResHacker或者Exescope(我這里使用ResHacker給大家做演示)打開XPGina.dll后,展開“位圖”,在“101”,“107”下面均有個(gè)“2052”。如圖3所示
      ! E- j4 P5 q- v! W, f5 @# @% F; Z- C0 g0 {3 }  x
             3.        我們的目標(biāo)就是替換這兩個(gè)地方的圖片。其中101處的圖片大小為 413*72,用于用戶登錄過(guò)程和鎖定畫面;107 則是個(gè)較大的位圖,格式為 413*88,用于登陸驗(yàn)證的畫面。請(qǐng)盡量保持新圖片的大小和系統(tǒng)自帶圖片大小的一致性,否則很影響美觀性。
      ( p% p" H$ A% a6 r9 N% t" G; s: J. A0 x
             4.        我以101為例來(lái)說(shuō)明如何替換這個(gè)圖片。點(diǎn)擊ResHacker的“操作”按鈕,選擇“替換位圖”。如圖4.8 B, y* @8 o9 b* z3 `
      3 ~2 X- n6 m) g; P6 f
                    然后選擇“打開新位圖文件”,打開你事先準(zhǔn)備好的,經(jīng)過(guò)你無(wú)限創(chuàng)意的位圖圖片(大小413*72),點(diǎn)擊“替換即可”。如圖5和6。
        ?& t0 S! K# @$ {       5.        107的替換步驟就不再贅述了,和前面的操作步驟完全一樣。只不過(guò)圖片選擇413*88的那張。+ O0 V: ~1 v* ^% u& b

        n# b& b, m( \4 }3 L       6.        全部修改完以后,點(diǎn)擊ResHacker的“文件”,“保存”即可。這樣,這個(gè)文件就被我們處理好了。
      0 _6 a6 T! g; S   ( A" ~: |5 m* i" \) p& T, C

      $ I3 f( c/ J$ K4 V% L* v1 B% C3 S# h, I8 W# Q5 r

      6 c% E5 B& m3 m+ |+ Q9 V1 [- M5 x( Q/ ~: K$ Q) O
      0 u8 E0 Z: o* V9 o6 d  R
        ' `0 L: t1 A' I6 p7 T- U% p

      3 s1 s* i4 A6 D  E. v" h4 d
      % W# P) u4 [8 p/ l5 C2 @       個(gè)性化的文件我們已經(jīng)有了,但是如何讓操作系統(tǒng)啟動(dòng)的時(shí)候調(diào)用這個(gè)文件呢?其實(shí),我在前面已經(jīng)說(shuō)過(guò)了,在注冊(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)吧。
      $ N& E6 K! K7 a4 F/ @- t
      % X% ~) M8 J& H1 Y( Q& ]       操作已經(jīng)接近尾聲了,但是如何在公司的機(jī)器上大規(guī)模部署起來(lái)呢?總不能一個(gè)一個(gè)的去客戶端做注冊(cè)表修改吧?!當(dāng)然不必!我們可以使用啟動(dòng)腳本、ADM模板來(lái)批量操作。下面我貼出我們公司目前的啟動(dòng)腳本文件:' r; f8 x( h9 n
      ' Y8 @7 g9 l4 a
          @echo off
      3 G& t. s# g( _3 n" q, s6 a: m% H    if exist c:\windows\XPGina.dll (
      * _+ f7 C4 {. a( p- o; O: _    echo Windows Registry Editor Version 5.00 >> .\reg.reg7 E: i  R  V' i$ \. w9 q" X
          echo . >> .\reg.reg
      , |+ L+ B% G. C: e" ^9 Q! K    echo [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon] >> .\reg.reg
      ' f: k8 w3 ?! f* K( T    echo "LogonPrompt"="                         祝您工作順心!" >> .\reg.reg
      . O" y' ~. f/ _* p+ \0 @    echo "Welcome"="(BY IT支持維護(hù))" >> .\reg.reg' p( q% v4 g+ [8 u' j
          echo "GinaDLL"="c:\\windows\\XPGina.dll" >> .\reg.reg
        a4 R% w& L( g% m, b8 b    regedit /s .\reg.reg
      ; V' g, i# B$ E0 H- p6 E    del /F .\reg.reg0 y! J$ n! p3 L) W2 t
          ) else (
      / u* A& H+ O/ u* N# A3 v    net use z: /del/ V8 D4 E) I! a( F' p0 @
          net use z: \\FileServer\\Share  "password" /user:username@yourdomain.com$ I+ x; C! o+ `% C5 f+ \8 b5 C
          copy z:\ XPGina.dll "c:\windows\XPGina.dll" /n9 h) R* I9 i. J4 ^
          net use z: /del2 R5 s) D9 ^- ^) u. f, H$ z
          )8 d) H0 Q. d( {- K

      * c, G& I3 e% m0 M6 E3 S       對(duì)以上批處理文件,我稍微做一下解釋。大致思路是先檢查C盤Windows目錄下是否有XPGina.dll這個(gè)文件,如果沒(méi)有就從Z盤拷貝(Z盤是從文件共享服務(wù)器FileServer上映射的一個(gè)網(wǎng)絡(luò)驅(qū)動(dòng)器),拷貝完成后再斷開驅(qū)動(dòng)器的映射。如果有,就導(dǎo)入reg.reg注冊(cè)表。至于注冊(cè)表中具體寫的什么內(nèi)容,相信大家從批處理文件中一看就可以看出來(lái)。導(dǎo)入完成以后就刪除該注冊(cè)表文件。) w+ Z: h! ~  }+ v) O
      , j: ?& ~$ z- i  M' n- r0 T
             順便稍上40樓朋友給我們帶來(lái)的刪除前面注冊(cè)表操作的批處理腳本,這樣就可以回滾操作了,# \( G' ~7 g+ E* B5 }1 |- Y

      % W% Z" D5 [+ L7 a( a8 ~    @echo off. s# |3 ^, g0 g* I/ ^( u6 A
          if exist %SystemRoot%\XPGina.dll (5 i, M, w; A) _5 o5 A
          echo Windows Registry Editor Version 5.00 >> .\reg.reg
      2 m! Q  l+ D. s; ?+ w: E, E    echo . >> .\reg.reg
      3 [: \' `: z; U' g; {, k    echo [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon] >> .\reg.reg+ U4 f# I: @# r$ H
          echo "LogonPrompt"=- >> .\reg.reg# Q! d) {1 `. ^; B8 B. X7 O
          echo "Welcome"=- >> .\reg.reg% u; h+ R0 h, C/ n
          echo "GinaDLL"=- >> .\reg.reg
      : L: J' {/ |' G8 C0 W" m5 x6 v    regedit /s .\reg.reg
      ( p  ]' @4 E4 r% K4 F+ i    del /F .\reg.reg3 M5 O2 I. {3 p/ f
          ) else (1 F0 O5 o- @2 ~9 \- W
          del "%SystemRoot%\XPGina.dll" /F
      0 }0 ?. p& |+ m1 J% p6 V    )$ U- D0 i/ d: A  e9 d! w1 o/ `. m  E& X

      " p9 n  s- v2 w5 G# y" g7 }9 h: j       最后,整個(gè)操作步驟我還想補(bǔ)充幾點(diǎn)說(shuō)明:+ q" d/ \% n) q

      0 E; o% x% G% p3 [, s( _       1.        操作系統(tǒng)不同,需要替換的位圖文件的位置也不同,例如,XP是替換101和107,而2003就未必是這個(gè)地方了。不要試圖用XP的GINADLL文件用在2003上,否則2003的登錄界面很難看,其實(shí)也說(shuō)不上難看,只是圖片不是我們預(yù)期的圖片。
      + y9 {! I: y0 s1 X
      & \& O& Y& V) V/ X       2.        在批量實(shí)施的時(shí)候,請(qǐng)用啟動(dòng)或關(guān)機(jī)腳本。否則可能會(huì)因?yàn)闄?quán)限問(wèn)題,無(wú)法寫進(jìn)注冊(cè)表數(shù)據(jù)。7 B  f: L9 Z( _4 Y, u

      ( P/ u/ A( ]0 e- f: }       3.        在純安全模式下,個(gè)性化界面不會(huì)生效。這也就給了當(dāng)我們遇到第4點(diǎn)中的問(wèn)題時(shí)提供了操作可能。
      2 E% n+ y7 h, i! c3 u+ i1 y( v4 ~( n
             4.        如果遇到應(yīng)用錯(cuò)誤或者不想使用個(gè)性化登錄界面,請(qǐng)直接刪除注冊(cè)表中HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon下的GinaDLL。重新啟動(dòng)計(jì)算機(jī)就行了。$ G8 C  I5 ~# F% a# t

      / m+ @8 V% d& G9 d; G" x8 a  w       OK,整個(gè)步驟到此就結(jié)束了,雖然沒(méi)有什么技術(shù)含量,但是我敢保證,如果你在公司所有的計(jì)算機(jī)上都個(gè)性化了登錄界面,例如加上公司的logo,那么一定會(huì)給同事們或老板耳目為之一新的感覺(jué)。記得有家公司來(lái)我們公司參觀的時(shí)候,看到個(gè)性化登錄界面后,問(wèn)我們公司是不是和番茄花園合作,做了系統(tǒng)美化。




      歡迎光臨 汶上信息港 (http://www.vancelump.com/) Powered by Discuz! X3.5