| One of the biggest improvements and | | | | default settings. |
| enhancements of Terminal Services in Windows | | | | If we select Paint in the center (Details) pane and |
| Server 2008 is in the area of experience | | | | click Properties in the Action pane, we see the |
| features, Terminal Services RemoteApp, which | | | | default settings for running this RemoteApp |
| enables users to access standard Windows-based | | | | program: |
| programs from anywhere by running them on a | | | | What these default settings indicate are that |
| terminal server instead of directly on their client | | | | users will not be allowed to add their own |
| computers. In previous versions of Terminal | | | | command-line arguments when running Paint. (This |
| Services, you could remote only the entire | | | | is usually a good idea, though as far as I know, |
| desktop to users’ computers. So when a | | | | Paint doesn’t have any command-line |
| user wanted to run a program remotely on the | | | | switches.) The settings also indicate that the |
| terminal server, she typically double-clicked on a | | | | RemoteApp program will automatically be made |
| saved .rdp file that the administrator previously | | | | available to users through Terminal Services Web |
| distributed to her. This connected her to the | | | | Access (though we actually haven’t added |
| terminal server, and after logging in (or being | | | | that role service yet to our terminal server). In |
| automatically logged in using saved credentials), a | | | | addition, we could change the name of the |
| remote desktop would appear on her computer | | | | RemoteApp program to something other than |
| with a pin at the top pinning the remote desktop | | | | “Paint” if we want users to know that |
| to her local (physical) desktop. The user could | | | | they’re running the RemoteApp version of |
| then run applications remotely on the terminal | | | | the program and not the version installed on their |
| server from within her remote desktop, or she | | | | local computer. |
| could minimize the remote desktop if she wanted | | | | Once we’ve added Paint to the RemoteApp |
| to run applications on her local computer using her | | | | programs list, how do we actually enable the user |
| physical desktop. | | | | to run the RemoteApp program? To do this, we |
| TS RemoteApp solves this problem (and makes | | | | need to deploy a package containing the |
| the lives of harried help desk staff easier) by | | | | RemoteApp information for Paint to our users. |
| allowing users to run Terminal Services | | | | We can package our RemoteApp program in two |
| applications directly on their physical desktop. So | | | | ways: as a Windows Installer file or as a Remote |
| instead of having to switch between two | | | | Desktop Protocol file. Let’s use the Windows |
| desktops, the user sees the RemoteApp program | | | | Installer file approach because as administrators |
| (the program that is running remotely on the | | | | we’re used to deploying Windows Installer |
| terminal server instead of on her local computer) | | | | packages to client computers using Group Policy. |
| sitting right there on her desktop, looking just like | | | | Start by selecting Paint in our RemoteApp |
| any other locally running program. | | | | programs list, and then click Create Windows |
| Using TS RemoteAppFirst, we’ll open Server | | | | Installer Package in the Action pane. This starts |
| Manager and select the TS RemoteApp Manager | | | | the RemoteApp Wizard again, but after you click |
| node under Terminal Services. (We could also | | | | Next the wizard displays the following page |
| open TS RemoteApp Manager from | | | | instead of the previous one: |
| Administrative Tools.) | | | | By default, we see that our Windows Installer |
| TS RemoteApp Manager lets us specify which | | | | package (which will actually be created with the |
| programs our Terminal Services users will be able | | | | extension .rap.msi, with RAP presumably standing |
| to run remotely on their normal desktops. Right | | | | for RemoteApp Package) will be saved at |
| now, we have no programs on the Allow list, so | | | | C:\Program Files\Packaged Programs. We could |
| let’s click Add RemoteApp in the Action pane | | | | elect to save it there, or we could save it on a |
| at the right. This launches the RemoteApp Wizard. | | | | network share instead, which is likely the better |
| Clicking Next presents us with a page that allows | | | | choice. This page of the wizard also lets us |
| us to choose which installed programs we want | | | | customize the terminal server settings (server |
| to add to the RemoteApp programs list. We’ll | | | | name, port, and authentication settings), specify |
| choose Paint. | | | | that the package is digitally signed to prevent |
| Clicking Next and then Finish causes Paint to be | | | | tampering, or specify Terminal Services Gateway |
| added to the RemoteApp programs list with | | | | settings if we’re using this feature. |