GetASPI32SupportInfo Function

Prototype: DWORD GetASPI32SupportInfo(VOID)

The GetASPI32SupportInfo function returns the number of host adapters installed and ensures that the ASPI manager is initialized properly. This function must be called once at initialization time, before SendASPI32Command is accessed. The number of host adapters returned represents the logical bus count, not the true physical adapter count. For host adapters with a single bus, the host adapter count and logical bus count are identical.

This function has no parameters.

The DWORD return value specifies the result of the ASPI request. The DWORD is encoded as follows:

Table 4-1. Return Values from GetASPI32SupportInfo Function

Length

Bit

Meaning

WORD

31-16

Reserved = 0

BYTE

15-8

Status


SS_COMP

ASPI request completed without error

SS_FAILED_INIT

ASPI manager unable to initialize; ASPI services not available


BYTE

7-0

If Status = SS_COMP

Number of host adapters


Example

This example returns the current status of ASPI for Win32.


 DWORD ASPIStatus;
 BYTE NumAdapters;
 HWND hwnd;
    .
    .
 ASPIStatus = GetASPI32SupportInfo();
 switch ( HIBYTE(LOWORD(ASPIStatus)) )
  {
  case SS_COMP:
   /*
    * ASPI for Win32 is properly initialized
    */
   NumAdapters = LOBYTE(LOWORD(ASPIStatus));
   break;
  default:
   MessageBox( hwnd,
      "ASPI for Win32 is not initialized!!",
      NULL,
      MB_ICONSTOP );
   return FALSE;
  }
   .
   .