My random thoughts on Microsoft Access, Terminal Server and/or Citrix

(This page last updated 2010/09/27)

 

[ Main | AccessTips ]

Citrix / Remote Desktop for an Access-developer Excellent article explaining how Citrix works.   This page will still help flesh out a few details and some problems.

With MS Access you really, really want each user to have their own copy of the front end (FE).  A shared FE can be corrupted quite easily. There have been quite a number of newsgroup postings over the years confirming this.  A non profit client with a well meaning but confused volunteer also confirmed this.   Occasionally this can also lead to the backend (BE) getting corrupted.

In a standard network you just copy the FE to a directory on each individual system.  Which my free Auto FE Updater utility handled quite nicely. But you don't have individual directories on a Terminal Server or Citrix system.     The solution was to update my Auto FE Updater to support directory naming by userid so you can put individual FE MDB/MDEs in their own directory.

We chose to not use the home profile as some of the users will be several thousand miles away. Which is also where their home profile resides. As a result the Access FE would also reside on their home server which would result in significant network traffic over a relatively slow WAN connection.. Thus we are putting the FE on a server in the same 100 mpbs network as the current backend.

See Auto FE Updater web page for some additional tips which are more relevant to that utility but may be useful in your situation.

Note that despite the standard practice of placing the front end MDE onto the system running the MDB/MDE the client chose to keep the individual FE MDEs on the file server.    Thus they are executing the 12 Mb MDE FE from the server on a Terminal Server with very little performance degradation that we can see. Things are a little sluggish so it would be interesting to test copying the FE to the Terminal Server system(s) to see if that helps.  Of course this current approach is likely adding a lot of network traffic.

Publishing an app in Citrix

We created a one line cmd file which in turn called MS Access and pointed to the Access FE. 
    L:\Program Files\Microsoft Office\Office10\msaccess.exe Q:\FE\FE.MDE
Actually we used the identical line as created in the shortcut target the Auto FE Updater.  But you get the idea.

If you try to publish an MDB/MDE in Citrix you will get the following error message: "{File Name} - TEST MDE" failed to start. The citrix server is unable to process your request to start this published application. Please try again. If the problem persists, contact your administrator" Where {File Name} is the name of the mde file.

Access 2002 runtime crashing on Windows 2003 Terminal Server

As reported by Luke Bellamy

The environment is an Access 2002 runtime application that runs on a Terminal Server 2003 (small business server). About 95% of the time whenever a report was previewed and then printed Access displayed the Microsoft Error Reporting Tool "do you wish to send this error report to Microsoft?".  The server admin had set the compatibility of my application by checking "allow non-administrators access" (found by right clicking on the icon in the start menu and selecting compatibility). This caused the problem and once this was unset reporting worked correctly.

CPU Usage at 100%?

Access 97 is just using idle processing time.  ACC: Microsoft Access Shows 100% CPU Utilization During Idle Time - 160819  This should not be happening with Access 2000 and newer.

There are credible newsgroup postings, although they are anecdotal, that multiple Access 97 sessions do seriously degrade performance on Terminal Server.  Very likely due to the above problem.   Thus you should seriously consider upgrading to Access 2000 or newer.   (New 2004-07-29)

Getting "disk or network error" or corrupted databases? 

The following might be your solution.  Windows 2000 Terminal Services Incorrectly Closes Files on Remote Shares - 272582

Licensing

If the users only need to run an already built app then installing the MS Access runtime will likely suffice.  If some users will need to create and run their own queries or reports then those individuals will need their own license for MS Access.

WARNING: I am not a lawyer.  I do not interpret licensing agreements for anyone.  It is your responsibility to ensure you are legal.

Links

Common Windows Terminal Services Answers by fellow Terminal Server MVPs.

Random Microsoft KB articles on Access/Office and Terminal Server

Note:  Why random?  Because this list is compiled from KB articles I've come across rather than a detailed search.  The above Common Windows Terminal Services Answers page has a more up to date list than mine.

ACC97: Error Message When You Try to Start Access 97 in Terminal Server - 301966
OFF97: How to Install Office onto Terminal Server - 210231

MOD2000: How to Install Your Run-Time App to Terminal Server - 244439]
MOD2000: Visual Basic for Applications Code in a Run-Time Application Does Not Run on Terminal Server - 288767

There are quite a number of articles on Office and Terminal Server at the Knowledge Base.  Many more than I have listed below.  To find many of them though you have to select Office for Windows, Office 2000 Setup or Office XP Suite or Office 97 and/or other combinations.  Office for Windows appeared to get the most hits.   Also try searching at the Microsoft Developer Network..

HOW TO: Install Office XP on Windows 2000 Terminal Server - 290375
OFFXP: How to Customize Office XP for Terminal Server - 311241
HowTo: Install an OffXPDev Run-Time App to Terminal Server - 320585

OFF2000: How to Install Office 2000 on Windows 2000 Terminal Server - 224313
Windows 2000 Terminal Services Incorrectly Closes Files on Remote Shares - 272582 The dreaded Disk or Network Error
Optimizing Applications for Microsoft Windows 2000 Terminal Services and Windows NT Server 4.0, Terminal Server Edition
Access Runtime transform for Terminal Server

[ Access Tips | Access | Main ]

Auto FE Updater   Auto FE Updater distribute new and updated Front End databases to your users with several mouse clicks.

Wrench and gear Granite Fleet Manager - the best designed fleet maintenance tracking and management system available

Comments email Tony  Search Contact Tony's Blog Privacy Policy Table of Contents

Website copyright 1995-2013 Tony Toews