* :--------------------------------------- * ------------------------: CopyBook for GetLogicalDrives API * : Uset to obtain a list of Drives in * : the current system. * : If WIN32API-RC returns a value larger * : than GLD-DRIVE-BUFFER-LENGTH it is * : necessary to increase the size of * : GLD-DRIVE-STRINGS. When more than 40 * : drives are mapped. * :--------------------------------------- * * To use: * * COPY WIN32API. * COPY GETDRIVE. * . * . * ------------------------: Clear any previous data in * : preparation to making our request * MOVE LOW-VALUES TO GLD-DRIVE-STRINGS * MOVE LENGTH OF GLD-DRIVE-STRINGS TO GLD-DRIVE-BUFFER-LENGTH * * ------------------------: Call the GUI ScreenIO API routine: * * SET API-GETLOGICALDRIVES TO TRUE * CALL 'GSWINAPI' USING WIN32API-PARMS * GLD-DRIVE-BUFFER-LENGTH * GLD-DRIVE-STRINGS * DUMMY * DUMMY * DUMMY * DUMMY * * IF WIN32API-FAILED * do error-routine * ELSE * IF WIN32API-RC < GLD-DRIVE-BUFFER-LENGTH * UNSTRING GLD-DRIVE-STRINGS DELIMITED LOW-VALUES INTO * WS-DRIVE-1 * WS-DRIVE-2 * WS-DRIVE-3 * WS-DRIVE-4 * ... * END-IF * END-IF * * ---------------------------------------------------------------- * 01 GLD-DRIVE-BUFFER-LENGTH PIC 9(9) COMP-5. 01 GLD-DRIVE-STRINGS PIC X(160).