How do i remove the language bar? (Updated)

The language bar, as handy as Microsoft think it is can cause real hassle in terminal services or Citrix sessions. Seeing a language bar for each opened application is both annoying and confusing… and well lets face it, how do often you actually use it?

As the language bar is part on the office installation, i did not want to go fiddling with the installation properties incase it knocked anything else in the office install out of sync but i did need to remove it from 70+ citrix servers without much overhead.

I read an article recently on the citrix forums and it suggested that ctfmon.exe was the owner of the language bar, once i knew this i wrote a script to deny users access to this file, which in turn would block from running.

I decided to use xcacls as a command line utility, i used xcacls to straight out deny members of the users group (locally) to access the file, this is done like this:

xcacls.exe C:\windows\system32\ctfmon.exe /E /d users /Y

if you are using windows 2000, you can copy the xcacls.exe to an network share and run it from there without any issue.

\\server\share\xcacls.exe %SystemRoot%\system32\ctfmon.exe /E /d users /Y

and if you want to hit 60+ servers remotely, use psexec

psexec @servers.txt -u domain\username cmd /c “\\servername\ctx\utils\xcacls.exe %SystemRoot%\system32\ctfmon.exe /E /d users /Y”

Servers.txt would be in the same directory as psexec, and would contain the server names one per line.

I’ve uploaded the script here:

Update:

As of server 2008 / windows vista the above fix no longer works, this is due to the language bar being heavily integrated.

The following key controls the language bar in these operating systems:

HKEY_CURRENT_USER\Software\Microsoft\CTF\LangBar

Showstatus (DWORD).

To hide the language bar, set the value of showstatus to 3.

This can be done using a mandatory profile or group policy as below:

  1. Niels van Dijk
    April 10, 2012 at 8:54 am

    I’m using a VDI with a mandatory profile, but applying this regkey does not hide my language bar. I also tried many other options, but the language bar keeps visible.

    • April 12, 2012 at 12:34 pm

      Hi Niels,

      Works ok here, are you including this in the mandatory profile? Which version of windows? Have you tried applying it via GPO?

  2. anonymous
    May 7, 2012 at 10:21 am

    same problem
    vith VDI and mandatory profile on windows 7 doesn’t work

    • May 15, 2012 at 8:29 am

      Try using group policy preferences instead of the mandatory profile. it gives you more options.

  3. Niels van Dijk
    May 15, 2012 at 9:44 am

    What I did to resolve the issue is to edit the NTUSER.MAN in the mandatory profile (Load Registry Hive) and delete the HKCU\Keyboard Layout and set the values for Preload and Subsitutes the way I want them initially. So in my case Dutch language with US International Keyboard.
    The setting was English language with US keyboard. So this US keyboard setting was still applied and visible for the user, although I tried to adjust it applying gpo preferences.

  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: