必威电竞|足球世界杯竞猜平台

PnP
來源:互聯網

PnP全稱Plug-and-Play,譯文為即插即用,是微軟研發的計算機軟件,PnP的作用是自動配置低層計算機中的板卡和其他設備,然后告訴對應設備都做了什么,PnP的任務是把物理設備和軟件設備驅動程序相配合,并操作設備,在每個設備和它的驅動程序之間建立通信信道,然后,PnP分配下列資源給設備和硬件,I/O地址、IRQ、DMA通道和內存段。

軟件定義

PNP是由Microsoft提出的,意思是系統自動偵測周邊設備和板卡并自動安裝設備驅動程序,做到插上就能用,無須人工干預,是Windows自帶的一項技術。所謂即插即用是指將符合PNP標準的PC插卡等外圍設備安裝到電腦時,操作系統自動設定系統結構的技術。當用戶安裝新的硬件時,不必再設置任何跳線器開關,也不必用軟件配置中斷請求(IRQ)、內存地址或直接存儲器存取(DMA)通道,Windows會向應用程序通知硬件設備的新變化,并會自動協調IRQ、內存地址和DMA通道之間的沖突。

軟件解析

在PnP技術出現之前,中斷和I/O端口的分配是由人手工進行的,例如想要這塊聲卡占用中斷5,就需要找一個小跳線在卡上標著中斷5的針腳上一插。這樣的操作需要用戶了解中斷和I/O端口的知識,并且能夠自己分配中斷地址而不發生沖突,對普通用戶提出這樣的要求是不切實際的。

PnP技術就是用來解決這個問題的,PnP技術將自動找到一個不沖突的中斷和I/O地址分配給外部設備,而完全不需要人工干預。在中斷資源非常緊張的今天,即使是PnP技術,也不一定能找到一個合適的中斷分配給您剛剛插入的設備,所以盡量釋放那些沒有必要的中斷,對PnP正常工作也是很有幫助的。

有些PnP沖突來源于主板的設計。許多主板上有一個AGP插槽、五個PCI插槽和兩個ISA插槽,而其中的AGP插槽一般是和一個PCI插槽共用一個中斷的,也就是這兩個槽的中斷可以是合理的任何值,但必須是相同的,當您在AGP槽上插了顯卡,如果在同中斷的PCI槽上插了一塊聲卡的話,就一定會產生中斷沖突。對大多數五個pci插槽的主板而言,第一和第五插槽是和AGP槽共用中斷的,第四插槽是和USB共用中斷的,雖然可以在BIOS設置中強制給每個PCI槽位分配中斷,但這對于大多數用戶來說都是一個比較困難的事情,而且由于第二和第三插槽沒有和其它設備共用中斷,所以,在大多數情況下,顯卡插在AGP槽上,聲卡和其它PCI插卡,比如以太網控制器,應該插在第二和第三PCI插槽上,也就是從AGP插槽向ISA插槽方向數的第二和第三PCI插槽上,這樣一般都不用改變BIOS中的PnP設置,就能讓這些卡正常工作。

由來

對于許多PC用戶而言,如果需要為你的PC增加一些新的功能,比如欣賞CD唱盤、看VCD影碟、收發FAX等等,那么就得為你的PC機增加一些新的設備,如聲卡、CD-ROM、MPEG硬件解壓卡、FAX/MODEM傳真卡等一系列新設備,通常而言,安裝新設備的過程為:

1.按照所購買設備的說明來設置開關和跳線

2.正確地將新設備按規定的要求插入主板擴展槽中。

3.安裝隨新設備所配的驅動程序。

4.重新引導系統。

然后,你很有可能得花費大量的時間和精力來處理安裝過程中所出現的種種問題。比如手工改變設備的開關或跳線,跟蹤CONFIG。SYS文件以解決內部駐留程序的沖突等等。原因在于一臺PC機至少有一個或者多個總線設備(BUSDEVICE),而多個總線設備則有可能共享相同的系統總線(SYSTEMBUS),于是這就不可避免地產生硬件資源上的沖突。輕者是新安裝的設備無法使用或系統無法啟動,嚴重的話就會導致系統的崩潰。怎樣去解決這個問題?人們希望系統應該能提供對底層硬件資源包括IRQ(中斷請求)、I/O(輸入/輸出)端口、DMA(直接內存存取)通道以及內容等的智能管理能力,免除用戶因安裝新的硬件設備而帶來的煩惱。

