How can I identify drive letters available to a computer?

I am trying to establish data paths for an application that could have data on a local drive or on a network share. My process is to select a drive letter, and then nominate a folder name. It then creates an INI file with the path stored and creates the folder on the nominated drive. The process works fine, but relies on the operator knowing which drive letter to use.
Is there a way within Clarion (9.0) to get a list of available drive letters, both local and networked that can then be put in a queue for selection?
Regards

Our Swiss Army Knife, vuFileTools has several different methods that list the drives, but the one with the most details is: vuGetDriveListEx

It’s fast and it works with identifying all drive types.

You can see the docs on it here (and the other functions are all online too)

The function example shows how to load them into a queue.

It will also tell you extended information about each drive.

There are over 200 things it can do for Clarion developers and we are about to add even more!

https://www.clarionproseries.com/html/vufiletools.html

GetDriveType() API function. You loop through A to Z and try them all passing 'A:\' to 'Z:\'

GetDriveType(*CSTRING DriveRootPath),UNSIGNED,PASCAL,RAW,NAME('GetDriveTypeA'),DLL(1)

!github.com/MarkGoldberg/CwUnit Libsrc FilesHelper.inc

!For API Call:  GetDriveType
DRIVE_UNKNOWN     EQUATE(0)
DRIVE_NO_ROOT_DIR EQUATE(1)
DRIVE_REMOVABLE   EQUATE(2)
DRIVE_FIXED       EQUATE(3)
DRIVE_REMOTE      EQUATE(4)
DRIVE_CDROM       EQUATE(5)
DRIVE_RAMDISK     EQUATE(6)

You may find Mark’s File Helper class useful.

Please post back your code you created