无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 6330|回复: 10
打印 上一主题 下一主题

U盘PE启动后格式化硬盘安装xp的故障(已解决)

[复制链接]
跳转到指定楼层
1#
发表于 2010-9-23 08:17:57 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
长期以来, U盘PE(陆陆续续我试过几个,有0pe,我心如水全内置等等)启动后格式化硬盘安装xp(都是用深度6.2精简安装版), 我就没有顺畅过. 经常是复制完文件后, 无法重启, 缺什么文件. 改用深度6.2ghost版, 大多数可以成功.

昨天, 学会了虚拟机vmware7.1. 用它测试U盘启动. U盘是我心如水2003v16.09.11网启版全内置. 深度的ISO也放在U盘. U启成功后, 格式化虚拟硬盘, 用虚拟光驱载入深度iso, 运行winnt32.exe(这一步是刚学的. 以前我都是运行autorun.exe,然后在菜单中选"深度安装版"), ....安装过程是成功的. 以前没这么正常过.....但是, 现在U盘上有个文件夹"$WIN_NT$.~BT", 大小为7.4MB. 这说明什么?

----- 似乎以前那些失败的实体机经历, 也是U盘上出现类似的文件夹了, 这些本应该出现在硬盘C:的吧?

[ 本帖最后由 neo007 于 2010-9-23 18:18 编辑 ]
2#
发表于 2010-9-23 09:01:12 | 只看该作者
winnt32.exe后面加syspart参数指定盘符
回复

使用道具 举报

3#
发表于 2010-9-23 09:08:12 | 只看该作者
还要加tempdrive参数

以下是我做的一个批处理截取相关的一部分
原批处理功能是实现全自动检测OEM版本并检测OEMBIOS文件 实现OEM/VOL的安装
你自己删减下 就可以直接用了

:cfg
set yourname=GaoSir
set orgname=HOME
set sn=XXXXX-XXXXX-XXXXX-XXXXX-RPWBY
if '%oeminst%=='1 set sn=XXXXX-XXXXX-XXXXX-XXXXX-K42BQ

:setpart
set destpart=c
set inputv=
set /p inputv=输入将安装XP的分区的盘符,不需要冒号,直接回车则默认%destpart%盘:
if not "%inputv%"=="" set destpart=%inputv%
if not exist %destpart%:\ echo 盘符%destpart%错误,请重新指定 & goto setpart
echo 将安装到%destpart%盘...
set af=%destpart%:\af.txt
copy %sifile% %af% /y >nul 2>nul

echo.
set inputv=
set /p inputv=输入您的计算机名 (若不输入,将采用当前时间作为计算机名):
for /f "tokens=1,1" %%i in ('date /t') do (set dt0=%%i)
for /f "tokens=1-3 delims=-" %%i in ('echo %dt0%') do (set dt=%%i%%j%%k)
for /f "tokens=1,2 delims=:" %%i in ('time /t') do (set tm=%%i%%j)
set compname=%dt%-%tm%
if not "%inputv%"=="" set compname=%inputv%
echo 计算机名称为 %compname%
inifile %af% [UserData] ComputerName="%compname%"

echo.
set inputv=
set /p inputv=输入您的姓名 (若不输入,采用预设值%yourname%):
if not "%inputv%"=="" set yourname=%inputv%
echo 注册到中的您的姓名为 %yourname%
inifile %af% [UserData] FullName="%yourname%"

echo.
set inputv=
set /p inputv=输入您的单位 (若不输入,采用预设值%orgname%):
if not "%inputv%"=="" set orgname=%inputv%
echo 注册到中的您的单位为 %orgname%
inifile %af% [UserData] OrgName="%orgname%"


echo.
echo 请输入序列号,如不输入采用预设序列号
echo %sn%
set inputv=
set /p inputv=输入安装序列号:
if not "%inputv%"=="" set sn=%inputv%
echo 使用序列号 %sn%
inifile %af% [UserData] ProductKey="%sn%"

if not exist %hdi386% md %hdi386%
if not exist %hdi386%\winnt32.exe echo 安装文件将被复制到%hdi386%中以便继续安装
if '%fromcd%=='1 title 复制%srcpath%文件夹到%hdi386%中,请稍候...&XCOPY /E /H /K %srcpath% %hdi386%
if not '%oeminst%=='1 goto startins
md %hdi386%\$OEM$\$$\system32
copy /y oeminfo\%oemdir%.bmp %hdi386%\$OEM$\$$\system32\OEMLOGO.BMP
copy /y oeminfo\%oemdir%.ini %hdi386%\$OEM$\$$\system32\OEMINFO.INI
del /f /q %hdi386%\oembios.*
del /f /q %hdi386%\dpcdll.dl_
if exist %oemdirf%\oembios.bi_ (copy /y %oemdirf%\oembios.bi_  %hdi386%) else (makecab %oemdirf%\oembios.bin %hdi386%\oembios.bi_)
if exist %oemdirf%\oembios.ca_ (copy /y %oemdirf%\oembios.ca_  %hdi386%) else (makecab %oemdirf%\oembios.cat %hdi386%\oembios.ca_)
if exist %oemdirf%\oembios.da_ (copy /y %oemdirf%\oembios.da_  %hdi386%) else (makecab %oemdirf%\oembios.dat %hdi386%\oembios.da_)
if exist %oemdirf%\oembios.si_ (copy /y %oemdirf%\oembios.si_  %hdi386%) else (makecab %oemdirf%\oembios.sig %hdi386%\oembios.si_)
if exist dpcdll.dl_ (copy /y dpcdll.dl_  %hdi386%) else (makecab dpcdll.dll %hdi386%\dpcdll.dl_)
del /f /q %hdi386%\pidgen.dll & copy /y pidgen.dll %hdi386%
del /f /q %hdi386%\setupp.ini & copy /y setupp.ini %hdi386%
del /f /q %hdi386%\eula.txt & copy /y eula.txe %hdi386%\eula.txt

:startins
if '%satainst%=='1 md %hdi386%\$OEM$\TextMode&XCOPY /E /H /K TextMode %hdi386%\$OEM$\TextMode
echo.
title 等待winnt32.exe作业..
echo 等待WINNT32进行安装准备工作....请勿关闭此窗口!
%hdi386%\winnt32.exe /dudisable /makelocalsource /noreboot /syspart:%destpart% /tempdrive:%destpart% /unattend:%af%
del %af%
echo.
echo WINNT32作业完成,10秒后将自动重启进入安装过程,关闭此窗口取消自动重启!
if exist %systemroot%\system32\ping.exe (%systemroot%\system32\ping.exe -n 11 127.0.0.1>nul) else (start /wait pecmd wait 10000)
if exist %systemroot%\system32\shutdown.exe %systemroot%\system32\shutdown.exe -f -r -t 10 -c "系统即将重启以继续安装过程! 运行shutdown -a可取消重启" & exit
pecmd shut r
回复

使用道具 举报

4#
 楼主| 发表于 2010-9-23 09:44:29 | 只看该作者
谢谢.
我还记起一个现象: 前几天, 实体机, U盘启动,格式化硬盘, 安装xp, 复制文件后, 重启, 一是缺文件不能启动. 二是发现boot.ini的内容没变, 没有xp安装的项
回复

使用道具 举报

5#
 楼主| 发表于 2010-9-23 13:33:57 | 只看该作者
刚刚又试验了几次虚拟机下的安装. 我按照一篇文章说的, U盘启动后, 装载虚拟硬盘上的深度iso, 
然后运行
winnt32 /syspart:c /makelocalsource /tempdrive:c
C:我注意了, 就是虚拟硬盘的C:,
文件复制完后, 关闭虚拟机, 拔U盘, 在vmware移除U盘那个"硬盘", 运行虚拟机, ntldr丢失.  U盘也不能启动了.
查看U盘, 如下内容都在U盘呢
$win_nt$.~BT
$ldr$
boot.ini
bootfont.bin
ntdetect.com
ntldr
txtsetup.sif

错误在哪里?
回复

使用道具 举报

6#
发表于 2010-9-23 13:43:59 | 只看该作者
启动完成之后,把要用到的文件复制到硬盘里,然后拔掉U盘再装.

安装程序将你的U盘识别为当前激活的主分区,所以引导文件都复制你U盘里去了.....

更简单的方法就是使用论坛里朋友提供的工具XP安装器,能选择系统要安装到的分区,激活的主分区:
http://bbs.wuyou.net/forum.php?m ... =%B0%B2%D7%B0%C6%F7
回复

使用道具 举报

7#
发表于 2010-9-23 14:44:13 | 只看该作者
嗯,希望可以得到解决!
回复

使用道具 举报

8#
 楼主| 发表于 2010-9-23 14:45:27 | 只看该作者
原帖由 佳佳 于 2010-9-23 13:43 发表
  
更简单的方法就是使用论坛里朋友提供的工具XP安装器,能选择系 ...



真是好东东. 在虚拟机测试了一下, 成功了. 

为了其他朋友看起来方便, 简述步骤如下:

虚拟机的硬盘已经分区好了C和D.    C为活动主分区.
我心如水全内置网启pe,U盘启动后, 把U盘上的INSWINXP文件夹(就是安装器)复制到D:.
虚拟光驱载入深度xp.iso, 盘符为Z:.
运行D:\inswinxp\NT5x_install.exe, 指定Z:\i386\winnt32.exe (注意: 不是Z:\winnt32.exe),,指定D:\inswinxp\winnt.sif (而不是Z:\i386\winnt.sif), 指定活动主分区为C:
文件复制.
关闭虚拟机. 移除U盘"硬盘".
拔U盘.
启动虚拟机.....安装正常


太感谢了. 长久以来的疑惑终于解决了!!!

附: 转贴一下INSWINXP:
INSWINXP.rar (48.93 KB, 下载次数: 183)

[ 本帖最后由 neo007 于 2010-9-23 14:47 编辑 ]
回复

使用道具 举报

9#
发表于 2010-9-26 13:38:18 | 只看该作者
记得在PE下分区会出现"$WIN_NT$.~BT"文件夹,
在Windows下无法删除。
回复

使用道具 举报

10#
发表于 2010-9-27 13:27:53 | 只看该作者
因为你的U盘启动的写入放式是USB——HDD,如果是USB——ZIP就没有问题了。
回复

使用道具 举报

11#
发表于 2010-11-16 10:49:17 | 只看该作者
还是把安装镜像考到非系统分区吧,载入虚拟光驱后拔出盘
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2026-2-7 21:57

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表