隨著微軟推出Windows 95/98,它也宣傳了Windows95/98為用戶提供的底層硬件資源的智能管理能力,即WINDOWS95/98具有即插即用(PNP:PlugandPlay)的功能,由此即插即用才為人們廣泛重視。

即插即用這個概念很久以前就已被提出,它的標準則始于幾種洞庭湖的解決PC硬件配置問題的方案,其中包括IBM的微通道總線以及康柏電腦公司在EISA(擴展標準工業系統總線)上的不懈努力。

微軟制訂即插即用的規范的時間從1991年才開始,促使MICROSOFT發展即插即用是蘋果公司在其廣告中宣稱MICROSOFTWINDOWS系統列在易于配置和使用方面遠遠比不上APPLE公司的Mac OS操作系統,APPLE公司的麥金塔微機上修改系統的設置簡單到你只需插入或拔出擴展卡,機器就可以在其SYSTEM系列操作系統下很好地工作,從而省去了再設置開關、跳線或分配系統資源的煩惱,可以說是現階段下完全的即插即用。傳說固然歸于傳說,然而歸根結底的原因還是因為技術的進步使得微軟欲壟斷個人PC機的操作系統。

而欲使系統在易于使用上有一個飛躍,那么它就必須解決多個總線設備共享系統總線時所帶來的系統底層資源的分配和再分配問題。MICROSFOT同英特爾康柏電腦的結盟促使其在1993年以后相繼頌了即插即用的規范,包括其他總線類型如ISA、EISA、PCMCIA、PCI、VESA以及SCSI等,但是就現階段而言,完全意義上的即插即用恐怕還需要一段時間才能夠進一步完善。

MICROSFOT在WINDOWSFORWORKGROUPS和WINDOWSNT上就已開始嘗試一些設備檢測和配置方面的試驗。在WINDOWSFORWORKGROUPS中,操作系統可自動檢測出視頻適配卡、鼠標、鍵盤及網絡適配卡等的類型。WINDOWSNT則更進一步,它可以檢測出SCSI設備及其他一些硬件,到了WINDOWS95/98,則幾乎可以實現全自動的安裝和系統的動態重配置。

盡管Windows 95不可能對所有舊設備都能正確地識別,甚至有時也會求助于用戶,但就即插即用本身而言,這已經是一個真正的飛躍了。當前的WIDNOWS98/2000在PNP方面又得到進一步的發展。

評價

即插即用是一個用于自動處理PC機硬件設備安裝的工業標準,由英特爾微軟聯合制定。通常,當您需要安裝新的硬件時,往往要考慮到該設備所使用的DMA和IRQ資源,以避免設備之間因競爭而出現沖突,甚至導致機器無法正常工作。

有了“即插即用”(PnP),它使得硬件設備的安裝大大簡化,您無須再做跳線,也不必使用軟件配置程序,但是您所安裝的新硬件必須是符合PnP規范的,否則是行不通的。

即插即用代表著當前接口技術的主要進展。但它不是一個全新的概念。它是MCA與EISA接口設計的關鍵特性,但是MCA和EISA有限的吸引力使得它沒有成為行業標準。因此,主流PC用戶仍然為I/O地址,DMA通道以及IRQ的設置擔憂。早期基于pci的系統也使用了一種PnP配置的方式,但由于沒有提供PCI插卡和ISA插卡沖突的管理措施,許多用戶仍然為一些配置問題而煩惱。但當前即插即用規范可用于基于ISA、PCI、SCSI、IDE和PCMCIA的系統中,所有新計算機的購買者不用再擔心硬件設置了。

部件

為了使即插即用正常工作,需要以下的部件:

·即插即用硬件。

·即插即用BIOS。

·即插即用操作系統。

這些部件都要求兼容即插即用,意味著它們要服從即插即用規范。

1.硬件部件

