Lew,
I culled this out of some code I use.
This isn't an api, but it works well for me in vfp.
hope it helps.
--Reidar
*SubstedDrivesArray(@aArray)
* Returns number of substed drives
* Fills in aArray[cDrive,cPath]
* uses WSH,%Comspec%
*NO error checking
lParameters aSubsted
local nDrives,nDrive,nSubsted,nResult
local cTempFile,cList,cLine,cDrive,cPath,cRunDos
local oShell
Local array aList[1]
Store 0 to nDrives,nDrive,nSubsted,nResult
Store "" to cTempFile,cList,cLine,cDrive,cPath,cRunDos,aList
cTempFile = Addbs(GetEnv("temp")) + Sys(2015) + ".tmp"
cRunDos = "Subst > " + m.cTempFile
oShell = createobject("WScript.Shell")
nResult = oShell.Run("%COMSPEC% /c " + m.cRunDos , 0,.T.)
oShell = .null. && Done with this
cList = FileToStr(m.cTempFile)
Delete File (m.cTempFile) && Done with this
nDrives = ALines(aList,m.cList,.t.)
for nDrive = 1 to m.nDrives
*Line Ex: M:\: => F:\M
cLine = aList[m.nDrive]
cDrive = Left(m.cLine,3)
cPath = Alltrim(Substr(m.cLine,8))
* validate it
if (At(":\",m.cDrive) = 2 ;
and At(":\",m.cPath) = 2 )
nSubsted = m.nSubsted + 1
dime aSubsted[m.nSubsted,2]
aSubsted[m.nSubsted,1] = Left(m.cDrive,2)
aSubsted[m.nSubsted,2] = m.cPath
EndIf && validate
Next && nDrive
Return m.nSubsted && >>EXIT>>>>>>>>
_______________________________________________
Post Messages to: [email protected]
Subscription Maintenance: http://leafe.com/mailman/listinfo/profox
OT-free version of this list: http://leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/[EMAIL PROTECTED]
** All postings, unless explicitly stated otherwise, are the opinions of the
author, and do not constitute legal or medical advice. This statement is added
to the messages for those lawyers who are too stupid to see the obvious.