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

  • Live Event Date: December 11, 2014 @ 1:00 p.m. ET / 10:00 a.m. PT Market pressures to move more quickly and develop innovative applications are forcing organizations to rethink how they develop and release applications. The combination of public clouds and physical back-end infrastructures are a means to get applications out faster. However, these hybrid solutions complicate DevOps adoption, with application delivery pipelines that span across complex hybrid cloud and non-cloud environments. Check out this …

  • On-demand Event Event Date: October 29, 2014 It's well understood how critical version control is for code. However, its importance to DevOps isn't always recognized. The 2014 DevOps Survey of Practice shows that one of the key predictors of DevOps success is putting all production environment artifacts into version control. In this webcast, Gene Kim discusses these survey findings and shares woeful tales of artifact management gone wrong! Gene also shares examples of how high-performing DevOps …

Most Popular Programming Stories

More for Developers

RSS Feeds