J
John F. Davis
Hello
I am still trying to get windows XP embedded image to boot. It fails
to boot with this message:
Windows could not start because the following file is missing or
corrupt.
<windows root>\system32\hal.dll
Please reinstall a copy of the above file.
The above file is 124KB on both my d:\windows embedded images
directory on my development computer and in d:\windows\system32 on my
target computer. I did not run a binary diff to see if they are
actually different inside. ie. the difference is not size.
This is my setup:
Development Box:
Windows 2K pro with SP4
all windows XP embedded sp1 tools installed.
Target Box:
Windows 2k pro with SP4
only windows installer, and windows embedded sp1 tools
installed. ie. skipped database, remote boot etc.
Method of building.
Installed xp tools on target box so I could run tap. Took
resultant file and transferred to developement box. Imported .pmk
file into component designer. Created a component which could be
added to the target designer. Used the basic set top box as a
template in target designer. Added the component which corresponds to
the hardware imported above. Added ntfs, english, and win login.
I have tried multiple combinations for the Target Device Settings
in target designer. None of them work:
eg:
Boot drive
Windows Folder
Program Files folder
Documents and Settings folder
Boot ARC path
Boot partition size (MB)
Partition cluster size (bytes)
try 1 - leave above unmodified. It creates a d:\windows xp embedded
images directory with all files at top level.
After I build the image, I copy the entire folder contents to my d: on
my target machine. I click ok when asked to overwrite files.
try 2 - this is how they do it in a video. Leave Boot drive setting
at c:. Change the other settings to d: prefix. ie. windows folder is
d:\windows. Change the Boot ARC path to partition 2 - ie. change the
last number 1 to number 2. When it builds it creates DriveD folder in
the d:\windows xp embedded images directory.
After I build the image, I delete all files/folders on d drive and
copy the development computers d:\windows xp embedded images
directory to the d drive. I move the folders in the DriveD folder to
the toplevel.
try 3 - same as above but also change boot drive setting to d:.
Since I am using Win2k, I copy ntloader and ntdetect from d: on my
target machine to c:. I only did this once after I had installed
win2k service patches and win2k tools. I do not copy these files over
each time I build a new image.
PS.
The good news, is that one time today, I did get a build which ran up
FBA. I saw the windows XP logo and everything. After the reboot
though it just locked up. When I tried to reboot into windows I
noticed the drive started acting up in general. The drive appeared to
be having a hardware problem so I got a new drive and reinstalled
windows. I set up the partition to be 8GB for drive c and ~700 MB for
drive d. However since then, I have been having the error documented
above. Could it be that I need to rerun TAP because the disk is not
the same?
I am still trying to get windows XP embedded image to boot. It fails
to boot with this message:
Windows could not start because the following file is missing or
corrupt.
<windows root>\system32\hal.dll
Please reinstall a copy of the above file.
The above file is 124KB on both my d:\windows embedded images
directory on my development computer and in d:\windows\system32 on my
target computer. I did not run a binary diff to see if they are
actually different inside. ie. the difference is not size.
This is my setup:
Development Box:
Windows 2K pro with SP4
all windows XP embedded sp1 tools installed.
Target Box:
Windows 2k pro with SP4
only windows installer, and windows embedded sp1 tools
installed. ie. skipped database, remote boot etc.
Method of building.
Installed xp tools on target box so I could run tap. Took
resultant file and transferred to developement box. Imported .pmk
file into component designer. Created a component which could be
added to the target designer. Used the basic set top box as a
template in target designer. Added the component which corresponds to
the hardware imported above. Added ntfs, english, and win login.
I have tried multiple combinations for the Target Device Settings
in target designer. None of them work:
eg:
Boot drive
Windows Folder
Program Files folder
Documents and Settings folder
Boot ARC path
Boot partition size (MB)
Partition cluster size (bytes)
try 1 - leave above unmodified. It creates a d:\windows xp embedded
images directory with all files at top level.
After I build the image, I copy the entire folder contents to my d: on
my target machine. I click ok when asked to overwrite files.
try 2 - this is how they do it in a video. Leave Boot drive setting
at c:. Change the other settings to d: prefix. ie. windows folder is
d:\windows. Change the Boot ARC path to partition 2 - ie. change the
last number 1 to number 2. When it builds it creates DriveD folder in
the d:\windows xp embedded images directory.
After I build the image, I delete all files/folders on d drive and
copy the development computers d:\windows xp embedded images
directory to the d drive. I move the folders in the DriveD folder to
the toplevel.
try 3 - same as above but also change boot drive setting to d:.
Since I am using Win2k, I copy ntloader and ntdetect from d: on my
target machine to c:. I only did this once after I had installed
win2k service patches and win2k tools. I do not copy these files over
each time I build a new image.
PS.
The good news, is that one time today, I did get a build which ran up
FBA. I saw the windows XP logo and everything. After the reboot
though it just locked up. When I tried to reboot into windows I
noticed the drive started acting up in general. The drive appeared to
be having a hardware problem so I got a new drive and reinstalled
windows. I set up the partition to be 8GB for drive c and ~700 MB for
drive d. However since then, I have been having the error documented
above. Could it be that I need to rerun TAP because the disk is not
the same?