31 Ocak 2012 Salı

Publishing Network Application from a Mapped Drive Fails

A published application is running from a network share as a mapped drive. In this example, the path to the executable is W:\windows\system32\notepad.exe. Launching the published application from a XenApp 6 2008 R2 servers and gives the following error(s).
“Citrix online plug-in could not contact the server. Please check your network connection.”
“The remote server failed to execute the application launch request. Please contact your administrator for further details.
The online plug-in does an application refresh. The server event viewer show an error similar the one below:
“Application XYZ is published to the server X, but the command line “w:\windows\system32\notepad.exe” is not valid on X. Verify the correct servers and/or work groups are assigned to XYZ and ensure that the application is installed on X.
Where XYZ is the application name and X is the server name.
For the application to launch, the drive must first be mapped for the user launching the session. There is no problem launching the application in a published desktop, but a published application fails.
Cause
XenApp 6 adds a new check called the Application Installation Check during load balancing to ensure that the published application exists on the server being returned by load balancing. The Citrix Services Manager service now ensures that the file specified in the application’s command line exists on the server selected by load balancing. If this check fails, you will see the error message listed above in the event log of the server.
Note: Because the application installation check is performed before the user’s session is created, user environment variables can no longer be used in an application’s command line. Only system environment variables are supported in XenApp 6.
The application installation check will retry load balancing up to five times to return a valid server to the user. This check is intended to prevent a few misconfigured servers from creating a black hole condition in the XenApp farm. However, administrators should always make sure that applications are installed at the correct locations on the correct servers, and not rely on this check for day-to-day load balancing.
Resolution
Publish a batch file that maps the network drive and then calls the application. You could also publish the path through UNC, but certain applications require a drive letter and are also run from a network share.
A simple batch file for this example could be something like the following code:
net use w: \\server-name\share-name
w:\windows\system32\notepad.exe
Name this batch file “my-app.cmd” and save it to a local drive such as C:\. In the published application location, point to the batch file rather than the network drive location.
Citrix has released a hotfix that can be used to disable the Application Installation Check.
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Citrix\IMA
Name: DisableAppInstallCheck
Type: REG_DWORD
Data: 1 (allow published applications to reside on mapped network drives); 0 (do not allow published applications to reside on mapped network drives)

Hiç yorum yok:

Yorum Gönder