硬件部件包括計算機系統與適配卡。這并不意味著在即插即用系統中不能使用較老的ISA適配卡。可以使用這些插卡,實際上,即插即用BIOS自動圍繞存在的遺留部件重新指定即插即用兼容插卡的設置。另外,許多后期的ISA插卡也可以轉換到即插即用模式下。即插即用適配卡同系統BIOS和操作系統通信來傳播關于所需系統資源的信息。然后,BIOS和操作系統解決沖突(如果有的話)并通知適配卡應當使用哪些特定資源。適配卡便改變其自身的配置以使用特定的資源。

2.BIOS部件

BIOS部件意味著多數較老PC機的使用者需要升級他們的BIOS,或者購買新的具有PnP BIOS的機器。BIOS要成為兼容的,必須支持13個附加的系統功能調用,它們可以被即插即用系統的操作系統部件使用。PnP BIOS規范由康柏電腦英特爾鳳凰硒鼓 Technologies共同發展。

BIOS的PnP特性通過一個擴展的POST實現。BIOS負責鑒別、隔離和配置PnP適配卡。BIOS通過以下的步驟實現這些任務:

1.禁用所有主板和適配卡上配置的設備。

2.鑒別所有PnP pci或ISA設備。

3.為端口、IRQ、DMA及存儲器生成一個最初的資源分配圖。

4.啟用I/O設備。

5.掃描ISA設備的ROM。

6.配置最初的載人程序設備,用于后來啟動系統。

7.通過通知分配了哪些資源來啟用可配置的設備。

8.開始載入啟動程序。

9.將控制傳遞給操作系統。

3.操作系統部件

操作系統部件可以通過多數新系統實現,如Windows 9x/Me/2000/XP。有時,系統供應商為其指定的硬件提供了對操作系統的擴展,如在筆記本系統中更是如此。如果系統需要,要保證這些擴展已經安裝在系統中。

通知用戶不能由BIOS解決的沖突是操作系統的責任。依靠使用操作系統的經驗,用戶可以手工設置沖突的插卡,或者關閉系統并在插卡上設置開關。當系統重啟后,系統檢測保持的(或新的)沖突,這些都提示用戶要注意。通過這樣的過程,可以解決所有的系統沖突。

技術問題

查看系統是否已經偵測到網卡

進入系統屬性,點選設備管理器,查看其中的未知設備表中是否有"PCI Ethernet Controler",若沒有則說Windows 98未檢測到你的網卡,網卡可能未正確安裝,或已經損壞,如圖5-02,其中的未知設備為正常情況下顯未的尚未驅動的網卡。

保存現有的網卡的注冊表項

單擊“開始”,選取“運行”,輸入“regedit”,進入注冊表編輯器,找到如下主鍵

[HKEY_LOCAL_MACHINE\Enum\PCI\VEN_10EC&DEV_8139&SUBSYS_813910EC&REV_10]

將其導出,存為文件PCI8139.REG

替換以太網控制器驅動程序

找到以前的版本的WIN95A的RTL8139網卡的驅動,將其中的RTL8139.SYS復制到網卡盤上的WIN98目錄,覆蓋現有NDIS5的RTL8139的網卡驅動程序。

安裝替換后的網卡驅動程序

按正常的方式安裝已經替換的網卡驅動程序,仍使用網卡盤上的Windows 98目錄,安裝好再添加其它的網絡協議如IPX,但建議不要安裝那些根本用不的上的網絡協議,如NETBETUI,MS DLC,因為如非必要這些協議是用不上,裝了反而會影響網的速度,裝好后新啟動計算機

修改注冊表

運行Regedit進入注冊表編輯器,找到如下方鍵

[HKEY_LOCAL_MACHINE\Enum\PCI\VEN_10EC&DEV_8139&SUBSYS_813910EC&REV_10]

將其導出,存為PNP8139.REG,編輯PNP8139.REG文件,將其中主鍵中的PCI、VEN_10EC&DEV_8139&SUBSYS_813910EC&REV_10和總線_00&DEV_08&FUNC_00分別以ROOT、NET和0000替換并將PCI\VEN_10EC&DEV_8139&SUBSYS_813910EC&REV_10\BUS_00&DEV_08&FUNC_00\LogConfig]

