Getting your legacy app to run

21 Feb

So this is a real life example of getting a legacy app to run. It might not be a one-trick-fixes-all document, however in my case it did the trick. My job was to install a very old app. on our Citrix XenApp environment (W2K3/XA45HRP7). After installing the app on WinXP I tought easy job. However the app just wouldn’t run on Windows Server 2003. After enabling Windows 95 Compatibility mode on the executable the app. started working.

To enable this for your users you need to import the HKCU section of the registry with a new key. You can do this via Group Policy Preferences or a loginscript of some sort. The key you need to import is this:

HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers
Valuename: C:\Program Files\.......\.......\your.exe
Valuetype: REG_SZ
Valuedata: WIN95 (seperate more values with a space)

A complete list of all compatibility settings below.

Value Description
WIN95 Windows 95
WIN98 Windows 98
WIN4SP5 Windows NT 4.0 SP5
WIN2000 Windows 2000
WINXPSP2 Windows XP SP2
WINXPSP3 Windows XP SP3
VISTARTM Vista
VISTASP1 Vista SP1
VISTASP2 Vista SP2
WIN7RTM Windows 7
WINSRV03SP1 Windows Server 2003 SP1
WINSRV08SP1 Windows Server 2008 SP1
DISABLETHEMES Disable Visual Themes
640X480 Run in 640 x 480 screen resolution
HIGHDPIAWARE Disable display scaling on high DPI settings
256COLOR Run in 256 colors
DISABLEDWM Disable Desktop Composition
RUNASADMIN Run program as an administrator

For me that did the trick on RDP. However the app. just wouldn’t launch via ICA.
After some googling I found out that a lot of people experience this with legacy apps.

My solution was adding a new regkey in the HKLM part

HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\CtxHook
Valuename: ExcludedImageNames
Valuetype: REG_SZ
Valuedata: your.exe;your2nd.exe;your3rd.exe

For more information about this key see this document.

Categories:

Citrix XenApp 4.5 & 5.x

Comments

Leave a Reply