设为首页 收藏本站
查看: 3182|回复: 0

[经验分享] citrix ica file explanation

[复制链接]

尚未签到

发表于 2015-4-13 15:20:39 | 显示全部楼层 |阅读模式
  http://www.ingmarverheij.com/the-citrix-ica-file-explained-and-demystified/
  http://support.citrix.com/proddocs/topic/ica-settings/ica-settings-wrapper.html

Written by Ingmar Verheij on juli 25th, 2012. Posted in Citrix, XenApp (Presentation Server), XenDesktop

DSC0000.png
  The Citrix Receiver (XenApp plugin / Online plugin / ICA Client / WinFrame client) has a file association with the .ICA extension. This means that each time you open a file with the .ICA extension the Citrix Receiver is launched to interpret the file (and act upon the content of the file).
  In this article I’ll explain how the .ICA file is constructed, what sections and properties are commonly used and how you can create the file.
  
ICA – Independent Computing Architecture
DSC0001.png To start at the beginning, ICA stands for Independent Computing Architecture. It is a protocol used in Citrix XenApp / XenDesktop (or previously Presentation Server, MetaFrame, WinFrame) to separate the application logic (which runs on a remote system, usually in a datacenter) and the presentation (on the client).
  In a nutshell what this protocols does is sending input from the client (like keyboard, mouse, audio, etc.) to the remote system and receive the output (like video, sound, etc.) from the remote system via the network. On the client (a workstation, laptop or thin client) a piece of software is used to handle this traffic. At the moment of this writing the Citrix Receiver is used.
  Files with the extension .ICA contain information required  to connect to the remote system, including session properties and (optionally) authentication.
  
.ICA File
File Type Association (FTA)
  Files with an .ICA extension are associated with a Citrix ICA client. This is done via a File Type Association (or FTA).
DSC0002.png In the registry hive HKEY_CLASSES_ROOT a key with the name .ica specifies the name of the file type and the content type.

  • Name: Citrix.ICAClient.2.7
  • ContentType: application/x-ica
DSC0003.png The name is correlated to the key HKEY_CLASSES_ROOT\ and describes how the file is handled, what icon to show, what items should be visible in context menu etc.
  In the shell\open\command key the default value shows what executable to run when a file with the .ICA file extension is launched. In my case:
  


"C:\Program Files (x86)\Citrix\ICA Client\wfcrun32.exe" "%1"


1


"C:\Program Files (x86)\Citrix\ICA Client\wfcrun32.exe""%1"
  
  
  
Basic structure
  .ICA files are stored in plain text with ISO/IEC 8859 encoding (except for older ‘legacy’ clients) so they can easily be viewed and edited in a basic text editor. The content is stored in the INI file format with a basic structure composed of “sections” and “properties”.
  Properties are stored in separate sections, recognizable by the square brackets [ and ]. In a basic ICA file the following three sections are present:
  


[WFClient][ApplicationServers][%ConnectionName%]


1
2
3
4
5


[WFClient]

[ApplicationServers]

[%ConnectionName%]
  
  Each section has properties (or settings) assigned, some of there are mandatory but most are optional. In the next sections I’ll explain the most common settings and the not-so-common settings that are available.
  


Properties per section
  Each section contains a list of properties (or settings) that can be set. I’ll describe the most common settings per section, a larger (not complete) list of properties can be found in the ICA Settings Reference on Citrix eDocs.
  
[Encoding] (Optional)
  This section contains setting(s) that describe how the file is encoded.
Example
  


[Encoding]InputEncoding = ISO8859_1


1
2


[Encoding]
InputEncoding=ISO8859_1
  
  In the example the .ICA file is stored in the default encoding, ISO8859_1.
Settings

  • InputEncoding

    • Description: Describes the character encoding type of the .ica file. This information is used by the client to convert and understand the .ica file if the Web server that created it used an encoding type that is different from that of the the client.
    • Possible values:
      ValueDescription
      ISO8859_1ISO/IEC 8859 is a joint ISO and IEC series of standards for 8-bit character encodings (Default, according to Citrix eDocs)
      SJISShift_JIS is a character encoding for the Japanese language
      EUC-JPExtended Unix Code (EUC) is a multibyte character encoding system used primarily for Japanese, Korean, and simplified Chinese.
      UTF8UCS Transformation Format – 8 bit is a variable-width encoding that can represent every character in the Unicode character set (Default for WebInterface launch.ica)


  

[WFClient]
  In this section the client is configured. WFClient stands for WinFrame client, so it goes way back DSC0004.png