鍵值刪除,并保存,以下為修改前后的范例文件的內容

修改前的PNP8139.REG

REGEDIT4

[HKEY_LOCAL_MACHINE\Enum\PCI\VEN_10EC&DEV_8139&SUBSYS_813910EC&REV_10]

[HKEY_LOCAL_麥金塔HINE\Enum\PCI\VEN_10EC&DEV_8139&SUBSYS_813910EC&REV_10\總線_00&DEV_08&FUNC_00]

"Capabilities"=hex:14,00,00,00

"HardwareID"="PCI\\VEN_10EC&DEV_8139&SUBSYS_813910EC&REV_10,PCI\\VEN_10EC&DEV_8139&SUBSYS_813910EC,PCI\\VEN_10EC&DEV_8139&REV_10&CC_0200,PCI\\VEN_10EC&DEV_8139&CC_020000,PCI\\VEN_10EC&DEV_8139&CC_0200"

"CompatibleIDs"="PCI\\VEN_10EC&DEV_8139&REV_10,PCI\\VEN_10EC&DEV_8139,PCI\\VEN_10EC&CC_020000,PCI\\VEN_10EC&CC_0200,PCI\\VEN_10EC,PCI\\CC_020000,PCI\\CC_0200,PCI\\VEN_10EC&DEV_8139&SUBSYS_813910EC""DeviceDesc"="Realtek RTL8139(A/B/C/8130) PCI Fast Ethernet NIC"

"HWRevision"="016"

"Class"="Net"

"ConfigFlags"=hex:10,00,00,00

"ClassGUID"=""

"Driver"="Net\\0000"

"Mfg"="瑞昱"

[HKEY_LOCAL_MACHINE\Enum\PCI\VEN_10EC&DEV_8139&SUBSYS_813910EC&REV_10\BUS_00&DEV_08&FUNC_00\LogConfig]

"0000"=hex:00,04,00,00,00,30,00,00,10,00,00,00,04,00,00,00,03,00,00,00,ff,ff,\

00,00,30,00,00,00,01,00,00,00,01,00,14,00,00,00,80,d4,ff,00,80,d4,01,00,00,\

00,00,ff,ff,ff,00,01,00,00,00,00,00,00,ff,ff,ff,ff,01,00,00,00,14,00,00,00,\

24,00,00,00,02,00,00,00,01,00,0c,00,00,e8,ff,e8,00,00,ff,00,00,ff,00,01,00,\

00,ff,ff,00,00,ff,00,10,00,00,00,30,00,00,00,01,00,00,00,01,00,14,00,00,c0,\

0c,00,ff,5f,0d,00,00,00,00,00,ff,ff,ff,ff,00,a0,00,00,00,c0,0c,00,ff,5f,0d,\

00,00,00,00,00,ff,00,00,00,00,00,00,00

[HKEY_LOCAL_MACHINE\Enum\PCI\VEN_10EC&DEV_8139&SUBSYS_813910EC&REV_10\BUS_00&DEV_08&FUNC_00\Bindings]

"NWLINK\\0000"=""

"MSTCP\\0000"=""

修改后的PNP8139.REG

REGEDIT4

[HKEY_LOCAL_MACHINE\Enum\ROOT\NET]

[HKEY_LOCAL_MACHINE\Enum\ROOT\NET\0000]

"Capabilities"=hex:14,00,00,00

"HardwareID"="PCI\\VEN_10EC&DEV_8139&SUBSYS_813910EC&REV_10,PCI\\VEN_10EC&DEV_8139&SUBSYS_813910EC,PCI\\VEN_10EC&DEV_8139&REV_10&CC_0200,PCI\\VEN_10EC&DEV_8139&CC_020000,PCI\\VEN_10EC&DEV_8139&CC_0200"

"CompatibleIDs"="PCI\\VEN_10EC&DEV_8139&REV_10,PCI\\VEN_10EC&DEV_8139,PCI\\VEN_10EC&CC_020000,PCI\\VEN_10EC&CC_0200,PCI\\VEN_10EC,PCI\\CC_020000,PCI\\CC_0200,PCI\\VEN_10EC&DEV_8139&SUBSYS_813910EC"

