Export/Import File Type Associations (FTA) successfully using UEM

 

With the introduction of Windows 10 and Server 2016 there has been a struggle configuring and importing/exporting file type associations (FTA), configuring Default apps from the Settings pane (previously the Control Panel) and user configured FTA/App associations in non-persistent environments.

In this blog post I will explain a working configuration for saving FTA’s and Default Apps assignments using tools created by Christoph Kolbicz and the required configuration in UEM.

Let me describe the three scenarios for which this configuration will work.

Default apps (from the Settings pane)

The Default apps pane is used to configure the default application for certain functionality, like e-mail, web browsing, music player, video player, etc.

User configured FTA/App associations

When you open a file type that has no application associated with it, you will receive a window (as displayed below, in Dutch) in which you are able to associate an application with a file type.

Pre-configured/managed FTA’s

Pre-configured/managed FTA’s are predefined and are centrally configured.

Creating the configuration and explaining the details

Let’s first create the configuration.

For the following steps I (as an example) assume you have both SetUserFTA.exe and GetUserFTA.exe in \\server\share, but both can also be placed somewhere locally on the system for better performance.

1 – Create a Logon Task

In the UEM Management Console go to the User Environment tab and create a Logon Task.

Configure the settings as provided in the picture above.

The command line is:

\\server\share\SetUserFTA.exe "%LOCALAPPDATA%\Microsoft\Windows\UserFTA.config"

2 – Create a Logoff Task

In the UEM Management Console go to the User Environment tab and create a Logoff Task.

Configure the settings as provided in the picture above.

The command line is:

cmd.exe /c \\server\share\GetUserFTA.exe > "%LOCALAPPDATA%\Microsoft\Windows\UserFTA.config"

3 – Create a new Config File

In the UEM Management Console go to the Personalization tab and create a new Config File containing the following entries.

[IncludeRegistryTrees]
HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FileExts
HKCU\SOFTWARE\Microsoft\Windows\Shell\Associations
HKCU\Software\Classes
HKCU\Software\Microsoft\Windows\CurrentVersion\ApplicationAssociationToasts
 
[ExcludeRegistryTrees]
HKCU\Software\Classes\Software
HKCU\Software\Classes\Local Settings
 
[IncludeFiles]
<LocalAppData>\Microsoft\Windows\UserFTA.config

Explanation of the entries

[IncludeRegistryTrees]
HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FileExts
HKCU\SOFTWARE\Microsoft\Windows\Shell\Associations
HKCU\Software\Classes

These entries come from the built-in UEM template Default Apps and FTAs and contain the managed/predefined FTA’s, as described in chapter Pre-configured/managed FTA’s, and user configured FTA’s.

[IncludeRegistryTrees]
HKCU\Software\Microsoft\Windows\CurrentVersion\ApplicationAssociationToasts

This entry contains the associated applications with the file types as described in chapter User configured FTA/App associations.

[IncludeFiles]
<LocalAppData>\Microsoft\Windows\UserFTA.config

And finally, this entry contains the file type associations as described in chapter Default apps (from the Settings pane). These settings are exported/imported using GetUserFTA.exe and SetUserFTA.exe.

Optional: I configure managed FTA’s to Run Once and let them roam using the provided Config File above. This way the user has the ability to change the FTA to whatever he/she wants.

Up to now the provided solution proved to be predictable and stable at my current customer. However, if you have any feedback, please leave a comment. I hope this has been informative.

Ivan de Mes

Ivan de Mes

Ivan de Mes works as an EUC Solution Architect for Login Consultants in The Netherlands. Ivan has over 19 years of experience in delivering workspace solutions at large customers in banking, health care, education and others.

In 2017 and 2018, Ivan was rewarded with the VMware vExpert status.



For more information, please read the about page.

You may also like...

12 Responses

  1. Jeff says:

    Can you explain in further detail how you set this up? I’m not sure I understand. I want users to be able to change their default apps to whatever they want and for that to roam and be persistent.

    “Optional: I configure managed FTA’s to Run Once and let them roam using the provided Config File above. This way the user has the ability to change the FTA to whatever he/she wants.”

    • Ivan Ivan says:

      Hi Jeff,

      You can configure managed FTA’s to be configured once using the “Run once” option. After that the users will be able to change the FTA to what they want. The FTA’s will be saved using the Flex config file and GetUserFTA.exe utility which outputs to a file which is saved by the Flex config file as well.

      Does this answer your question? Or do you have any specific questions?

  2. Daylan says:

    2018-04-10 12:22:11.536 [FATAL] FlexUtils::ExecuteCommand: Error 2 calling ‘\\kramer\uem\GetUserFTA.exe > C:\Users\testuser\AppData\Local\Microsoft\Windows\UserFTA.config’

    If I run both the set command and get command from a non-elevated CMD, both work… why don’t they work with UEM?

    • Daylan says:

      [FATAL] FlexUtils::ExecuteCommand: Error 2 calling ‘\\kramer\uem\GetUserFTA.exe > C:\Users\testuser\AppData\Local\Microsoft\Windows\UserFTA.config’
      [FATAL] FlexUtils::ExecuteCommand: Error 2 calling ‘\\kramer\uem\SetUserFTA.exe \\kramer\uem\UserFTA.config’ (AsUser)
      If I run both the set command and get command from a non-elevated CMD, both work… why don’t they work with UEM?

  3. Chesky says:

    It only works for me when i login to a VDI that i have logged in already in the past, then I’ll see the FTA changes from the previous VDi however if i log in to a new VDI and i get the preparing windows screen then everything gets reset to the default, any idea?

    FYI: Make sure you don’t have any spaces in the path of the executable (like “Program Files”) as it won’t work even with quotes, I’ve learned it the hard way…

    • Ivan Ivan says:

      Which branch version of Windows 10 are you using? Did you check if the FTA’s are successfully exported to the file when using GetUserFTA.exe?

  4. Shawn says:

    Tested manually running the command and it works. But it does not work when using logon task.

    //server/share/setUserFTA.exe //server/share/DefaultFTA.config

  5. Svenson says:

    Hi Ivan, This is a great article, just like many others that you wrote about the VMware UEM. But i have one little question. The FTA Export is going okay and is being roaming with the help of the config files across the users sessions. The only thing that isn’t working, is the import of the FTA’s. I have used the exact same commands like you did above (Ofcourse i have change the file paths :-)). For troubleshooting i have looked down the UEM log files but cant find something wrong. The UserFTA.config is at the right location: %localappdata%. Is there something that i did wrong ? These are my exact commands for the login and logoff tasks:
    \\glapp41\UEMConfig\scripts\SetUserFTA.exe “%LOCALAPPDATA%\Microsoft\Windows\UserFTA.config”

    cmd.exe /c \\glapp41\UEMConfig\scripts\GetUserFTA.exe > “%LOCALAPPDATA%\Microsoft\Windows\UserFTA.config”

    Thx in advance !
    Svenson

  1. March 21, 2018

    […] VMware UEM (blog post by Ivan de Mes) […]

  2. April 4, 2018

    […] 2018 Apr 1 – in Additional UEM Config section, added link to Ivan de Mes Export/Import File Type Associations (FTA) successfully using UEM […]

  3. April 4, 2018

    […] In VMware User Environment Manager > Additional UEM Config section, added link to Ivan de Mes Export/Import File Type Associations (FTA) successfully using UEM […]