View RSS Feed

Development Team Blog

Visual DataFlex Supports Citrix XenApp

Rate this Entry
Note: This information applies to Visual DataFlex 2008 and higher.

With the release of Visual DataFlex 12.1 official support was added for Windows Terminal Services. In Visual DataFlex 2008 we added official support for Citrix XenApp. Bjorn Thunvik assisted us with these tasks and, at the time, he wrote a great Start Center article explaining what this official support means. This is an important topic and I felt that it was worth adding to our development blog. Below is Bjorn's explanation of what official WTS and Citrix supports means to you.

Citrix Systems, Inc. is the global leader in application delivery infrastructure. Citrix XenApp is an enterprise level product family for remote/distributed computing and virtualization solutions, widely used to deliver applications to end-users.

But I have been running my application on Citrix for years, what’s the big deal?

Well, first of all we added official support for Citrix XenApp. Even though your application has been working on Citrix for years, there was no actual support for it in the product and there is a chance that parts of the programs were not always functioning as intended. With the release of Visual DataFlex 2008 official support was added which means that the product has been fully tested on the Citrix XenApp platforms. A number of improvements have been made to fully support all features of the Citrix XenApp product family.

User Counting

One of the problems running Visual DataFlex on Citrix XenApp was the user counting system. Sometimes the user count did not correctly increment the number of users. Even worse, in some cases the user count did not correctly decrement the user count. This would leave the system to either let too many users run the system, or too few.

Visual DataFlex now correctly counts users per session. Running multiple applications in one session will count as one user. Two users running an application with the same login name but running in separate sessions will count as two users.


In earlier versions of Visual DataFlex the sentinel used in BusinessProcesses could crash the system when running in seamless mode, leaving only the sentinel running. Visual DataFlex now uses a new sentinel that resides in the same process as the application which solves this problem. Note that specifically using the old sentinel in your application can still have problems, even using Visual DataFlex 2008 – you must switch to using the new sentinel.

See “Status Panel Changes” in the "Compatibility and Upgrade Guide" help book for details.

Printing Issues

The biggest problems overall have been in the printer handling on Citrix XenApp. Citrix has a built-in solution to enable printing to the client printer seamless. The problems arise when the client printer driver is not installed on the Citrix server.

When the printer driver is not available on the server, Citrix XenApp uses a universal printer driver when printing to the client printer. In many cases this just doesn’t work. In earlier versions of Visual DataFlex this would cause problems. In best case only the session would crash. In worst case the print spooler on the server would crash or the whole server would reboot.

This is addressed with better error handling and a new set of WinPrint functions to reduce or eliminate these types of problems.