"HWRevision"="016"

"Class"="Net"

"ConfigFlags"=hex:10,00,00,00

"ClassGUID"=""

"Driver"="Net\\0000"

"Mfg"="瑞昱"

[HKEY_LOCAL_MACHINE\Enum\ROOT\NET\0000\Bindings]

"NWLINK\\0000"=""

"MSTCP\\0000"=""

導入網卡注冊項

導入PNP8139.REG文件,刪除注冊表中原有的以太網控制器注冊項即

[HKEY_LOCAL_MACHINE\Enum\PCI\VEN_10EC&DEV_8139&SUBSYS_813910EC&REV_10]

同時導入PCI8139.REG文件,導入這個文件是為了讓WINDOWS啟動時不再把網卡作為一個新的PNP的設備來看待,而作為一個已有的未知設備,就不會再去尋找該設備的驅動程序,這樣,在無盤啟動時就不會因更新驅動程序而發生網絡中斷;而前面導入的PNP8139.REG文件是沒有中斷信息的,我們的目的也就是讓WINDOWS把以太網控制器當作一種非PNP設備來驅動,下次WINDOWS再次找到相同的硬件設備,但中斷信息卻不同時,就可以將該設備作為一個非PNP設備,調用現有的驅動程序,來強行驅動該設備,在找不到新的驅動程序時,就不會更新現有的驅動程序,這樣在任何主板上的任何可用插槽上,WINDOWS都可以強行驅動這種網卡,這樣就實現了無盤Windows 98對這種網卡的即插即用,在換主板或者是換插槽時就不會出現"Can't Find Krnl386.exe"之類的錯誤,而不能進入WINDOWS的GUI界面了。

清除現有的網卡的驅動信息

將注冊表中,WIN98系統目錄中所有關于RTL8139的驅動信息,并將能找到以太網控制器驅動信息的搜索路徑清除掉重啟系統。

至此此HDD系統已經對任何主板的任何可用的PCI插槽中的網卡進行強行驅動,并正常連接網絡。

上一節已經裝好可驅動基于本地硬盤的PNP系統下面就是要借助于Litenet的上傳 工作,將本地文件上傳至文件服務器

1.修改AUTOEXEC.BAT文件,其內容如下

@EHCO OFF

SET WINDIR=C:\WINDOWS ;設置WINDOWS所在目錄

SET DRIVE=C: ;設置WINDOWS所在驅動器

SET NETCARD=RTSND.DOS ;設置實模下的以太網控制器驅動程序

SET SERVER=LEITHER ;設置文件服務器的.NETBIOS名稱

SET SHARE=PNP98 ;設置上傳的目標目錄,即其享的WINDOWS目錄

2.建立、導入SNAPSOT.REG文件,并復制SNASHOT,VXD文件

以下為SNAPSHOT.REG內容

REGEDIT4

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\SNAPSHOT]

"NetClean"=hex:01

"Start"=hex:00

"StaticVxD"="SNAPSHOT.VXD"

建立SNAPSOT.REG文件后即可導入注冊表中,隨后將SNAPSHOT.VXD文件復制C:\WINDOWS\SYSTEM目錄下。

3.建立Litenet.reg文件如下

REGEDIT4

[HKEY_LOCAL_MACHINE\軟件\Qualystem\LiteNET PC]

"Step"="2"

"Version"="1.15"

導入Litenet.reg文件,這一步主要是為了正常使用Litenet的上傳 工具,因為QSYNCH.EXE在運行是要判斷系統的中的是否已經安裝Litenet,導入這個文件便可以騙過QSYNCH.EXE,使它不鬧別扭。

4.復制Litenet的所用文件到WINDOWS目錄下,重新啟動系統,運行Qsynch.exe將本地文件上傳。

5.用WIN95A的驅動程序RTL8139.SYS替換用Litenet制作的軟件中的RTL8139.SYS。

