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!
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