I use a little exe that I wrote a while ago.

It outputs data in an INI file format, which I redirect to a file and then read using ReadProfileString().

Here is an example of the data:
Code:
[CTXCINFO]
WFVersion_MAJOR=2
WFVersion_MINOR=18
WFVersion_BUILD=663
WFVersion_CSD=Service Pack 3
WFClientBuildNumber=17534
WFClientName=SGB007968
WFClientDirectory=C:\PROGRA~1\Citrix\ICACLI~1\
WFClientProductId=0x1
WFClientAddress=10.9.2.139
WFClientDisplay_HRES=1247
WFClientDisplay_VRES=937
WFClientDisplay_DEPTH=2
WFClientCacheMem_TINY=32768
WFClientCacheMem_LOW=3145728
WFClientCacheMem_XMS=0
WFClientCacheMem_DISK=0
WFClientCacheDim_SIZE=0
WFClientCacheDim_MIN=0
WFClientCacheDim_LEVEL=0
WFClientCacheDim_OVERHEAD=0
WFICABufferLength=2048
WFInitialProgram=
WFApplicationName=#SGB Desktop
[WFClientDrives]
C=2
D=9
G=4
H=4
I=4
J=4
P=4
Y=4



If you can't get the alternatives working and you'd like to use this, send me a private message and I'll send the executable to you.