如果你到這里一直很順利,那么恭喜你,你的客啟端的WIN98已經安裝完成,用現有的啟動包已經可以啟動真正的PNP的無盤WIN98了,你可以在無盤下安裝顯卡聲卡的驅動程序了!

解決方案

Litenet自動為用戶生一個啟動軟盤,用這個軟盤,生成啟動映象,才能以PXE方式啟動無盤Windows 98,因為該啟動包在每次啟動過程中,都要復制系統注冊表,并且會進行二次登錄,這樣就降低了啟動速度,在本節中將向讀者詳細介紹如何在不使 用任何Litenet的前提下,快速啟動無盤WIN98,如何使之能自動識別并安裝各種PNP硬件,以及常見問題的解決方法。

一。修改已有啟動包

刪除不必要的文件

在Litenet生成的啟動過程中,會要求插入E文的WIN98第二版的光盤,此時將會向軟盤中寫入一文件,在啟動包中,這些文件,只有Litenet的一些程序才能用到,當前不使用Litenet的情況下,這些文件也相應可去掉,這些文件為:

KEYBCOM,鍵盤SYS,KEYBRD2.SYS,SETVARS.BAT,TUNING.BAT

另處一些Litenet的可執行文件亦可去掉,這些文件為:

QAUTOLOG.EXE,QUALCNX.EXE,QUALREG.EXE

增加和替換部分文件

前面去掉了一些Litenet的文件,相應地也增加一些我們需要的文件,只有一個:SETMDIR.EXE,這個文件可以無盤WIN95的啟動包中找到,再就是用WIN95A的驅動程序替換掉啟動包中現有的RTL8139.SYS文件,因為用這個文件是不能實現網卡的PNP功能的,而網卡的PNP則PNP無盤Windows 98中至關重要的一環.

修改Autoexec.bat文件

將其內容修改如下

@echo off

CTTY NUL ;屏蔽所有的啟動信息

cd \winboot

SET WINDIR=C:\WINDOWS

SET SERVER=Leither ;設置文件服務器名

SET SHARE=Pnp98 ;設置共享的C:所在目錄

@md %WINDIR% > NUL

@md %WINDIR%\SYSTEM > NUL

COPY A:\WINBOOT\RTL8139.SYS %WINDIR%\SYSTEM > NUL

@CALL START.NET.BAT ;轉到啟動網絡部分

再新建STARTNET.BAT文件如下

@echo off

set comspec=a:\command set temp=a:\winboot

SNAPSHOT /S /B:A /M:124

NET START IPX

NET LOGON ADMIN ADMIN PASS /YES /SAVEPW:NO ;以Admin份身登錄,其口令為PASS

NET USE C: \\%SERVER%\%SHARE% /Y ;強行映射C:為共享目錄,隱掉RAM盤

C:

set path=

path=%windir%;%windir%\command;%path%

set comspec=%windir%\command setmdir /m /r:c:\Windows

set temp=%windir%\temp

set tmp=%windir%\temp

cd %windir%

帕文·庫卡拉尼亞維奇bat

編輯修改Win.bat文件

QSetBD C:

Net use E: \\%Server%\MicroNet /y ;映射MICRONET共享目錄為E:,該目錄下含有所有的用戶 ;目錄,以方便管理登錄時進行用戶文件的管理

Net use F: \\%Server%\APPL /y ;常 用的應用程序的安裝目錄

NET USE G: \\%Server%\GAME /Y ;游戲

NET USE H: \\%Server%\CAI /Y ;計算機輔助教學

Net use I: \\%Server%\電影 /Y ;電影庫

Freemem

CTTY CON

%Windir%\Wincom

至此啟動包部分已經完成可以放到文件服務器的PXE的啟動包所在目錄,但當前已經可以啟動你的無盤Windows 98了,你可以安裝顯卡聲卡的的驅動程序了,但如果你這是在做模板系統(裝好后可隨處克隆),建議不要安裝主板的驅程序,否則克隆不同芯片組的主板可能會出現一些意想不不到的問題。

修改最小注冊表和批文件的優化

