Tech Support > Microsoft Windows > Drivers > Using a checked build for debugging on WINXP SP2
Using a checked build for debugging on WINXP SP2
Posted by GCurwen on February 29th, 2008


To the Windows team,

I have written and compiled KMDF driver that I need to start debugging. To
do this, I downloaded a checked build compressed file from the MSDN site.
I have been trying to get a checked build system running using just the
hal.dll and the ntoskrnl.exe. I am using XP Version 5.1 Build 2600
xpsp_SP2_rtm.040803-2158: service pack2. I have downloaded the Windows
XP-KB835935-SP2-DEBUG-ENU.exe compressed image. From this image I have
extracted the following files

Hal.dl_
Ntoskrnl.ex_
Ntkrnlpa.ex_

I used the expand.exe utility to expand my compressed files to halc.dll,
ntoschk.exe, and ntckpa.exe. These files were placed into the
windows\system32 directory.


I modified my boot.ini to look like this:
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOW S
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Micro soft Windows XP
Professional" /noexecute=optin /fastdetect
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Micro soft Windows XP Pro
Checked Build" /fastdetect /kernel=ntoschk.exe /hal=halc.dll

On boot up, I get two options. If I select the checked build option the
system starts to load the OS and then resets. I never get a screen. The
reset happens within about three seconds of selecting the checked build boot
option.



I have also extracted the sp2.cab zip file from the archive and have tried
to use the following files:
Hal.dll
Ntoskrnl.exe
Ntkrnlpa.exe

These files were renamed per the file names specified in the boot.ini file
and placed in the windows\system32 directory.

I get the same results when I select the checked build boot image.

I have been referencing the msdn2.microsoft.com/en-us/library/ms792430.aspx
document as well as the information in the boot.ini reference document.
Although they give different file names, they basically give the same
instructions.

Here is my setup.log data
setup.log
[Files.WinNt]
\WINDOWS\system32\hal.dll = "hal.dll","24f6c"
\WINDOWS\system32\ntkrnlpa.exe = "ntkrnlpa.exe","1fb94e"
\WINDOWS\system32\ntoskrnl.exe = "ntoskrnl.exe","2160c9"

I have not replaced the ntkrnlpa.exe with the checked build version from the
checked build image. Should I do this? Do you see anything I am doing that
would cause this problem? Also, is there an ISO image I can download from
MSDN that will allow me to build an installable checked build image?

I have been messing with this all day. It is becoming a critical problem
because I need to get my driver debugged and released in order to meet our
release schedule. I need a resolution by Monday. Your help will really be
appreciated!

--
Greg Curwen

Posted by Don Burn on February 29th, 2008


First you needed to check the version of the HAL you should have. Hal.dll
is not likely to have been it. You should not have replaced the files but
instead done a right-click "Properties" chosen the "Vesion" tab and checked
the internal name field. This would have told you the name of the Hal you
needed. Do the same with the ntoskrnl.exe file since there are multiple
versions there.

Get the correct ones with the technique you used, but rename them hal.chk
and ntoskrnl.chk then you could have added a line to the boot.ini with
/KERNEL=ntoskrnl.chk /HAL=hal.chk and been able to boot either way.



--
Don Burn (MVP, Windows DDK)
Windows 2k/XP/2k3 Filesystem and Driver Consulting
Website: http://www.windrvr.com
Blog: http://msmvps.com/blogs/WinDrvr
Remove StopSpam to reply


"GCurwen" <gcurwen@octagonsystems.com> wrote in message
news:9315FF30-EEE1-47D4-A9D0-2D21FCEF6938@microsoft.com...


Posted by GCurwen on March 3rd, 2008


Hi Don,

Thanks for answering. I tried the filename.chk method initially, but had
the same results. I wondered if I had a version mismatch. I will give it a
try.

Thanks again,
I will let you know how it goes.

Best,
Greg

--
Greg Curwen


"Don Burn" wrote: