Fixing Office 2007's Quick Access Toolbars With Citrix User Profile Manager

Not sure where user profile management might be useful? Here is an example that should apply to almost everyone.

The obvious new user interface feature of Microsoft Office 2007 is the ribbon. But there are numerous other UI enhancements over Office 2003. One of these are the Quick Access Toolbars. If you are not sure what I am talking about: the following screen shot should give you an idea (from a German version of Office, sorry):

Fixing Office 2007’s Quick Access Toolbars With Citrix User Profile Manager

The Quick Access Toolbar (QAT) is the small toolbar in the upper left corner right next to the big round Office icon - it is highlighted in red. As you can see (or rather guess given the German language) the QAT is highly customizable. You can add arbitrary command icons to the QAT which are then easily reachable from anywhere in the application. Very neat, even more so because every icon in the QAT has its own keyboard shortcut: ALT+1 for the first (leftmost) icon, ALT+2 for the second, and so on.

Very nice, you may say, but how does all this relate to user profiles?

The problem is this: once you have fine-tuned each Office program’s QAT to be just perfect, you log off and back on and … your customizations are gone!

What Happened?

Office stores the configuration of Quick Access Toolbars in files with the extension .qat (who would have thought?) - in the non-roaming part of the profile! This is clearly a design flaw, and the fact that it made it into the final version of the product is a perfect example of Microsoft still being a fat client, PC-centered company. In Redmond nobody seems to think of systems where roaming profiles are not cached on the hard disk after logoff - like Terminal Servers.

What to Do About It?

With classic roaming profiles there is not much you can do about losing custom QAT configurations, they simply lack the necessary configurability. With Citrix User Profile Manager, on the other hand, the solution is simple verging on banal. The only thing you need to do is tell UPM to include *.qat files in the appropriate folder. Here are a few examples for different systems:

Vista, Windows 7, Windows Server 2008 (R2) - language-independent V2 profiles:

AppData\Local\Microsoft\Office\*.qat

Windows XP and Server 2003, English:

Local Settings\Application Data\Microsoft\Office\*.qat

Windows XP and Server 2003, German:

Lokale Einstellungen\Anwendungsdaten\Microsoft\Office\*.qat

Windows XP and Server 2003, Spanish:

Configuración local\Datos de programa\Microsoft\Office\*.qat

Note: These inclusion rules are part of UPM’s default INI configuration files. You need to configure UPM to include .qat files only if you are using Group Policy for configuration - but you probably are, INI files do not scale so well.

Alternatives?

What if you cannot or do not want to use UPM, how can you make sure QAT customizations are not lost? I only see one way (apart from using some other profile management product): In your logoff script, copy the .qat files from the local copy of the profile to the home directory. Copy the other way round in your logon script. That way, you add persistency manually.

Addendum

Aaron Parker mentioned two very interesting things in his blog after I published this article:

There is a hotfix for Office 2007 that makes it possible to change to QAT file storage location to a folder that roams with the profile (are existing files copied over to the new location?). And Office 2010 has a setting that can be configured with the “Office Customization Tool” which allows to choose between roaming or local storage of QAT and Ribbon customization files. Those are nice improvements, but I would have preferred if Microsoft had chosen to get rid of the local storage altogether and move to roaming storage only. The way things are now, QAT customizations only roam if and when administrators explicitly configure them to. They should not have to. It should be the default.

References

Microsoft Knowledge Base: Location of the toolbar file for the Quick Access Toolbar for the 2007 Microsoft Office programs

Microsoft Knowledge Base: Quick Access Toolbar files for 2007 Office applications do not roam with your profile

Citrix Blogs: Create your Outlook auto-signature once with User Profile Manager

Comments

Related Posts

Differences Between Citrix Profile Management and Immidio Flex Profiles

From time to time I get asked about the differences between Citrix’s and Immidio’s profile management products. Here are some common questions along with my answers. Can the product be used to provide a single profile on multiple platforms? Citrix Profile Management 3.x does not have cross-platform capabilities built in. That means you cannot use an XP profile on Windows 7, but you can use the same profile on 32 and 64 bit Windows, if you dare. Citrix has a beta version of PM with cross-platform support for MS Office and Internet Explorer. Flex Profiles does not have true cross-platform capabilities either, but it can be used to make settings available cross-platform that have the same format on all platforms. Example: HKCU\Software\Paint.NET is probably a no-brainer whereas copying HKCU\Software\Microsoft\Internet Explorer around is probably a bad idea. Can the product be used on SBC, VDI and fat clients? This is true for both Citrix PM and Flex Profiles (licensing restrictions may apply). Can the product be used to preconfigure a user’s environment? Both Citrix Profile Management and Immidio Flex Profiles are classic profile management products without the capability to set up a specific user environment or distribute updated settings to all users. That is typically referred to as “user environment management” and two free implementations are Microsoft’s Group Policy Preferences and Pierre Marmignon’s Virtual User Environment Manager. Of course there are many alternatives by companies like AppSense or RES. Can portions of the profile be saved during a session as well as at logoff and at disconnects? Citrix Profile Management loads (respectively streams) the profile at logon and writes changes back at logoff. It also has a feature called “active write back” which, if enabled, causes changed files to be written back to the user store immediately. This works for files only, not for registry keys. Flex Profiles typically is configured to import settings at logon and export again at logoff. Since Flex uses a simple tool for the imports/exports it is conceivable to call that tool during a session as well. There is, however, no built-in support for that. Neither is there for exporting settings at disconnects. Can it be configured what to save and what not? Both products are very flexible when it comes to which parts of the profile should be saved. Yet there is one major difference: by default, Profile Management saves everything whereas Flex Profiles saves nothing. As a consequence, PM just works out of the box whereas Flex needs to be configured for each application individually.
User Profiles

Latest Posts