上步做好的無盤WIN98雖然可以做一些象有盤系統一樣的事情,但只能限于一個用戶使用,但你一啟動進入后,會發現剛才射映的那些盤符全都不見了,也就是剛才在WIN.BAT中映射的網絡盤在WINDOWS下全部失效,這是最小注冊表的靜態系統盤符不夠而導致的,將下列段導入最小注冊表,即可解決問題

[HKEY_LOCAL_MACHINE\軟件\微軟\Windows\CurrentVersion\Network\Real Mode Net]

"transport"="*nwlink,ndishlp.sys"

"netcard"="rtsnd.dos"

"LoadRMDrivers"=hex:00,00,00,00

"preferredredir"="NWREDIR"

"Transition"=hex:01

"SetupN"=hex:01

"SetupNPath"="C:\\WINDOWS\\"

"StaticDrive"="C,D,E,F,G,H,I" ;此處可調整系統的靜態盤符,可從C調到Z

通過上述調整后系統的盤符便可你自己要多少就有多少了,但這還不能解決多用戶共用WINDOWS目錄的問題,要圓滿解決此問題,這里有兩種方法:一是使用Litenet的QUALCNX.EXE文件,使用其能夠自動對不同網卡號的計算機進行編號,在此基礎上修改相應的批處理文件,便可實現;二是手動編程序,讀出網卡的MAC地址,再根據現有的網卡數據庫來確定機器編號,從而實現多用戶登錄,用這種方法,可真正實現不同用戶登錄,不用進行二次登錄,方便管理,加快了啟動的速度;下面將分別介紹這兩種方法:

使用Litenet的的部分文件的方法

使用這種方法要重新編制現有的STARTNET.BAT和WIN.BAT文件,改寫后的文件如下

STARTNET.BAT

@echo off

set comspec=a:\commandcom

SET NETBUFF=124

set temp=a:\winboot

CTTY CON ;開啟屏幕顯示,以便調試

lh qualcnx ADMIN PASS >nul ;以用戶名ADMIN,密碼PASS進行登錄,并生成USERNAME.BAT,;此處可手工編程實現

CTTY NUL ;關閉屏幕顯示,屏啟動信息

call %TEMP%\username.bat ;USERNAME.BAT能將變量CHN設 置為用戶名

QAUTOLOG ;此處為二次登錄;手工編程可去掉

NET USE E: \\%SERVER%\%CHN% ;連接用戶目錄到E:

SET UserName=%CHN% ;設置用戶名變量

SET Inited=NO ;設置初始化標志為NO

@if exist E:\WINDOWS\SYSTEM.DAT goto SKIPINIT ;判斷用戶目錄下是否有SYSTEM.DAT文件,若 ;有則忽略初始化直接執行系統啟動部分

CTTY CON ;開啟屏幕顯示,以便調試

@ECHO Starting Initialize Workstation %CHN%....... ;顯示初始化信息

CTTY NUL

SET PATH=

SET PATH=%windir%;%windir%\COMMAND

MD E:\WINDOWS ;在E:建立WINDOWS目錄用于存放系統注冊

MD E:\WINDOWS\TEMP ;在E:\WINDOWS下建立TEMP目錄

set temp=E:\WINDOWS\TEMP ;將系統臨時目錄定向為E:\WINDOWS\TEMP

set tmp=E:\WINDOWS\TEMP

E:

*lh %windir%\qualreg E:\WINDOWS /R /A ;用QUALREG復制并修改系統注冊表到用戶目錄,此命 ;令可用COPY命代替,但后面WIN.BAT中帶*的部分就 ;不能去掉;此處可手工編程實現

set winbootdir=%windir%

SET Inited=YES ;設置已經完成初始化標志Inited為YES

CTTY CON ;開啟屏幕顯示功能

@Echo Workstation %CHN% Has Been Initiliazed! ;顯示完成初始信息

:SKIPINIT ;忽略初始化跳轉標號

C:

CTTY NUL

@%Windir%\Win.bat ;轉到執行C:\WINDOWS\下的WIN.BAT文件

WIN.BAT文件內容如下:

set path=

path=%windir%;%windir%\command;%windir%\system

setmdir /m /r:E:\Windows ;注冊表重定向到E:\WINDOWS下

