Here is some code I use to discover the local c drive.
It makes it dead easy to write files to a local directory.
--find client C Drive
SET VAR vClientCDrive TEXT = 'C:'
SET VAR vTmpPath = (CVAL('Scratch') + '\GetNet.TXT')
SET VAR vTmp TEXT = ('ZIP Cmd /c net use >' & .vTmpPath)
&vTmp
CREATE TEMP TABLE TempGetNetUse (TempLocal TEXT (2), TempRemote TEXT (20))
LOAD TempGetNetUse FROM .vTmpPath +
AS FORMATTED USING TempLocal 14 15, TempRemote 24 43
SET VAR vTmp = NULL
SET ERROR MESSAGE 2059 OFF
SELECT TempLocal INTO vTmp FROM TempGetNetUse WHERE TempRemote = '\\client\c$'
SET ERROR MESSAGE 2059 ON
IF vTmp IS NOT NULL AND vTmp LIKE '_:' THEN
--user is on citrix
SET VAR vClientCDrive = .vTmp
ENDIF
Dennis McGrath
Software Developer
QMI Security Solutions
1661 Glenlake Ave
Itasca IL 60143
630-980-8461
[email protected]