Using ASPI for Win32 - An Overview

The ASPI manager for Win32 is implemented as a Dynamic Link Library (DLL) called wnaspi32.dll. ASPI function calls can be used to retrieve information about installed SCSI host adapters and devices, and to execute SCSI I/O requests. The ASPI for Win32 layer is fully re-entrant, supporting multitasking and multithreaded operations. To use ASPI for Win32, the following two functions must be imported from wnaspi32.dll into the client's Win32 application.

Function Description
GetASPI32SupportInfo This function returns the number of SCSI host adapters installed and ensures that the ASPI manager is initialized properly. Clients must call this function once at initialization time before the SendASPI32Command function can be accessed.
SendASPI32Command This function handles requests for SCSI I/O.

The following SCSI I/O command codes are defined within the SendASPI32Command:

Value Meaning
SC_HA_INQUIRY Get information about installed host adapters, including the number of installed adapters.
SC_GET_DEV_TYPE Get information about installed SCSI devices.
SC_EXEC_SCSI_CMD Execute SCSI I/O.
SC_ABORT_SRB Abort an outstanding I/O request.
SC_RESET_DEV Reset an individual SCSI target.
SC_GET_DISK_INFO Get information on disk type SCSI devices. (Not used with Windows NT)