| 發表者 |
討論內容 |
| ch999 |
發表時間:2006-09-10 12:57 |
- 九段會員

- 註冊日: 2006-05-01
- 來自:
- 發表數: 233
|
- 光碟機代號定位的問題
- 三秒兄,
我昨天幫親戚重灌XP才發現一個我原沒注意到的問題: 那部PC有內建多合一讀卡機,所以有4個drive會排在光碟機之前,當我的安裝片放在第二光碟機時,安裝過程會停下5次等我按"繼續",回來放在自已PC(沒有讀卡機)的第二光碟機時果然也會停下1次等我按"繼續"。 我將那個preinstall的前幾行改了一下,在我的PC已解決(內建多合一讀卡機那部遠在台北沒空去試)。 請指一下是否還有我沒注意到的問題,或者又更好的方法?
CLS
@ECHO OFF
COLOR 70
MODE CON COLS=65 LINES=20
IF NOT EXIST D:\wxp_sp3\hotfix.cmd GOTO :E
SET CDROM=D: && GOTO END
:E
IF NOT EXIST E:\wxp_sp3\hotfix.cmd GOTO :F
SET CDROM=E: && GOTO END
:F
IF NOT EXIST F:\wxp_sp3\hotfix.cmd GOTO :G
SET CDROM=F: && GOTO END
:G
IF NOT EXIST G:\wxp_sp3\hotfix.cmd GOTO :H
SET CDROM=G: && GOTO END
:H
:END
----------------
|
|
|
| threesecond |
發表時間:2006-09-10 14:34 |
- 網站管理員

- 註冊日: 2003-11-05
- 來自:
- 發表數: 3167
|
- Re: 光碟機代號定位的問題
- 先大概描述一下你設計的安裝流程吧,不然我不知道你上面這段是在哪個時間點跑的。
---------------- 不要叫我大大,我今天大過了。
|
|
|
| ch999 |
發表時間:2006-09-10 16:02 |
- 九段會員

- 註冊日: 2006-05-01
- 來自:
- 發表數: 233
|
- Re: 光碟機代號定位的問題
- 我是參照三秒兄在 http://www.threesecond.info/v2/modules/...p?showtopic=181
的做法,所以在WINNT.SIF中有這幾行: [GuiRunOnce] %systemdrive%\Install\Pre_Install.cmd %systemdrive%\Install\hotfix.cmd %systemdrive%\Install\Install2.cmd 其中Pre_Install會安裝.netframfork1.1/2.0 and hotfixs, also wmP10. hotfix會安裝wxp_sp3 hotfixs. Install2會安裝NDP20-KB917283-X86,Flash Player 9, .... 這裡會有100MB以上的data由於我想讓安裝直接在安裝光碟上找,所以這3個.cmd的開頭都會用三秒兄的方法去定位安裝光碟所在的位置。 另外,在此之外也只有加了DRV,其他都是標準安裝。 因此若直接用IF EXIST D:\... SET CDROM=D: .... 若not EXIST時,drive 是HDD Partitions會直接往下,其他如cardreader or CD drive則會停下來等按"繼續"等。 所以用 IF NOT EXIST .... GOTO 讓它不要停下來。 ----------------
|
|
|
| ch999 |
發表時間:2006-09-13 09:53 |
- 九段會員

- 註冊日: 2006-05-01
- 來自:
- 發表數: 233
|
- Re: 光碟機代號定位的問題
- 這裡想修正上篇的錯誤,為了容易閱讀先做前題的敘述:
在製作Windows自動安裝光碟時,為了節省目標硬碟的暫存空間與複製的時間,可令安裝程式直接到安裝光碟上找DATA,為此需要先確定安裝光碟所在的Drive代號,常用的方法是利用找出安裝光碟中特定的檔案來確定它。 但是在所有Drive逐一找尋過程中,若遇上"裝置未就緒"的Drive,安裝程式會停下來等待確認(取消,重試,繼續)。為了自動安裝不要因此而被中斷必需要有自動取消的安排。 以下例子是假設以RunOnce\Pre_Install.cmd 為定位目標。這幾行放在[GuiRunOnce]中想從安裝光碟上找DATA的.cmd檔最前面就可以了。 這個做法主要是利用DIR只會回傳溢位而不會進入中斷服務的特性。
@ECHO OFF
DIR D:\RunOnce > nul
IF NOT ERRORLEVEL 1 IF EXIST D:\RunOnce\Pre_Install.cmd set CDROM=D:&& GOTO END
DIR E:\RunOnce > nul
IF NOT ERRORLEVEL 1 IF EXIST E:\RunOnce\Pre_Install.cmd set CDROM=E:&& GOTO END
DIR F:\RunOnce > nul
IF NOT ERRORLEVEL 1 IF EXIST F:\RunOnce\Pre_Install.cmd set CDROM=F:&& GOTO END
(中間省略)
:END
註: 1. CDROM=X:&&中":"與"&&"若留空格會有麻煩。 2. 用VMware時,若在安裝時creat一個以上的partition時,會因%systemdrive%以外的partition無法事先格式化,也會造成無法定位。
請前輩指正,謝謝!
----------------
|
|
|
| threesecond |
發表時間:2006-09-13 17:15 |
- 網站管理員

