Microsoft’s Terminal Server 2008 has a lot of new features which includes RemoteApp publishing. This allows you to place icons on a user’s desktop and start menu and run with the same look and feel as the application being installed locally… but really running from the terminal server.
Set-up of ACS as a remoteapp was quite easy and has worked fairly well in our sandbox environment.
In our situation, we have datacenter licensing for Microsoft so adding multiple virtual servers isn’t an issue, so we have elected to Install the ACS database on one server and have the terminal server function strictly as an application server. This changes some settings for the terminal server that I will note below.
The steps to deploy ACS as a remoteapp are as follows (assuming that you have already completed the Terminal Server 2008 installation):
1. Use the Install Application on Terminal Server option in Control Panel to install the program.
2. Install ACS Workstation by running the installer found in the Database servers ACSNet folder.
3. Browse to the WINACS directory on the Terminal server and give all domain users full read write permissions to the entire contents of that directory.
4. Next Add ACS People Suite and ACS Financial’s Suite to the RemoteApps by going to Server Manager > Roles > Terminal Services > TS Remoteapp Management
5. Add A remoteapp and select ACS People Suite and ACS Financial’s Suite in the list.
6. After you have added the application you need to create the Installer file to add the shortcuts to the workstations that will be using the RemoteApp
7. Next Choose a location to save your.msi installer. This can be a UNC path to a network storage location.
8. Update the Start menu folder and select to add the desktop icons. Note there are no files to associate with this remote application, so that box stays unchecked.
After you run the .msi installer you created with the wizard, the workstation will have the icons for ACS People and ACS Financial. On first run it the terminal server will prompt for network credentials to access the Terminal Server. Save these credentials for future use and the application will start up with no user interaction next time they launch the ACS application.
Once the user is logged into the terminal server the ACS login screen will display on the desktop as if it was a local application.
Now there were a couple "got-yas":
1. The permissions have to be configured for full read/write for all users on the Database ACSNET and WINACS as well as the Terminal Server’s WINACS directory.
2. When you use ACS via a remoteapp on a dual monitor system the login and application splash screens land in between both monitors. This is due to the application’s programming to center on the screen when they start up and Terminal server sees the desktop as one spanned desktop. You can use the configuration "span monitor:i:0" to disable monitor spanning but this limits the users from running the application on the monitor that isn’t the local systems primary monitor. I have contacted ACS and this is a item that is being addressed by the programming team.
3. As part of #2, you can move the running application to another location on one of the monitors if you allow spanning (enabled by default) and it will remember the location where you closed the application… it just won’t remember the location of where you had moved the login or splash screens.
4. When ACS is closed, the session on the terminal server is not logged off, rather the users session is left in a disconnected state. We are looking at options of lowering the default logoff settings in the Terminal server to be sure that all users are logged off during backups on the Database server.
5. First login to the Terminal server when launching the RemoteApp the local profile has to be created and the login time is quite a bit longer than subsequent login times for the RemoteApp.
As always your mileage may differ, If you have tried this installation and have had other experiences let me know I would be interested in hear your experience.