Example
  


[WFClient]Version=2RemoveICAFile=YesHttpBrowserAddress=server01.domain.local:80ConnectionBar=1


1
2
3
4
5


[WFClient]
Version=2
RemoveICAFile=Yes
HttpBrowserAddress=server01.domain.local:80
ConnectionBar=1
  
  In the example a server with the name server01.domain.local is contacted on port 80 to supply details about the server or published application / desktop that is supplied in the [ApplicationServers] section. During the connection the Desktop Viewer is used and a Connection Bar is shown. After the connection is broken the .ICA file is removed.
Settings

  • AlwaysSendPrintScreen

    • Description: Enables or disable using the Print Screen key on the keyboard while the ICA session is running with seamless application.
    • Possible values:
      ValueDescription
      OnPrint Screen key can be used
      OffPrint Screen key cannot be used (Default)
        

  • CDMAllowed

    • Description: Specifies whether Client Drive Mapping (CDM) is allowed or not.
    • Possible values:
      ValueDescription
      TrueAllow Client Drive Mapping (Default)
      FalseDisallow Client Drive Mapping
        

  • ConnectionBar

    • Description:Enables or disable the use Desktop Toolbar (and the Desktop viewer) forall connections in the .ICA file. More details can be found here.
    • Possible values:
      ValueDescription
      0The ICA Client (wfcrun32.exe) is used instead of the Desktop viewer (cdviewer.exe) (Default)
      1The desktop viewer (cdviewer.exe) is used instead of the ICA client (wfcrun32.exe).
        

  • EnableSSOnThruICAFile

    • Description:Specifies whether or not to use the same user name and password the user used to log on to the client device for authentication through .icafiles. For security reasons, users cannot be authenticated to the server unless this parameter is present and its value set to On, even ifUseLocalUserAndPassword and SSOnUserSetting are specified in the .ica file.
    • Possible values:
      ValueDescription
      On / True / 1 / YesUse same username and password
      Off / False / 0 / NoDo not use same username and password (Default)
        

  • HttpBrowserAddress

    • Description:Specifies the location of the browser server (usually the data collector since it holds the most accurate information of the farm).
    • Possible values:
      ValueDescription
      :The Fully Qualified Domain Name (for instance server01.domain.local) of the browser serverfollowed by a colon and the port where the XML service is located (default port is 80)
      :The IP address of the browser server followed by a colon and the port where the XML service is located (default port is 80)
        

  • RemoveICAFile

    • Description:Specifies whether or not the ICA file should be deleted after the session is finished. The setting is set either by Off, False, no or 0 (or the opposite value)
    • Possible values:
      ValueDescription
      Off  /  False  /  no  /  0Does not remove ICA file (Default)
      On  /  True  /  yes  /  1Removes ICA file




  • Version

    • Description: The version of the ICA file structure.
    • Possible values:
      ValueDescription
      2Version two of the ICA file structure. No other version is known? (Default)



  
[ApplicationServers]
  Containsone (or more) connections that are stored in the file. The “more” connections is a legacy option used in the Program Neighborhood that hasbeen removed in version 11.1 – CTX121727 (june 2009), the connections where stored in the appsrv.ini which had the same structure as the ICA file.
Example
  


[ApplicationServers]Desktop=


1
2


[ApplicationServers]
Desktop=
  

  In the example a connection with the name Desktop is present. When the .ICA file is executed by the client software, the properties are read in [Desktop].
Settings

  • %ConnectionName%  

    • Description: The name of the connection, the properties of this connection are located in the section with the name name (%ConnectionName%). Depending on the version of the client this name is (shortly) visible for the user during the connection phase.
    • Possible values: None




  
[%ConnectionName%]
  The section has the name of the connection that is supplied in the ApplicationServers ‘list’. In this section the properties are set for the connection. This is the most extensive list and therefore segregated in separate areas.
Example
  


[Desktop]Address=DesktopInitialProgram=#DesktopCGPAddress=*:2598ClientAudio=OnDesiredColor=8TWIMode = TrueConnectionBar=1TransportDriver=TCP/IPWinStationDriver=ICA 3.0Compress=OnEncryptionLevelSession=Encrypt


1
2
3
4
5
6
7
8
9
10
11
12


[Desktop]
Address=Desktop
InitialProgram=#Desktop
CGPAddress=*:2598
ClientAudio=On
DesiredColor=8
TWIMode=True
ConnectionBar=1
TransportDriver=TCP/IP
WinStationDriver=ICA3.0
Compress=On
EncryptionLevelSession=Encrypt
  
  In the example the settings for the connection Desktop are supplied. A seamless connection will be made to the published application Desktop with a connection bar (and the Desktop Viewer) visible. Both Session Reliability as Client audio are enabled. The connection is made with compression and encryption enabled whose details are specified in section [Compress] and [Encrypt].