- 註冊日: 2003-11-05
- 來自:
- 發表數: 3167
|
- Re: 光碟機代號定位的問題
- 本文依照性質分割文章,
以後如有離題文請自行開新標題另行討論,不要用同一串文章一直接力, 我希望這個論壇能比其他論壇更有秩序和水準。 ---------------- 不要叫我大大,我今天大過了。
|
|
|
| ch999 |
發表時間:2006-09-13 20:23 |
- 九段會員

- 註冊日: 2006-05-01
- 來自:
- 發表數: 233
|
- Re: 光碟機代號定位的問題
- 這裡只是為像我一樣的初入門者所做的加註(就像我在上面所提到的:&&間空格的問題,之前不知這個空格會把"CDROM=X:"變成"CDROM=X: "。這可讓我這種初學者走了很多冤枉路)。
上面&&與GOTO應在同一行(在批次指令中換行(除非在在同一個()中)就等於是一個CR),只是因為在此因欄寬的限制被分開了,您若把它分行了鐵定是另外一個故事,先說好了,不要因此來罵我。
----------------
|
|
|
| threesecond |
發表時間:2006-09-13 23:49 |
- 網站管理員

- 註冊日: 2003-11-05
- 來自:
- 發表數: 3167
|
- Re: 光碟機代號定位的問題
- 本串文章原始位置:
http://www.threesecond.info/v2/modules/...p?showtopic=672 原文標題是:"請教什麼叫"SuperXP和TOP-XP"" 顯然接下來的討論已經離題很遠了,故分割。
回題: 關於光碟機代號的問題有很多種解法,本論壇的解法只是其中一種, (在其他高手眼中不值一哂,其他更高段的解法請看 MSFN 或數位男女論壇) (簡而言之我都不會用就是了..........) 我沒試過在你的條件下會不會出現什麼問題,因為我有其他的配套措施。
我的光碟是做成多重開機的,另外包了一個以 MS-DOS7.1 為核心的開機程式, 裡面包含了許多 DOS 下的應用程式,例如Ghost, Partition Magic, SpFdisk........ 我平常裝機的作法就是先以 DOS 開機,用 spfdisk 分割並格式化完後, 再進 Windows 安裝程式,就可以很快速的安裝。
另外還有個重點,如果遇到內建讀卡機,我會先進 BIOS 把 USB 功能關閉,以免增加不必要的磁碟代號, 反正等灌完 Windows 後再開啟 USB 就可以自動抓到所有的讀卡機,步驟並不會太複雜。
每個人的需求都不同,如果說一定要找出完美的辦法,可能還是要請你上 MSFN 去找了, 因為這題我實在解不了。Orz ---------------- 不要叫我大大,我今天大過了。
|
|
|
| ch999 |
發表時間:2006-09-14 04:58 |
- 九段會員

- 註冊日: 2006-05-01
- 來自:
- 發表數: 233
|
- Re: 光碟機代號定位的問題
- 太好了!原來解決這個問題只要從簡單處下手就可以了,謝謝!
引文: 另外還有個重點,如果遇到內建讀卡機,我會先進 BIOS 把 USB 功能關閉,以免增加不必要的磁碟代號, 反正等灌完 Windows 後再開啟 USB 就可以自動抓到所有的讀卡機,步驟並不會太複雜。
以前我還要動用"兵器"打開機箱,怎麼沒想到只要先把USB關了就好,以後可以不用再當武夫了。 引文: 我的光碟是做成多重開機的,另外包了一個以 MS-DOS7.1 為核心的開機程式, 裡面包含了許多 DOS 下的應用程式,例如Ghost, Partition Magic, SpFdisk........ 我平常裝機的作法就是先以 DOS 開機,用 spfdisk 分割並格式化完後, 再進 Windows 安裝程式,就可以很快速的安裝。
是了,我也有一份自製的維修光碟,內容類似您上面所提的,只要我把那個用BartPE做的XPPE換成"XP安裝",再把BCDW的default改為"XP安裝"5秒。 這樣應該不會有問題吧?
練了幾天虛功,大概還可以用"功力小小增"來安慰自己吧! ----------------
|
|
|