Sector viewing program stopped working

Hey all,

I wrote a program long ago to read raw sector data and TOC data from CDs. It does rely on loading ‘wnaspi32.dll’. It’s always worked fine, until now. I just built this new PC and it’s booting from SATA RAID. It does not have a SCSI card like my old system. I have installed Adaptec’s ASPI. Running XP Pro.

When I start the program, it first scans for CD/DVD drives to populate the device list. If the device string does not indicate ‘CD-ROM’ it is not added. I now get nothing in the list. I’ve always had SCSI CD/DVD drives but now I have a LiteOn 1693S. The program works on several systems at my work with IDE drives but most (maybe all) of these also have SCSI cards installed.

Is this problem because I’m booting from SATA or because I do not have a SCSI card installed? Or, could it be something else?

Any help much appreciated.


You might go with an older version that’s more compatible with your program,
I prefer using programs that don’t need such old drivers with XP.

The latest version of Adaptec’s ASPI drivers (v4.71) seems to only support SCSI drives under W2K/XP. Strangely, under Win 9x/NT 4 it’s all ok though. It seems Adaptec does not want to support IDE anymore in the latest Windows.

As rbrtpl said, go back to older version.

I did noticed also that the v4.60 does not seems to want to list SCSI CDROM drives. Seems to do opposite.

Yep, all the points above are correct. If you can’t get an older version on wnaspi32, you can try millenods version. It was posted on this forum a while back - I used it for a test and it worked a treat.

Well, thanks for the suggestion(s) everyone, but I get the same results when running Both the wnaspi32.dll and aspi32.sys are this version.

I really thought this would work because today I had a similar problem at the office. Our install set put 4.6 on XP and then no SCSI devices showed up in our software (just like Truman said). Once I installed 4.7 all was working. But, I then realized that we have several systems (all on XP but running different software from us) that allow both IDE and SCSI to work. I’m not sure if they have 4.6 or 4.7.

I still think this might come down to my home PC booting from SATA RAID. The only other drive in the system right now is the LiteOn. I may try adding the Adaptec card and a SCSI ROM drive just to see what happens.

Any other ideas would be greatly appreciated.


Found something interesting. I decided to try the Nero WNASPI32.DLL so I dropped it in the folder with my program. Everything seems to work now.

Any ideas why their dll would fix this?


It works because it’s actually a wrapper to Windows DeviceIOControl SPTI. Same as what millenod did with his version. Under normal situations, it won’t work under normal user account privileges.


Does that mean the Nero DLL does not rely on ‘aspi32.sys’?

I read your source code yesterday on the readcd/writecd. It seems simple enough to quit using ASPI. Not sure I understand the account privelages you just mentioned though.


I just checked in debug mode and see that I get status code 0xEB when the GetASPI32SupportInfo() returns when using the Adaptec ASPI 4.6. This error code ‘SS_BAD_INSTALL’ means that ASPI is not installed properly. Why would this be? I have checked the version of the DLL and the SYS and they match.

Yep, it doesn’t. I once installed a fresh copy of XP with no software & no ASPI installed and manually copied the Nero WNASPI32.DLL and my cdreader, and it still worked.

Windows SPTI normally only work under administrator account. If you make a restricted user account and login, you’ll find that your program fails to run with Nero’s DLL or SPTI. I suppose it’s not that of a big problem, since most people (including me) uses administrator account these days.

SPTI is not too bad to use. You can just copy & paste the parts you need from my source code. I put no restriction to those codes.