我的特殊(见下文)Windows XP 无法正常加载:system32\hal.dll 丢失或损坏。
然而,它做从安装 USB 棒启动!这意味着安装正常,只是启动过程卡在了某处(不用说,“hal.dll”是存在且健康的)。
另一个症状是它神秘地安装在 D: 驱动器上,而 C 甚至不存在(如果我插入 SD 卡,它会安装为C:)
显然,由于我是从 USB 驱动器安装的,Windows 认为它是 C:,因此 HD 被命名为答案:。
问题是
我该如何修复 boot.ini、mbr 和/或任何需要修复的内容?
我怎么才能看到哪里出了问题?这是该棒的 boot.ini:
[boot loader] timeout=30 default=multi(0)disk(0)rdisk(1)partition(1)\WINDOWS [operating systems] multi(0)disk(0)rdisk(1)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect
usb 使用 GRUB4DOS。此硬盘的 grub 选项为:
root (hd0,0) chainloader (hd0,0)/NTLDR savedefault
其余细节是
- Windows XP SP3,
- 在 eeePC 上,在其内部 2GB“硬盘”上
- 使用 nLite 进行自我定制。
- 我使用 WinSetupFromUSB 从 USB 安装(因为我没有 CDROM)
- 我将其安装在 2GB 硬盘上,NTFS 格式,
- 奇怪的是,安装完成后,安装文件却从安装 USB 棒中神秘消失。
感谢您关注如此不可思议的情况:-)
答案1
只需在黑板上提出我的问题,我就能知道如何解决它……
首先,在我发布问题之前,我已经将可启动 USB 驱动器的根目录中的所有文件复制到“硬盘驱动器”上,包括丢失的 boot.ini 和 ntldr。
在我写完问题后,我编辑了BOOT.INI,并更改了
rdisk(1)
到
rdisk(0)
原因是,如果安装过程将 winroot 安装为 D,那么它会认为它是第二个磁盘。但事实并非如此,它是第一个磁盘,这就是为什么我尝试使用零 (0)
现在它起作用了!
并且靴子也足够好。
我决定将这个帖子留给社区,希望其他冒险英雄能发现它有用。