Settings – General
  This area describes the general properties of the connection.

  • Address  

    • Description: Specifies where the Citrix client should connect to
    • Possible values:

      • Connect directly to server: The FQDN of the Citrix XenApp / XenDesktop server
      • Connect to published application / desktop : The name of the published application / desktop
      • Connect via WebInterface / CloudGateway: A semicolon (;) separated string containing the application / desktop to connect to, the secure ticket authority (STA) and the secure ticket (or token). The user can click an application / desktop and will effectively download a launch.ica which will be processed by the Citrix client (receiver).


  • CGPAddress

    • Description: Enables or disables Session Reliability
    • Possible values:
      ValueDescription
      *:2598Session Reliabilty is used (connection is made on port 2598)
      (empty)Session Reliability is not used (connecion is made on port 1494)


  • Compress

    • Description: Specifies whether the ICA traffic needs to be compressed before its transported.
    • Possible values:
      ValueDescription
      OnICA traffic is send compressed. The driver used to compress is specified in section [Compress]
      OffICA traffic in send uncompressed
        

  • InitialProgram

    • Description: Specifies what application to launch
    • Possible values:

      • Connect directly to server: The location to the executable to launch. If the value is empty the default shell is loaded.
      • Connect to published application / desktop : A hash-sign (#) followed by the name of the published application / desktop


  • Launcher

    • Description:Specifies the name of launch mechanism (that is, the client launcher name). This parameter is used to launch multiple ICA windows from the startup folder at logon time.
    • Possible values:
      ValueDescription
      ICA ClientLaunched using the ICA client (default)
      WILaunched through the Web Interface
      PNLaunched through the Program Neighborhood client (deprecated)
      PNAgentLaunched through the Program Neighborhood agent
      MSAMLaunched through the Metaframe Secure Access Manager
      CustomLaunched through a custom client


  • LaunchReference

    • Description: Reference token for a specific session on a Citrix XenApp server. This enables the Citrix SmoothRoaming feature, it directs the user to the same server as it has an existing session.
    • Possible values:  Reference token for a specific session on a server (generated by the WebInterface).

  • LogonTicket

    • Description:Specifies client authentication token for web interface. The client handles an authentication token in the form of an opaque LogonTicket with an associated interpretation defined by the LogonTicketType. This functionality can be disabled by clearing the Web Interface 4.5 and above check box.
    • Possible values: A token in the form of a serialized string provided by the WebInterface

  • LogonTicketType

    • Description:Specifies the logon ticket type for "Web interface authentication ticket". Use this policy to control the ticketing infrastructure used when authenticating through the Web Interface. The client handles an authentication token in the form of an opaque LogonTicket with an associated interpretation defined by the LogonTicketType. Citrix STA versions are described in CTX108302.
    • Possible values:
      ValueDescription
      0No ticket (default)
      1Secure Ticket Authority (STA) version 1 ticket
      2Secure Ticket Authority (STA) version 4 ticket
      CTXS1Secure Ticket Authority (STA) version 4 ticket (?)


  • PersistentCacheEnabled

    • Description:This parameter specifies whether or not to use the persistent disk cache. The persistent disk cache stores commonly used graphical objects such as bitmaps on the client device’s hard disk.
    • Possible values:
      ValueDescription
      OnThe persistent cache is enabled
      OffThe persistent cache is disabled (Default)
        

  • SessionSharingKey

    • Description:Specifies the session sharing key. The sharing key is a combination of all attributes that allows you to reuse an existing session: colors, encryption, audio, credentials and farm. If any of these attributes are different (not 100% identical), a new session is created. For more information read the article of Thomas Koetzing about this topic.
    • Possible values:

      • Web Interface 4.6 and before : colors – encrypt – audio – domain – user  farm
      • Above Web Interface 4.6: A serialized string containing the same information


  • SSLEnable

    • Description:Specifies whether or not SSL is enabled. When SSL is enabled all ICA traffic (1494 or 2598) is tunneled via a secure socket layer (SSL) tunnel via port 443 (by default).
    • Possible values:
      ValueDescription
      OnICA traffic is tunneled via SSL
      OffICA traffic is not tunneled via SSL (Default)


  • SSLProxyHost

    • Description:Specifies the hostname of the SSL proxy when SSLEnable is set to ‘On’. This value is not present when traffic is not tunneled via SSL. The name on the certificate has to match the hostname (FQDN).
    • Possible values:
      ValueDescription
      *:443It is assumed that all Citrix server in the farm have their own SSL relay, the SSL relay is the same as the Citrix server. (Default)
      :443An explicit server is specified as the SSL relay server (for instance an Citrix Access Gateway).


  • TransportDriver

    • Description:This parameter specifies the transport protocol to use to connect to the specified connection or application set. This name must correspond to one of the transport drivers specified in the TransportDriver sectionof Module.ini.
    • Possible values:
      ValueDescription
      TCP/IPThe Tranmission Control Protocol (TCP) / Internet Protocol (IP) protocol is used to transport the ICA traffic (Default)
      IPXThe Internetwork Packet Exchange (IPX) protocol is used to transport the ICA traffic
      SPXThe Sequenced Packet Exchange (SPX) protocol is used to transport the ICA traffic
      NetBIOSThe Network Basic Input/Output System (NetBIOS) protocol is used to transport the ICA traffic.


  • UseAlternateAddress

    • Description:This parameter is useful in performing Network Address Translation (NAT). If set to 1, it defines whether to use the alternate address for ICA connectivity across a firewall or a router.
    • Possible values:
      ValueDescription
      0Do not use the alternate address for firewall connection option (Default)
      1Use alternate address for firewall connection option.
        

  • WorkDirectory

    • Description: Specifies the working directory for the InitialProgram
    • Possible values:

      • Connect directly to server: The working directory of the program to execute (instead of the default shell)
      • Connect to published application / desktop : Not used


  • WinStationDriver

    • Description: Specifies what winstation driver to use, the driver where all ICA (including virtual channels) traffic flows through
    • Possible values:
      ValueDescription
      ICA 3.0The only valid value is ICA 3.0. Previous versions where used before WinFrame (Windows NT 3.5). (Default)


  
Settings – Audio
  This area describes the settings that relate to audio [HDX].

  • AudioBandwidthLimit

    • Description:Specifies the audio bandwidth limit and, by extension, the audio quality for the connection. Higher audio quality requires more bandwidth.
    • Possible values:
      ValueDescription
      0High quality (1.4 Mbps)
      1Medium quality (64 Kbps) (Default)
      2Low quality (4 Kpbs)


  • ClientAudio

    • Description: Specifies whether or not to enable client audio mapping.
    • Possible values:
      ValueDescription
      OnEnables client audio mapping
      OffDisables client audio mapping (Default)


  • EnableAudioInput

    • Description:Enable access to audio capture devices. Use this policy to enable and restrict the remote application or desktop access to local audio capturedevices (like microphones).
    • Possible values:
      ValueDescription
      TrueAllow the use of audio capture devices
      FalseDisallow the use of audio capture devices


  • EnableRtpAudio

    • Description: Enables or disables the real-time transport of audio over UDP.
    • Possible values:
      ValueDescription
      TrueEnables Rtp Audio (Default)
      FalseDisables Rtp Audio


  • SpeedScreenMMAAudioEnabled

    • Description: Specifies whether or not audio playback will occur through HDX MediaStream Multimedia Acceleration.
    • Possible values:
      ValueDescription
      TrueAudio playback will occur through HDX MediaStream Acceleration(Default)
      FalseAudio playback will not occur through HDX MediaStream Acceleration


  
Settings – Display
  This area describes the settings that relate to display like color depth, resolution and video [HDX].

  • DesiredColor

    • Description: Specifies the preferred color depth for a session.
    • Possible values:
      ValueDescription
      116 colors (Default)
      2256 colors
      4High color (16 bpp)
      8Truecolor (24/32 bpp). This is 32bpp, unless the administrator explicitly prohibits a server from supporting a 32-bit session. In that case, the session is downgraded to 24bpp.


  • DesiredHRES

    • Description: This parameter defines the horizontal window size in pixels.

      • For Citrix Receiver and up : If TWIMode is set to Off / False, this parameter is used.
      • For older Citrix clients: If DesiredWinType is set to Custom, this parameter is used.

    • Possible values: The horizontal window size in pixels (Default : 640). If you set both DesiredHRES and DesiredVRES to 4294967295 the session will always launch in full screen (thanks Andrew Morgan).

  • DesiredVRES

    • Description: This parameter defines the vertical window size in pixels.

      • For Citrix Receiver and up : If TWIMode is set to Off / False, this parameter is used.
      • For older Citrix clients: If DesiredWinType is set to Custom, this parameter is used.

    • Possible values: The vertical window size in pixels (Default : 480.) If you set both DesiredHRES and DesiredVRES to 4294967295 the session will always launch in full screen (thanks Andrew Morgan).

  • DesiredWinType

    • Description: This parameter specifies the default desired window size for custom connections. This setting is ignored by the Citrix Receiver.
    • Possible values:
      ValueDescription
      1640×480
      2800×600
      31024×768
      41280×1024
      5Custom size defined by DesiredHRES and DesiredVRES
      6Percent
      7Full Screen
      8Seamless




  • SpeedScreenMMA

    • Description: Specifies whether or not to enable the HDX MediaStream Multimedia Acceleration.
    • Possible values:
      ValueDescription
      OnTheremote video option allows the server to directly stream certain video data to the client (if the client has the appropriate codecs). (Default)
      OffThe video is always rendered on the client.

      



  • TWIMode

    • Description: Specifies whether or not to use seamless mode for the connection.
    • Possible values:
      ValueDescription
      On / TrueEnables the seamless mode for the connection
      Off / FalseDisables the seamless mode for the connection (Default)

      


Settings – Security
  This area describes the settings that relate to security.

  • ClearPassword

    • Description: The parameter specifies the password for the supplied credentials in clear text. This is less safe than the encrypted Password setting.
    • Possible values: A password.

  • EncryptionLevelSession

    • Description: Specifies the encryption level of the ICA connection (SecureICA). Since the Citrix Receiver a section with the corresponding name should be provided including the drivers.
    • Possible values:
      ValueDescription
      BasicBasic (Default)
      EncRC5-0RC5 (128 bit – Logon Only)
      EncRC5-40RC5 (40-bit)
      EncRC5-56RC5 (56-bit)
      EncRC5-128RC5 (128 bit)
      EncryptBasic


  • Domain

    • Description: This parameter specifies the user domain for the supplied credentials.
    • Possible values: The name of the domain for the supplied credentials.

  • Password

    • Description: This parameter specifies the password for the supplied credentials. The password must be encrypted.

    • Possible values: An encrypted password. Remko Weijnen has written a tool to Encode (and decode) Citrix Passwords, you can find the tool here.



  • UseLocalUserAndPassword

    • Description:Specifies whether or not to use the same user name and password the user used to log on to the client computer for authentication to the Citrix server. SSOnUserSetting must be set to On.
    • Possible values:
      ValueDescription
      OnUse pass-through authentication.
      OffDoes not use pass-through authentication (Default)




  • Username

    • Description: This parameter specifies the username for the supplied credentials.
    • Possible values: The username for the supplied credentials.


  
[Compress]
  Contains the name of the drivers use for compression as specified in the Compress setting in the %ConnectionName% section.
Example
  


[Compress]DriverName=PDCOMP.DLLDriverNameWin16=PDCOMPW.DLLDriverNameWin32=PDCOMPN.DLL


1
2
3
4


[Compress]
DriverName=PDCOMP.DLL
DriverNameWin16=PDCOMPW.DLL
DriverNameWin32=PDCOMPN.DLL
  
  In the example the default drivers used for compression are specified.
Settings

  • DriverName

    • Description: This parameter specifies the name of the DOS driver file to load.
    • Possible values:
      ValueDescription
      PDCOMP.DLLThe default driver file for used for compression (Default)


  • DriverNameWin16

    • Description: This parameter specifies the name of the Win16 driver file to load.
    • Possible values:
      ValueDescription
      PDCOMPW.DLLThe default driver file for used for compression (Default)


  • DriverNameWin32

    • Description: This parameter specifies the name of the Win32 driver file to load.
    • Possible values:
      ValueDescription
      PDCOMPN.DLLThe default driver file for used for compression (Default)


  
[Encryption]
  Contains the name of the drivers use for encryption (SecureICA) as specified in the EncryptionLevelSessionsetting in the %ConnectionName% section. The name of the section equals the value of the EncryptionLevelSession setting.
Example 1
  


[Encrypt]DriverNameWin32=PDCRYPTN.DLLDriverNameWin16=PDCRYPTW.DLL


1
2
3


[Encrypt]
DriverNameWin32=PDCRYPTN.DLL
DriverNameWin16=PDCRYPTW.DLL
  
  In the first example the default drivers used for encryption (SecureICA) are specified.
Example 2
  


[EncRC5-0]DriverNameWin16=PDC0W.DLLDriverNameWin32=PDC0N.DLL[EncRC5-40]DriverNameWin16=PDC40W.DLLDriverNameWin32=PDC40N.DLL[EncRC5-56]DriverNameWin16=PDC56W.DLLDriverNameWin32=PDC56N.DLL[EncRC5-128]DriverNameWin16=PDC128W.DLLDriverNameWin32=PDC128N.DLL


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15


[EncRC5-0]
DriverNameWin16=PDC0W.DLL
DriverNameWin32=PDC0N.DLL

[EncRC5-40]
DriverNameWin16=PDC40W.DLL
DriverNameWin32=PDC40N.DLL

[EncRC5-56]
DriverNameWin16=PDC56W.DLL
DriverNameWin32=PDC56N.DLL

[EncRC5-128]
DriverNameWin16=PDC128W.DLL
DriverNameWin32=PDC128N.DLL
  
  In the second example the drivers for each encryption level (SecureICA) are specified in a separate section.
Settings

  • DriverNameWin16

    • Description: This parameter specifies the name of the Win16 driver file to load.
    • Possible values:
      ValueDescription
      PDCRYPTN.DLLThe default driver file used for used for encryption (Default)
      PDC0W.DLLThe driver file used for RC5 (128 bit – Logon Only) encryption.
      PDC40W.DLLThe driver file used for RC5 (40-bit) encryption.
      PDC56W.DLLThe driver file used for RC5 (56-bit) encryption.
      PDC128W.DLLThe driver file used for RC5 (128 bit) encryption.


  • DriverNameWin32

    • Description: This parameter specifies the name of the Win32 driver file to load.
    • Possible values:
      ValueDescription
      PDCRYPTW.DLLThe default driver file used for used for encryption (Default)
      PDC0N.DLLThe driver file used for RC5 (128 bit – Logon Only) encryption.
      PDC40N.DLLThe driver file used for RC5 (40-bit) encryption.
      PDC56N.DLLThe driver file used for RC5 (56-bit) encryption.
      PDC128N.DLLThe driver file used for RC5 (128 bit) encryption.





  

When are .ICA files used?
  .ICAfiles are used in many applications that allow you to connect to a Citrix XenApp / XenDesktop environment. Most common used are the Citrix Web Interface and the Citrix CloudGateway, but third party applications like Denamik LoadGen use .ICA files as well. Usually the use of .ICA files is temporarily and hidden for the end user, which is a good thing.
  
Web portal default configuration
  Whenyou launch a published application / desktop via the web portal supplied by Citrix (WebInterface,  StoreFront or VDI in a box) a defaultconfiguration is applied. You can alter the default configuration to meet your needs, if it isn’t available in the management console (most settings are not configurable via the management console). The default configuration is stored in a default.ica file.
  The location of the default.ica depends on the platform you’re using and the name of the site.
DSC0005.png Sinceboth WebInterface and StoreFront are integrated in Microsoft Internet Information Services (IIS) the configuration is stored in a directory inthe %SystemRoot%\inetpub (default location). For each site a directory is created which you specified when you created the site.
  Assuming you’ve used the default site name, these are the locations where the default configuration is stored:
  
PlatformVersionTypeLocation
Web Interface5.xXenApp\inetpub\wwwroot\Citrix\XenApp\conf
4.5 / 4.6XenApp\inetpub\wwwroot\Citrix\AccessPlatform\conf
4.0XenApp\inetpub\wwwroot\Citrix\MetaFrame\conf
AllXenApp services / PNAgent\inetpub\wwwroot\Citrix\PNAgent\conf
StoreFrontAllAll\inetpub\wwwroot\Citrix\Store\App_Data
VDI in a boxAllAll/home/kvm/install/servlet_container/webapps/

dt/WEB-INF/etc/proto.ica (not default.ica!)
  Thanks Andrew Morgan for locating the default configuration for Storefront services and VDI in a Box.


  
  
  



Change specific published application / desktop
  Ifyou want to change the setting / behavior  of a specific published application / desktop you need to add the published resource in the [ApplicationServers] section and add a [%ConnectionName%] section with the required settings.
  Itis important that the name of the connection (%ConnectionName%) is exactly as it is shown in the application set of the management console.
  Example
  


[ApplicationServers]Desktop - Windows 7=[Desktop - Windows 7]TWIMode=OffDesiredHRES=1440DesiredVRES=800


1
2
3
4
5
6
7


[ApplicationServers]
Desktop-Windows7=

[Desktop-Windows7]
TWIMode=Off
DesiredHRES=1440
DesiredVRES=800
  
  
  


How can I create an .ICA file?
  Well, there are a number of options:

  • Manual
  • Citrix ICA File Creator – CTX113472
  • Citrix Quick Launch – CTX122536
  The first option, manual, is of course an option but it’s quite some work for an easy task. Keep in mind that the Citrix Receiver (or older clients) are rather restrictive with the information it returns. If there’s an (syntax) error in the ICA file… well, in most cases you need to sort that our yourself.
  The second option, the Citrix ICA File Creator, is a less time consuming option than creating it manually but is a bit clunky. It works, but it’s not the best tool (and unsupported).
  The third option is the Citrix Quick Launch tool ,which is also provided by Citrix (and unsupported, btw), and is built to offer some features of the deprecated Program Neighborhood (CTX121727). IMHO this is the best way of building ICA files Not only  because it offers the most features (it is recently updated) but also because you can connect and test the connection immediately!
  
DSC0006.png
  
DSC0007.png DSC0008.png DSC0009.png DSC00010.png DSC00011.png DSC00012.png
  PS:The Citrix Quick Launch works even on desktops with 125% DPI (default with a resolution of 1920×1080 on my laptop)! So kudos to the developerswho where willing to build a version that supported 125% DPI (and JamesDenne – @JimmyLeroux – for contacting them).
  
Comments
  Did I miss anything or do you have a suggestion? Let me know in the comments.

Related articles:

  • “Citrix Receiver – Security Warning”…
  • (Non)paged memory pool limit, it might be smaller then you…
  • RES software on MySQL
  • My speedometer is lying!
  • How to install ipkg on Synology NAS (DS212+)


DSC00013.png
Ingmar Verheij
  IngmarVerheij works for PepperByte as a Senior Consultant. His work consist of designing, migrating and troubleshooting Microsoft and Citrix infrastructures.  He is working with technologies like Microsoft RDS, user environment management and (performance) monitoring.
  More Posts - Website
Follow Me:
DSC00014.png DSC00015.png DSC00016.gif
Tags: Citrix, demystified, hdx, ica

Comments (9)



  • DSC00017.gif
    Gav
    20 augustus 2012 at 09:23| #

      Hi ingmar,
    Great article.
    Not sure when it was posted as it only lists the day and month at the top of article so not sure if you will respond to this….
      Ourusers run a seamless full desktop session to our citrix server – but when they press the print screen key, or alt Print screen, nothing in the seamless desktop session is captured to the full desktop clipboard…..instead, if you press print screen then log off the citrix session then paste into paint.exe from the local client, it will paste acopy of what was on the seamless desktop at the time you pressed print screen…….so the print screen is capturing the correct data (i.e. what ishappening in the citrix session) but it is storing it in the local PCs clipboard memory and not the clipboard that is avaliable to the citrix session. Can we make it so the citrix session can have access to the local clipboard memory or is there another way to get print screen functionality happening inside our citrix sessions? Issue at the moment is, when we press paste in side the citrix session after pressing print screen, nothing pastes into word/paint…..but log out of the citrix session and paste into paint/word on the local PC and our print screen appears.
      At the moment we are using PS4.5 and ICA client v10. We are using this reg key as a work around at the moment…it turns the f12 key into a print screen key and that is working for us.
    http://support.citrix.com/article/CTX113344/
      Thanks in advance and hopefully you can point me in the right direction.

    Reply




    • Ingmar Verheij
      20 augustus 2012 at 12:57| #

        Hi Gav,
        Have you tried setting AlwaysSendPrintScreen=On in the [WFClient] section?
      Turnson or off the ” AlwaysSendPrintScreen” attrtibute in seamless application. By enabling the key, user can use the ” Print Screen” key on the keyboard while an ICA session is running with seamless application.
        Regards,
      Ingmar

      Reply




      • Gav
        21 augustus 2012 at 01:04| #

          Hey Ingmar,
        I tried setting the “AlwaysSendPrintScreen” key with a new string valuewith the data value of “On” – that is in HKLM-software-citrix….WFClient. I restarted PNA and tried connecting to the seamless desktop again but the print screen key still was not pasting from the clipboard into the citrix session.
        Howerver it seems that the print screen key is working and being passed to the citrix session but the print screen image is being placed in the local computers clipboard….because when i minimise down to the local machine and paste into word…the print screen of the seamless session is shown. It seems that the print screen functionality is working….but the seamless session cannot get access to the local clipboard….how can i enable that? How can i allow the seamless full desktop session to accessthe local machines clipboard….or make the citrix session pass the printscreen key into the citrix session so that the full desktop/server clipboard is used to store the print screen image.
        Not sure why this is not working or what others have done to resolve this print screen functionality.

        Reply




        • Ingmar Verheij
          21 augustus 2012 at 18:07| #

            Hi Gav,
            The“AlwaysSendPrintScreen” needs to be set in the ICA file (hence the title of the article), not in the registry. You can set this in the default ICA file of the XenApp services site.
            If the content of your local desktop is paste into the Citrix session you’ve enabled  clipboard redirection, so it works as designed.
            Ingmar

          Reply






  • Gav
    22 augustus 2012 at 01:30| #

      Hi Ingmar,
    Sorry – i applied your setting to the ICA file as you explained (from the web interface, i right clicked the ‘desktop’ app then saved to desktop to get an ICA file that i can modify) – i added the key you mentioned AND IT DID WORK!!! now when the user presses the print screen or alt print screen key the correct thing is pasted INSIDE the citrix session! THANK YOU …..but wondering if you can explain or tell me how i can make this ‘key’ a permanent part of the published desktop app? Can i modify the ICA file on the servers that are given out to the clients when they access the published app list? Reason being is that when i save a copy of this ICA file, i have to modify the server IP address – we have 3 citrix servers to i dont want to direct all sessions to the one server –i want the citrix server to manage the load…..i also dont want to have to maintain this separate ICA file as users connect to us from differentcomputers all the time….so getting them the ICA file is a pain. How cani add this key to the ICA file that is given out by the citrix servers?Where is the ICA file that the server gives out constructed from? Does it just build the ica file at the time the user clicks the published desktop and bases the contents off the settings i apply when i created the app with the citrix management console? Can i set this key anywhere in the CMC so that it applies to the ICA file that the server gives out for this full desktop?
      Thanks Ingmar

    Reply




    • Ingmar Verheij
      22 augustus 2012 at 08:46| #

        Hi Gav,
        Glad to hear the proposed solution worked!
      There’s no need to change the ICA file manually. You can change the default settings that are applied by the WebInterface (the service that communicates with the PNagent) by setting the appropriate setting in %systemroot%\inetpub\wwwroot\Citrix\PNAgent\conf\default.ica.
      The location migth be different if you’ve changed the location of the IIS website or named the site differently, but I’m sure you’ll manage tolocate the file.
        Regards,
      Ingmar

      Reply




      • Gav
        23 augustus 2012 at 05:00| #

          Hi Ingmar,
        I found the ICA files you mentioned – the default.ica files and made the changes in there. The settings were then successfully applied to sessions that were started from the Citrix Web Interface…..HOWEVER, the settings did not apply to sessions launched via the PNA! I did a little more digging around and just in case someone else stumbles upon this issue, i did manage to get it working. In order for the sessions launched via PNA to correctly use the print screen and other windows keys, i had to edit the config.xml file of the PNA in the CMC. Access the CMC – expand web interfaces – find your PNA site – expand that to get your config.xml file – right click it and choose change session options – in here choose client resources and then under ‘targets of windows key combinations’ make sure the only one that is ticked is ‘in full screen desktop’. Our problem all along was that all of these tick boxes were selected, the PNA clients were all set to choose the default setting and because all of these were ticked here, i assume it just selected the first item in this list as the default which is ‘on the local desktop’!!
          So i have now modified the ica file to include the key you mentioned – that fixed the problem for sessions launched from the web interface…and i have also modified the PNA config file to fix the issue for sessions launched internally via PNA.
          Thanks again for your input, assistance and fast response Ingmar

        Reply





  • Walt
    31 augustus 2012 at 16:19| #

      Excellent work, Ingmar.  It’s non-trivial to find info on ICA files, and you’ve done us a great service.
      Here’san additional attribute you might consider documenting: “Clearpassword”.  It’s the same as Password, but it doesn’t need to be encrypted (so Remko’s tool you referenced isn’t needed).

    Reply



  • Frederic Serriere
    17 januari 2013 at 10:17| #

      Hi,
      Iam trying to get the ICA File Creator tool hidden in the Citrix KB as Citrix Quick Launch is the preferred method to create ICA files and I donot maintain ICA File Creator anymore.
      Well spotted for the 125% DPI support as I personally don’t use it therefore I did not realized it was that needed !!
      Thanks for the feedback
      Frederic

    Reply

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-56762-1-1.html 上篇帖子: 如何在Windows server 2003上安装和设置Citrix MetaFrame XP FR3 下篇帖子: Citrix XenServer上实现NAT
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表