Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

59 lines
2.0 KiB

//-----------------------------------------------------------------------------
//
// File: aspi32.h
//
// Microsoft Digital Rights Management
// Copyright (C) Microsoft Corporation, 1998 - 1999, All Rights Reserved
//
// Description: interface for the Aspi32Util class
//
//-----------------------------------------------------------------------------
// #include "stdafx.h"
#include "windows.h"
#include "scsidefs.h"
#include "wnaspi32.h"
#include "ntddscsi.h"
#include "serialid.h"
#if !defined(AFX_ASPI32UTIL_H__AEAF6F94_44A2_11D3_BE1D_00C04F79EC6B__INCLUDED_)
#define AFX_ASPI32UTIL_H__AEAF6F94_44A2_11D3_BE1D_00C04F79EC6B__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
typedef DWORD (__cdecl *P_SAC)(LPSRB);
typedef DWORD (__cdecl *P_GASI)(VOID);
class Aspi32Util
{
public:
Aspi32Util();
virtual ~Aspi32Util();
BOOL ASPI32_GetScsiDiskForParallelReader(char *szDL, SCSI_ADDRESS *pScsiAddr);
BOOL ASPI32_GetDeviceDesc(int nHaId, int tid, int LUN, LPBYTE pBuf);
BOOL GetDeviceManufacturer(LPSTR szDriveLetter, LPSTR pBuf);
BOOL GetScsiAddress(LPSTR szDL, int nMaxHA);
BOOL ASPI32_GetHostAdapter(int nHaId, LPSTR szIdentifier);
BOOL ASPI32_GetDevType(int nHaId, int tid, int *pnDevType);
BOOL ASPI32_GetDiskInfo(int nHaId, int tid, int *pnInt13Unit);
BOOL DoSCSIPassThrough(LPSTR szDriveLetter, PWMDMID pSN, BOOL bMedia );
BOOL GetDeviceSerialNumber(int nHaId, int tid, PWMDMID pSN );
BOOL GetMediaSerialNumber(int nHaId, int tid, PWMDMID pSN );
// Attributes
DWORD m_dwASPIStatus;
DWORD m_dwASPIEventStatus;
HANDLE m_hASPICompletionEvent;
unsigned char m_pInquiryBuffer[256];
BYTE m_NumAdapters;
SCSI_ADDRESS m_scsiAddress;
P_SAC m_funSendASPI32Command;
P_GASI m_funGetASPI32SupportInfo;
HINSTANCE m_hd;
};
#endif // !defined(AFX_ASPI32UTIL_H__AEAF6F94_44A2_11D3_BE1D_00C04F79EC6B__INCLUDED_)