VMware Horizon Community
Hoodsie2018
Enthusiast
Enthusiast

Create File on Desktop with System, User and Horizon info

Hi, We tried editing the demo README file to include all the info that we can see when we run 'SET' from cmd.exe inside a session. Also, the 'USER' variables that start with CSIDL_ don't seem to be working either. Here's our config and below is an example of the file:

===============================================

Here is the system info that can help troubleshoot issues:

Username [Flex#%USERNAME%]

Computer [Flex#%COMPUTERNAME%]

OS [Flex#%OS%]

Logon Server [Flex#%LOGONSERVER%]

Profile [Flex#%USERPROFILE%]

My Temp Folders [Flex#%TEMP%]

Local AppData [Flex#%LOCALAPPDATA%]

Roaming AppData [Flex#%APPDATA%]

C ProgramData [Flex#%ProgramData%]

Home Drive [Flex#%HOMEDRIVE%]

Home Share [Flex#%HOMESHARE%]

Documents [Flex#%CSIDL_MYDOCUMENTS%]

Desktop [Flex#%CSIDL_DESKTOPDIRECTORY%]

Music [Flex#%CSIDL_MYMUSIC]

Pictures [Flex#%CSIDL_MYPICTURES%]

Videos [Flex#%CSIDL_MVIDEO%]

Recent [Flex#%CSIDL_RECENT%]

IE Favorites [Flex#%CSIDL_FAVORITES%]

IE Cache [Flex#%CSIDL_INTERNET_CACHE%]

IE Cookies [Flex#%CSIDL_COOKIES%]

Connection Protocol [Flex#ViewClient_Protocol%]

Connection Server [Flex#%ViewClient_Broker_DNS_Name%]

Pool ID [Flex#%ViewClient_LAUNCH_ID%]

Gateway FQDN [Flex#%ViewClient_Broker_GatewayHost%]

Client Location [Flex#%ViewClient_Broker_GatewayLocation%]

UAG Internal IP [Flex#%ViewClient_Broker_Gateway_IP_Address%]

UAG External URL [Flex#%ViewClient_Broker_URL%]

Client Version [Flex#%ViewClient_Version%]

Client # Displays [Flex#%ViewClient_Displays.Number%]

Client Name [Flex#%ViewClient_Machine_Name%]

Client Local IP  [Flex#%ViewClient_IP_Address%]

Client MAC Address [Flex#%ViewClient_Mac_Address%]

Client Timezone [Flex#%ViewClient_Windows_Timezone%]

----------------------------------------------------------------------------------------

To edit go to VMware DEM Management Console  > 'Files and Folders'

============================================================

results:

============================================================

Here is the system info that can help troubleshoot issues:

Username DoeJohn1

Computer VDI-9001

OS Windows_NT

Logon Server \\DC1

Connection Protocol [Flex#ViewClient_Protocol%]

Connection Server [Flex#%ViewClient_Broker_DNS_Name%]

Pool ID [Flex#%ViewClient_LAUNCH_ID%]

Gateway FQDN [Flex#%ViewClient_Broker_GatewayHost%]

Client Location [Flex#%ViewClient_Broker_GatewayLocation%]

UAG Internal IP [Flex#%ViewClient_Broker_Gateway_IP_Address%]

UAG External URL [Flex#%ViewClient_Broker_URL%]

Client Version [Flex#%ViewClient_Version%]

Client # Displays [Flex#%ViewClient_Displays.Number%]

Client Name [Flex#%ViewClient_Machine_Name%]

Client Local IP  [Flex#%ViewClient_IP_Address%]

Client MAC Address [Flex#%ViewClient_Mac_Address%]

Client Timezone [Flex#%ViewClient_Windows_Timezone%]

Profile C:\Users\DoeJohn1

My Temp Folders C:\Users\DoeJohn1\AppData\Local\Temp

Local AppData C:\Users\DoeJohn1\AppData\Local

Roaming AppData C:\Users\DoeJohn1\AppData\Roaming

C ProgramData C:\ProgramData

Home Drive H:

Home Share \\FS1.Contoso.com\DoeJohn1$

Documents [Flex#%CSIDL_MYDOCUMENTS%]

Desktop [Flex#%CSIDL_DESKTOPDIRECTORY%]

Music [Flex#%CSIDL_MYMUSIC]

Pictures [Flex#%CSIDL_MYPICTURES%]

Videos [Flex#%CSIDL_MVIDEO%]

Recent [Flex#%CSIDL_RECENT%]

IE Favorites [Flex#%CSIDL_FAVORITES%]

IE Cache [Flex#%CSIDL_INTERNET_CACHE%]

IE Cookies [Flex#%CSIDL_COOKIES%]

To edit this, go to VMware DEM Management Console  > 'Files and Folders'

Reply
0 Kudos
5 Replies
DEMdev
VMware Employee
VMware Employee

Hi Hoodsie2018,

Those ViewClient_ env vars are set a little while after logon, too late for DEM's logon processing. We will be offering a solution for this in the future, but maybe you can consider the following workaround in the meantime.

The workaround entails refreshing the information once File Explorer has launched. As there's no "-UemRefreshFilesAndFolders" option, we first need to turn your Files and Folders setting into a Fully Enforced Predefined Setting:

  • Create a new Personalization config file, switch to the Predefined Settings tab, click Add..., set Type to Fully Enforced Settings, click Install..., browse to the \\Server\ConfigShare\General\FlexRepository\Settings\File folder, and import the .zip corresponding with your existing Files and Folders setting.
    pastedImage_27.png
  • Save the config file.
  • Disable or delete your existing Files and Folders setting.

By itself, this is not an improvement, as importing the predefined settings during logon will also happen before the ViewClient_ vars are available. However, if we create a shortcut in File Explorer's Startup folder to import this config file again, that (hopefully...) happens once the vars have been set:

pastedImage_35.png

Make sure to update the -i path in Arguments so it points to the fully-qualified path of the config file you created for this. As this is a config file with fully enforced settings, the profile archive name is irrelevant, so that dummy.zip from the screenshot suffices.

Also: Leaving Run asynchronously unchecked is required. Otherwise, DEM might create the shortcut too late, i.e. after File Explorer has scanned the Startup folder.

A few other notes:

  • CSIDL_ env vars are not a standard Windows feature, so I guess they're provided by some other tool in your environment. If that tool runs before the "refresh", DEM might pick up those vars as well. If you can control when that tool runs, you might want to tie the launch of the refresh to that as well, to ensure the CSIDL_ vars are available as well.
  • Minor typo: Connection Protocol [Flex#ViewClient_Protocol%] is missing its leading %.
  • The version of the Horizon client is made available through %ViewClient_Client_Version% (in my tests, at least), so the var reference in Client Version [Flex#%ViewClient_Version%] needs an additional _Client in there.
Reply
0 Kudos
Hoodsie2018
Enthusiast
Enthusiast

Thank you. I'll give this a shot later this morning.

BTW - the CSIDL ones are from the Windows 10 docs. Maybe some other pre-requisite is missing?

Recognized Environment Variables (Windows 10) - Windows Deployment | Microsoft Docs

Mainly trying to print out where the system sees all the various folders redirected to so we can quickly scan this file visually and see if there's something incorrect.

Reply
0 Kudos
Hoodsie2018
Enthusiast
Enthusiast

Create a new Personalization config file, switch to the Predefined Settings tab, click Add..., set Type to Fully Enforced Settings, click Install..., browse to the \\Server\ConfigShare\General\FlexRepository\Settings\File folder, and import the .zip corresponding with your existing Files and Folders setting. ...

DEMdev Where do I do this? I see a Personalization Tab, User Environment, Computer Environment and Condition Sets tabs.

If I select User Environment and then Files and Folders I don't see this tab when I go to create a new one either.

Sorry I'm pretty new to DEM.

Reply
0 Kudos
DEMdev
VMware Employee
VMware Employee

Hi Hoodsie2018,

On the Personalization tab:

  • Pick (or create, via Create Folder... in context menu) a folder in the tree where you would want to create your new config file.
  • Click Create Config File in the ribbon.
  • Select Create a custom config file, and click Next.
  • Enter a file name, and click Finish.
  • Continue from "switch to the Predefined Settings tab" from my previous post Smiley Happy.
Reply
0 Kudos
DEMdev
VMware Employee
VMware Employee

Last month, I wrote:

Those ViewClient_ env vars are set a little while after logon, too late for DEM's logon processing. We will be offering a solution for this in the future, but maybe you can consider the following workaround in the meantime.

With the release of DEM 2009, the new %{ViewClient_propertyName}% references come to the rescue:

Connection Protocol [Flex#%{ViewClient_Protocol}%]

Connection Server [Flex#%{ViewClient_Broker_DNS_Name}%]

Pool ID [Flex#%{ViewClient_LAUNCH_ID}%]

et cetera

Reply
0 Kudos