SCSI Information DLL

Purpose

SCSI Info DLL helps to identify SCSI parmeters of local SCSI drives by their drive letters and determine drive letter by SCSI parameters on Windows NT machines.

Usage

SCSIInfo.DLL exports following functions:

  • BOOL ScanDrives(void)    
    - scans local drives and stores internally their SCSI parameters
  •     return: ERROR_SUCCESS if succeeded, OS error code if failed
        remarks: this function has to be called before any other request can be issued. in case of changes in SCSI configuration call 
        this function again to refresh internal information

  • int GetDriveInfo(char cDriveLetter,int* pPortNumber,int* pPathId,int* pTargetId,int* pLun)
    - returns SCSI parameters for specified drive letter:
    • cDriveLetter - drive letter
    • pPortNumber - pointer to variable receiving port number or NULL
    • pPathId- pointer to variable receiving port id or NULL
    • pTargetId - pointer to variable receiving target id or NULL
    • pLun - pointer to variable receiving LUN or NULL
  •     return: ERROR_SUCCESS if succeeded, ERROR_FILE_NOT_FOUND if no information found
        remarks: before first call of this function the function ScanDrives() should be called at least once. if one or more pointers to 
        receiving  variables are NULL,  the variable value assumed as not required and will not be filled (e.g. if only PortNumber is 
        required, set pPortNumber to address of receiving  variable and let other parameters to be NULL)

  • int GetDriveLetter(char* pcDriveLetter,int PortNumber,int PathId,int TargetId,int Lun)
    - returns drive letter for specified SCSI parameters:
    • pcDriveLetter - pointer to variable receiving drive letter, cannot be NULL
    • PortNumber - port number
    • PathId - path id
    • TargetId - target id
    • Lun - LUN
  •     return: ERROR_SUCCESS if succeeded, ERROR_FILE_NOT_FOUND if no information found
        remarks: before first call of this function the function ScanDrives() should be called at least once.

  • int GetDriveNumber(int PortNumber,int PathId,int TargetId,int Lun)
    - returns drive number (0 - A, 1 - B, 3 - C etc.)  for specified SCSI parameters:
    • PortNumber - port number
    • PathId - path id
    • TargetId - target id
    • Lun - LUN

        return: zero based drive number, -1 no information found
        remarks: before first call of this function the function ScanDrives() should be called at least once.

     

Support

For bugfixes and future releases mailto:m.becker@ais-gmbh.de

Copyright Information

Copyright A.I.S. GmbH (C) 2000

Version Information

date user version comment
22.08.2000 m.becker@ais-gmbh.de 1.0.0.3 Added GetDriveNumber function
10.08.2000 m.becker@ais-gmbh.de 1.0.0.1 updated function prototypes
10.08.2000 m.becker@ais-gmbh.de 1.0.0.0 created

Downloads

Download source code and demo project (including release build of demo app) - 142 Kb


Comments

  • There are no comments yet. Be the first to comment!

Leave a Comment
  • Your email address will not be published. All fields are required.

Top White Papers and Webcasts

  • On-demand Event Event Date: December 18, 2014 The Internet of Things (IoT) incorporates physical devices into business processes using predictive analytics. While it relies heavily on existing Internet technologies, it differs by including physical devices, specialized protocols, physical analytics, and a unique partner network. To capture the real business value of IoT, the industry must move beyond customized projects to general patterns and platforms. Check out this webcast and join industry experts as …

  • On-Demand Webcast APIs can be a great source of competitive advantage. The practice of exposing backend services as APIs has become pervasive, however their use varies widely across companies and industries. Some companies leverage APIs to create internal, operational and development efficiencies, while others use them to drive ancillary revenue channels. Many companies successfully support both public and private programs from the same API by varying levels of access to different constituents. Nearly all …

Most Popular Programming Stories

More for Developers

RSS Feeds