set comspec=%windir%\commandcom ;命令解釋器重定向為C:\WINDOWS\COMMANDCOM

IF %Inited%==NO GOTO SKIPINIT ;根據初始化標志,判斷是否跳轉

MD E:\我的文檔;在E:\建站"我的文檔"目錄,用于存放文檔

*QPATCH %Windir%\Client.reg E:\Windows\%CHN%.REG ;若在前面的STARTNET.BAT文件中用 ;了帶*的部分則此部分便可不要,后面帶*也可以不要;此處可手 ;工編程實,亦可模仿華教的笨方法,用ECHO命令

*Regedit E:\Windows\%CHN%.REG ;導入客戶端配置注冊表文件

*regedit %Windir%\Policies.POL ;導入系統策略文件

:SKIPINIT ;忽略初始化跳轉標號

QSetBD %DRIVE% ;設置啟動盤符為C:,此處暫無程序代替

Net use D: \\%SERVER%\SYS/y ;映射SYS共享目錄為D:,在此目錄存放WIN98 的源文件,;和各種PNP硬件的驅動程序,以 方便 WIN98在啟動時能

;自動識別各種PNP硬件,并為之安裝驅動程序

NET USE G: \\%Server%\GAME /Y ;游戲

NET USE H: \\%Server%\CAI /Y ;計算機輔助教學

Net use I: \\%Server%\電影 /Y ;電影庫

NET USE H: \\%Server%\音樂 /Y ;音樂庫

Freemem ;消除內存中的A:可用QRESTALL代替

CTTY CON ;開啟屏幕顯示功能準備進入WINDOWS

%Windir%\Winom ;運行WINCOM,進行入WINDOWS;

至此,使用Litenet部分文件來達到不同用戶登錄共享WINDOWS目錄無盤啟動的方法,已經介紹完畢,在使用之前還必須將那些在STARTNET.BAT和WIN.BAT中使用過的文件復制到相應的目錄中,否則系統將出現問題,或者不能啟動,或者啟動不正常。

手工編程

要手工編程序實現Litenet能實現的上述功能,就必須寫出和Litenet功能相同或相似的程序出來,要用到手工編程的地方,筆者已經在上述方法已經有了注解,本書附錄中將有,要用到的各種程序的源代碼,用的是Tuobo Pascal v6.0,至于實現方法和上面大同小異,這里就不綴述了,下面將分別列出上面要用到的一些注冊表文件的內容,這些文件在手工編程方法中是必不可少的.

以下為Client.reg文件的內容:

REGEDIT4

[HKEY_LOCAL_MACHINE\軟件\Mpsoft]

[HKEY_LOCAL_MACHINE\Software\Mpsoft\Smenu]

"computernum"="{%CHN%}"

[HKEY_LOCAL_MACHINE\SOFTWARE\微軟\Windows\CurrentVersion\Winlogon]

"AutoAdminLogon"="{%CHN%}"

"DefaultUserName"="{%CHN%}"

"DefaultPassword"="{%CHN%}"

[HKEY_LOCAL_MACHINE\Network\Logon]

"DontShowLastUser"=dword:00000000

"UserName"="{%CHN%}"

"password"="{%CHN%}"

[HKEY_LOCAL_MACHINE\軟件\微軟\Windows\CurrentVersion\Winlogon]

"DefaultUserName"="{%USERNAME%}"

"AutoAdminLogon"="1"

"DefaultPassword"="{%USERNAME%}"

"DefaultDomainName"="{%SERVER%}"

[HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders]

"AppData"="E:\\Application Data"

"Recent"="E:\\Recent"

"緩存"="E:\\Temporary Internet Files"

"Mini Cookies"="E:\\Cookies"

"History"="E:\\History"

"Personal"="E:\\我的文檔"

[HKEY_USERS\.DEFAULT\軟件\微軟\Windows\CurrentVersion\Explorer\Shell Folders]

"AppData"="E:\\Application Data"

"Recent"="E:\\Recent"

"緩存"="E:\\Temporary Internet Files"

"Mini Cookies"="E:\\Cookies"

"History"="E:

參考資料 >

生活家百科家居網