I have downloaded and tested both the NexiTech evaluation copy of their ASPI driver (from
http://www.nexitech.com/site/downloads.shtml) and the Nero ASPI driver (from
http://ww2.nero.com/nero6/enu/ASPI_Driver.html). Unfortunately neither of these worked, in the sense that I could not simply replace the Adaptec-written file wnaspi32.dll with either of the third party files, and have my software run.
I have tested the Nero and Nexitech drivers with SNOOPER, an ASPI snooper program written by Brian Sawert and distributed with his book, "The Programmers Guide to SCSI" (
http://www.sawert.com/scsi/main.html) and with ASPI TAPE SNOOP, written by Till Toenshoff and available from the codeguru website (
http://www.codeguru.com/Cpp/W-P/system/article.php/c5657/).
The results were:
The NERO dll caused both programs to hang on start up.
When using the NexiTech dll, the SNOOPER program failed to detect any hard drives, while ASPI TAPE SNOOP could detect the tape drives, but was unable to read them.
To be fair to Nero and NexiTech, they never claimed that their dlls will work in this manner. In fact, Nero specifically states that their dll can not be used with any programs other than their own. So I have deleted it. The NexiTech dll is intended to be used by software developers in writing their own software, and on purchase they provide software coding examples of its use. But it is apparently sufficiently different from Adaptec's ASPI that software written and tested for the Adaptec dll will not work with the NexiTech dll without modification. I am however still investigating what those modifications are, and so am still evaluating the NexiTech dll as a possible solution.
As far as Adaptec goes, their current version of ASPI is now three years old, which is a long time to leave leaky software in circulation. I can only conclude they aren't too serious about supporting ASPI.
I agree that ASPI as a technology, while not a bad idea in theory, is a failure in practice.
But I am stuck with it so am still looking for a solution.