<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss'><id>tag:blogger.com,1999:blog-5163006370552729439</id><updated>2010-03-11T14:31:52.781Z</updated><title type='text'>ThinWorld Citrix Knowledgebase</title><subtitle type='html'>The Technical information here will typically cover but not be limited to the following list of software below. It also covers some deployment and build information.  

Citrix XenApp
Citrix XenServer
Citrix XenDesktop
Access Gateway Enterprise
Citrix Secure Gateway
Citrix Web Interface
Citrix ICA Clients
Appsense Product Suite
Altiris
Res Wisdom
Windows Server 2003
Windows Server 2008
Window Group Policy (GPO)
Microsoft App-V
SoftGrid
VMWare ESX
VMWare Virtual Centre</subtitle><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default'/><link rel='alternate' type='text/html' href='http://www.thinworld.net/blog/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default?start-index=26&amp;max-results=25'/><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://www.thinworld.net/blog/atom.xml'/><author><name>Tomo</name><uri>http://www.blogger.com/profile/11900356308529850014</uri><email>noreply@blogger.com</email></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>189</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-5163006370552729439.post-2544919393953138107</id><published>2010-03-11T14:28:00.002Z</published><updated>2010-03-11T14:31:52.787Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='Scripts'/><title type='text'>VBS Ping check script</title><content type='html'>This simple VBS allow you to check a device is up and running (with a ping check) before it runs code against the device.&lt;br /&gt;&lt;br /&gt;This method means your script will not hang running against machines that are powered off.&lt;br /&gt;&lt;br /&gt;PINGFlag = Not CBool(ObjShell.run("ping -n 1 " &amp;amp; StrUserID(1),0,True))&lt;br /&gt;              If PINGFlag = True Then&lt;br /&gt;                 ' Machine is up and running&lt;br /&gt;        Else   &lt;br /&gt;                ' Machine has not responded&lt;br /&gt;              End If&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5163006370552729439-2544919393953138107?l=www.thinworld.net%2Fblog' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/2544919393953138107/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.thinworld.net/blog/2010/03/vbs-ping-check-script.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/2544919393953138107'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/2544919393953138107'/><link rel='alternate' type='text/html' href='http://www.thinworld.net/blog/2010/03/vbs-ping-check-script.html' title='VBS Ping check script'/><author><name>Tomo</name><uri>http://www.blogger.com/profile/11900356308529850014</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='06250051572819351850'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5163006370552729439.post-3068855072752241580</id><published>2010-03-11T11:40:00.002Z</published><updated>2010-03-11T14:03:31.903Z</updated><title type='text'>Audit Users Manually mapped Drive mappings</title><content type='html'>I needed to create a script to check to see if users had manually mapped network drives to a certain data share in order to perform a successful migration of the share to a new server.&lt;br /&gt;&lt;br /&gt;Our central logon script would be easy to amend but obviously manually added mappings would not be effected by that. In our environment it is possible users have manually added a network drive on their local client device (workstation or laptop) or within their Citrix Xenapp sessions.&lt;br /&gt;&lt;br /&gt;The drive mapping in citrix were easy to obtain as we have a hybrid profile solution and the drive mappings show as plain text files within their profile.&lt;br /&gt;&lt;br /&gt;For Client Devices this task proved much more difficult and the scripts detailed here require scriping knowledge and some management.  Also the data returned is reliant on a number of factors , most notable it can only check logged on users. (trying to rip apart NTUSER.DAT files proved fruitless the file is often locked and did not always seems to show the keys for reasons unknown)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Client Device check Script &lt;/span&gt;- You Feed the script a list of usernames and their workstation names and in a comma seperated file called workstation.csv&lt;br /&gt;It will then output back to you if any of those users have the drive mapping you need to change. You can amend this script to FIND and REPLACE if required as well. The one posted here is an audit only to identify users who have the mapping.&lt;br /&gt;&lt;br /&gt;(eg.  User1,Workstation7&lt;br /&gt;         User2,Workstation10)&lt;br /&gt;&lt;br /&gt;You must retrieve this in any manner you can, I had a list from SMS and also a report from edgesight showing me users and which workstations they had logged onto in the last 30 days.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Client Device check Script.VBS&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;On error resume Next&lt;br /&gt;&lt;br /&gt;Set objShell = CreateObject("WScript.Shell")&lt;br /&gt;Set objFSO = CreateObject("Scripting.fileSystemObject")&lt;br /&gt;&lt;br /&gt;Const HKU = &amp;amp;H80000003&lt;br /&gt;Dim StrArray(1000)&lt;br /&gt;Dim StrDog, StrSplit, StrSID, StrText, StrText2, StrUserID, StrreplaceDrive&lt;br /&gt;&lt;br /&gt;StrReplaceDrive = "\servername\sharename"&lt;br /&gt;&lt;br /&gt;' Get AD group name and membership&lt;br /&gt;    StrGroup = Inputbox("Enter AD Group Name ")&lt;br /&gt;    Return = objShell.run ("%comspec% /c h:\utils\DSGET group " &amp;amp; CHR(34) &amp;amp; "cn=" &amp;amp; StrGroup &amp;amp; ",OU=Data Access,OU=Groups,DC=thinworld,DC=netUK" &amp;amp; CHR(34) &amp;amp; " -members -expand | h:\utils\dsget user -samid -sid &gt;members.txt" ,0,True)&lt;br /&gt;&lt;br /&gt;Set objInputFile = objFSO.OpenTextFile("workstations.csv",1,False,-1)&lt;br /&gt;Set objOutputfile = objFSO.CreateTextFile("Output.txt",2,True)&lt;br /&gt;&lt;br /&gt;' Read the User IDs from file and then attach the SID on their PC to see the Drive mappings&lt;br /&gt;    x=1&lt;br /&gt;    Do While Not objinputfile.AtEndOfStream&lt;br /&gt;        Strtext = Ucase(objinputfile.ReadLine)&lt;br /&gt;        StrUSerID = Split(StrText,",")&lt;br /&gt;        GETSID(Struserid(0))&lt;br /&gt;&lt;br /&gt;        ' Check the machine is available before trying to read the registry&lt;br /&gt;        PINGFlag = Not CBool(ObjShell.run("ping -n 1 " &amp;amp; StrUserID(1),0,True))&lt;br /&gt;              If PINGFlag = True Then&lt;br /&gt;                 Call READREG(StrUserID(0),StrUserID(1),StrSID(1))   &lt;br /&gt;        Else   &lt;br /&gt;            objOutputfile.WriteLine StrUserID(1) &amp;amp; CHR(9) &amp;amp; "Computer Not Online"&lt;br /&gt;              End If&lt;br /&gt;   &lt;br /&gt;    x = x + 1&lt;br /&gt;    Loop&lt;br /&gt;&lt;br /&gt;objOutputfile.Close&lt;br /&gt;&lt;br /&gt;' Display the output file&lt;br /&gt;Return = objShell.run ("%comspec% /c notepad.exe output.txt",0,False)&lt;br /&gt;' End the Script&lt;br /&gt;Wscript.Quit&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;' Get the users SID Name&lt;br /&gt;Sub GETSID(StrUserID)&lt;br /&gt;    Set objInputFile2 = objFSO.OpenTextFile("members.txt",1)&lt;br /&gt;    Do While Not objinputfile2.AtEndOfStream&lt;br /&gt;        Strtext2 = objinputfile2.ReadLine&lt;br /&gt;        Pos = Instr(Strtext2,StrUserID)&lt;br /&gt;            If Pos &gt; 0 Then&lt;br /&gt;                StrSID = Split(Strtext2,"S-1-5")&lt;br /&gt;            End If   &lt;br /&gt;    Loop&lt;br /&gt;    objInputFile2.Close&lt;br /&gt;End Sub&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;' Search the users registry for the drive mapping&lt;br /&gt;Function READREG(StrUserID,Strcomputer,StrSID)&lt;br /&gt;    Set objReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\\" &amp;amp; strComputer &amp;amp; "\root\default:StdRegProv")&lt;br /&gt;    Set WshSysEnv = ObjShell.Environment("PROCESS")&lt;br /&gt;    StrSID = Trim(StrSID)&lt;br /&gt;    strKeyPath = "S-1-5" &amp;amp; StrSID &amp;amp; "\Network"&lt;br /&gt;    strKeyName = "RemotePath"&lt;br /&gt;    objReg.EnumKey HKU , strKeyPath, arrSubKeys   &lt;br /&gt;&lt;br /&gt;        For Each subkey In arrSubKeys&lt;br /&gt;            objReg.GetSTRINGValue HKU ,strKeyPath &amp;amp; "\" &amp;amp; subkey,strKeyName,szValue&lt;br /&gt;            intLength = Len(szValue)-1&lt;br /&gt;            strUncPath = Right(szValue, intLength)&lt;br /&gt;            If Ucase(StrUNCPath) = Ucase(StrreplaceDrive) Then           &lt;br /&gt;                objOutputfile.WriteLine Subkey &amp;amp; " Drive Mapped to " &amp;amp; StrUNCPath &amp;amp; " By User : " &amp;amp; StrUserID &amp;amp; " On Client : " &amp;amp; Strcomputer&lt;br /&gt;            End If           &lt;br /&gt;        Next&lt;br /&gt;End Function&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5163006370552729439-3068855072752241580?l=www.thinworld.net%2Fblog' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/3068855072752241580/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.thinworld.net/blog/2010/03/audit-users-manually-mapped-drive.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/3068855072752241580'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/3068855072752241580'/><link rel='alternate' type='text/html' href='http://www.thinworld.net/blog/2010/03/audit-users-manually-mapped-drive.html' title='Audit Users Manually mapped Drive mappings'/><author><name>Tomo</name><uri>http://www.blogger.com/profile/11900356308529850014</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='06250051572819351850'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5163006370552729439.post-3523568158631372580</id><published>2010-03-02T13:58:00.002Z</published><updated>2010-03-02T14:12:14.385Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='Scripts'/><title type='text'>Registry .REG backup Script</title><content type='html'>This Script reads in a .REG file and makes a backup of the registry area that the .REG will change when imported.&lt;br /&gt;&lt;br /&gt;This is handy when you are given a .REG file and told to import it. The script will create backup .REG files for you to restore the machine to original values should the import cause issues.&lt;br /&gt;&lt;br /&gt;Its not the prettiest of things and will create multiple backup REG files if there are multiple key paths. But you can highlight all the backup reg keys and import in the event of a restore.&lt;br /&gt;&lt;br /&gt;'&lt;br /&gt;' Backup Registry before importing a REG file&lt;br /&gt;'&lt;br /&gt;' This script is designed to be run before importing a .REG file&lt;br /&gt;' It will export the current registry key values into a .REG file&lt;br /&gt;' in order to make a restore to the original keys quick and simple.&lt;br /&gt;'&lt;br /&gt;' Input it a .REG file&lt;br /&gt;' It will output to a folder of the same name a .REG file for each required Key&lt;br /&gt;'&lt;br /&gt;&lt;br /&gt;On error resume next&lt;br /&gt;&lt;br /&gt;Set objFSO = CreateObject("Scripting.fileSystemObject")&lt;br /&gt;Set WshShell = CreateObject("WScript.Shell")&lt;br /&gt;Set objInputFile = objFSO.OpenTextFile(StrScript,1,False,0)&lt;br /&gt;&lt;br /&gt;StrFolder = Wshshell.CurrentDirectory&lt;br /&gt;StrScript = "tweak-bundle1.reg"&lt;br /&gt;dim StrKey(1000)&lt;br /&gt;&lt;br /&gt;StrPath = StrFolder &amp;amp; "\" &amp;amp; Left(StrScript,Len(StrScript)-4)&lt;br /&gt;&lt;br /&gt;objFSO.CreateFolder (StrPath)&lt;br /&gt;&lt;br /&gt;i=0&lt;br /&gt;Do Until objInputFile.AtEndOfStream&lt;br /&gt;    i = i+1&lt;br /&gt;    strData = objInputFile.ReadLine&lt;br /&gt;    If Instr(Strdata,"[") &gt; 0 Then&lt;br /&gt;        StrData = Left(StrData,Len(Strdata)-1)&lt;br /&gt;        StrData = Right(Strdata,Len(Strdata)-1)&lt;br /&gt;        StrKey(i) = Strdata&lt;br /&gt;        StrCommand = "REGEDIT /E " &amp;amp; CHR(34) &amp;amp; StrPath &amp;amp; "\" &amp;amp; i &amp;amp; ".reg" &amp;amp; CHR(34) &amp;amp; " " &amp;amp; CHR(34) &amp;amp; Strkey(i) &amp;amp; CHR(34)&lt;br /&gt;        Wshshell.Run Strcommand&lt;br /&gt;    End If&lt;br /&gt;Loop&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5163006370552729439-3523568158631372580?l=www.thinworld.net%2Fblog' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/3523568158631372580/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.thinworld.net/blog/2010/03/registry-reg-backup-script.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/3523568158631372580'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/3523568158631372580'/><link rel='alternate' type='text/html' href='http://www.thinworld.net/blog/2010/03/registry-reg-backup-script.html' title='Registry .REG backup Script'/><author><name>Tomo</name><uri>http://www.blogger.com/profile/11900356308529850014</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='06250051572819351850'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5163006370552729439.post-5988539126681917049</id><published>2010-02-24T10:12:00.003Z</published><updated>2010-03-01T09:17:49.241Z</updated><title type='text'>Appsense DLL rebase problem with Shdocvw.dll</title><content type='html'>We had 2 little problems in our environment.&lt;br /&gt;&lt;br /&gt;MS Word 2002 Help did not work as expected.&lt;br /&gt;Services.&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;msc&lt;/span&gt; did not display extended view&lt;br /&gt;&lt;br /&gt;Both of these problem were due to &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;Appsense&lt;/span&gt; Performance Manager v7 performing &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;DLL&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;rebasing&lt;/span&gt; on &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;Shdocvw&lt;/span&gt;.&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;dll&lt;/span&gt;. &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"&gt;Appsense&lt;/span&gt; does this as part of its memory optimization feature.&lt;br /&gt;&lt;br /&gt;We set &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_7"&gt;Appsense&lt;/span&gt; Performance Manager to exclude this &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_8"&gt;DLL&lt;/span&gt; for memory optimization and the problems were resolved.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5163006370552729439-5988539126681917049?l=www.thinworld.net%2Fblog' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/5988539126681917049/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.thinworld.net/blog/2010/02/appsense-memory-optmization-servicesmsc.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/5988539126681917049'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/5988539126681917049'/><link rel='alternate' type='text/html' href='http://www.thinworld.net/blog/2010/02/appsense-memory-optmization-servicesmsc.html' title='Appsense DLL rebase problem with Shdocvw.dll'/><author><name>Tomo</name><uri>http://www.blogger.com/profile/11900356308529850014</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='06250051572819351850'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5163006370552729439.post-944639873071443883</id><published>2010-02-23T16:29:00.004Z</published><updated>2010-02-23T16:36:39.611Z</updated><title type='text'>SQL script to read application useage from Edgesight Database</title><content type='html'>I had a requirement to extract some data from Edgesight. The standard reports in Edgesight could not provide the data i wanted so a colleague wrote me this SQL script that extracts the info straight out the database.&lt;br /&gt;&lt;br /&gt;My requirement was to see all launches of a particular EXE , the user and their workstation ID&lt;br /&gt;&lt;br /&gt;eg.    (winword.exe ,    User56,  Workstation1001)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;This SQL script did the trick for winword instances run in the last 2 days.&lt;br /&gt;&lt;br /&gt;select i.filename, convert(char(10),t1.dtperiod,120), c.client_name, p.account_name, count(*)&lt;br /&gt;from usage t1&lt;br /&gt;  join ctrx_session c on (c.sessid = t1.sessid)&lt;br /&gt;  join image i on (i.imid = t1.imid)&lt;br /&gt;  join principal p on (p.prid = t1.prid)&lt;br /&gt;where DATEDIFF(day, t1.dtperiod, GETDATE()) &lt; &lt;span style="font-weight: bold;"&gt;2&lt;/span&gt;&lt;br /&gt;and   filename like '&lt;span style="font-weight: bold;"&gt;%winword%&lt;/span&gt;'&lt;br /&gt;group by i.filename, convert(char(10),t1.dtperiod,120), c.client_name,  p.account_name&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5163006370552729439-944639873071443883?l=www.thinworld.net%2Fblog' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/944639873071443883/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.thinworld.net/blog/2010/02/sql-script-to-read-application-useage.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/944639873071443883'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/944639873071443883'/><link rel='alternate' type='text/html' href='http://www.thinworld.net/blog/2010/02/sql-script-to-read-application-useage.html' title='SQL script to read application useage from Edgesight Database'/><author><name>Tomo</name><uri>http://www.blogger.com/profile/11900356308529850014</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='06250051572819351850'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5163006370552729439.post-522360416424662574</id><published>2010-02-23T14:17:00.002Z</published><updated>2010-02-23T14:25:42.465Z</updated><title type='text'>Citrix Access Gateway VM on XenServer</title><content type='html'>To Install Citrix Access Gateway 4.6.2 onto a Citrix XenServer VM use the following procedure.&lt;br /&gt;&lt;br /&gt;Download the install ISO from the citrix download centre&lt;br /&gt;Create a New VM (other install media, 256MB RAM, 1vCPU, 12GB , 2 NIC Cards)&lt;br /&gt;Boot the VM from the ISO Image and it will install the software automatically&lt;br /&gt;Once install is complete unmount the ISO and reboot&lt;br /&gt;From a management PC set the Ip address of the PC to 10.20.30.x 255.255.255.0&lt;br /&gt;Connect from the Management PC to the CAG on 10.20.30.40   USER: root  PASS:rootadmin&lt;br /&gt;Click to change the admin password&lt;br /&gt;Click to download the Access Gateway Admin Tool. Install this on your management PC.&lt;br /&gt;&lt;br /&gt;From the management console you can change the CAG Ip address and perform all your neccessary configuration.&lt;br /&gt;&lt;br /&gt;Thanks to xenappblog.com for this information.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5163006370552729439-522360416424662574?l=www.thinworld.net%2Fblog' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/522360416424662574/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.thinworld.net/blog/2010/02/citrix-access-gateway-vm-on-xenserver.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/522360416424662574'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/522360416424662574'/><link rel='alternate' type='text/html' href='http://www.thinworld.net/blog/2010/02/citrix-access-gateway-vm-on-xenserver.html' title='Citrix Access Gateway VM on XenServer'/><author><name>Tomo</name><uri>http://www.blogger.com/profile/11900356308529850014</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='06250051572819351850'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5163006370552729439.post-6430102378578664232</id><published>2010-02-09T09:43:00.002Z</published><updated>2010-02-09T09:51:51.734Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='MFCOM'/><title type='text'>MFCOM Script to detect CAG Access</title><content type='html'>I wanted a script to detect if a users connection was made through CAG (Citrix Access Gateway)&lt;br /&gt;&lt;br /&gt;I required this as i wanted to save users default printer only when the connection was made in the office. This is to prevent users saving their home printer information into their profiles.&lt;br /&gt;&lt;br /&gt;We use a hybrid profile solution managed by Appsense Environment Manager. Using the following script as a custom rule in Appsense we could tell Appsense to NOT SAVE the default printer for any connections made through the CAG.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Script &lt;/span&gt;&lt;br /&gt;'Name of Filter scan expected to pass&lt;br /&gt;ExpectedFilter = "xxx_CWI_Policy"&lt;br /&gt;&lt;br /&gt;'Get Server Name&lt;br /&gt;Set objNTInfo = CreateObject("WinNTSystemInfo")&lt;br /&gt;ServerName = lcase(objNTInfo.ComputerName)&lt;br /&gt;&lt;br /&gt;Result = 0&lt;br /&gt;&lt;br /&gt;'Create MetaFrame Session Object&lt;br /&gt;Set MFSession = Createobject("MetaFrameCOM.MetaFrameSession")&lt;br /&gt;&lt;br /&gt;'Initialize the session object with our data&lt;br /&gt;MFSession.Initialize 6, ServerName ,"",-1&lt;br /&gt;&lt;br /&gt;'Iterate through the session filters for this session&lt;br /&gt;&lt;br /&gt;For Each x in MFSession.SmartAccessFilters&lt;br /&gt;    msgbox x&lt;br /&gt;    ' return true if our filter is found&lt;br /&gt;    If x = ExpectedFilter Then&lt;br /&gt;        Result = 1&lt;br /&gt;    End If&lt;br /&gt;Next&lt;br /&gt;'Return result of script&lt;br /&gt;If Result = 0 Then&lt;br /&gt;'Rule will pass&lt;br /&gt;WScript.Quit 0&lt;br /&gt;Else&lt;br /&gt;'Rule will fail&lt;br /&gt;WScript.Quit 1&lt;br /&gt;End If&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5163006370552729439-6430102378578664232?l=www.thinworld.net%2Fblog' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/6430102378578664232/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.thinworld.net/blog/2010/02/mfcom-script-to-detect-cag-access.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/6430102378578664232'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/6430102378578664232'/><link rel='alternate' type='text/html' href='http://www.thinworld.net/blog/2010/02/mfcom-script-to-detect-cag-access.html' title='MFCOM Script to detect CAG Access'/><author><name>Tomo</name><uri>http://www.blogger.com/profile/11900356308529850014</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='06250051572819351850'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5163006370552729439.post-7808174438132188655</id><published>2010-02-02T12:31:00.002Z</published><updated>2010-02-02T12:35:55.892Z</updated><title type='text'>Publishing a HTA file in XenApp (citrix)</title><content type='html'>If you wish to directly publish a HTA application in XenApp (Citrix) Then you need to point at the MSHTA.EXE file and pass it the HTA name. Directly publishing the HTA does not work.&lt;br /&gt;&lt;br /&gt;eg.&lt;br /&gt;&lt;br /&gt;"C:\windows\system32\WSHta.exe" "MyCode.hta"&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5163006370552729439-7808174438132188655?l=www.thinworld.net%2Fblog' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/7808174438132188655/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.thinworld.net/blog/2010/02/citrix-publish-hta-file.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/7808174438132188655'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/7808174438132188655'/><link rel='alternate' type='text/html' href='http://www.thinworld.net/blog/2010/02/citrix-publish-hta-file.html' title='Publishing a HTA file in XenApp (citrix)'/><author><name>Tomo</name><uri>http://www.blogger.com/profile/11900356308529850014</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='06250051572819351850'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5163006370552729439.post-7506878847221713306</id><published>2010-01-28T16:58:00.001Z</published><updated>2010-01-28T17:01:05.627Z</updated><title type='text'>XenApp Citrix Copy and Paste Problems</title><content type='html'>Ive often had problems with copy and Paste between my ICA delivered applications and also my RDP connections to server desktops. Users report the same issue as well and a logoff and log back on normally sorts it all out. Ive also tried the Repair chain ulities available but with no luck. I  came across this registry tweak for v10 or newer ICA clients that may help. Ive just added it to my machine and will monitor to see if i see an improvement.&lt;br /&gt;&lt;br /&gt;See the following article for full details&lt;br /&gt;http://support.citrix.com/article/ctx112434&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5163006370552729439-7506878847221713306?l=www.thinworld.net%2Fblog' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/7506878847221713306/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.thinworld.net/blog/2010/01/xenapp-citrix-copy-and-paste-problems.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/7506878847221713306'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/7506878847221713306'/><link rel='alternate' type='text/html' href='http://www.thinworld.net/blog/2010/01/xenapp-citrix-copy-and-paste-problems.html' title='XenApp Citrix Copy and Paste Problems'/><author><name>Tomo</name><uri>http://www.blogger.com/profile/11900356308529850014</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='06250051572819351850'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5163006370552729439.post-915981473968066623</id><published>2010-01-28T14:26:00.003Z</published><updated>2010-01-28T14:32:16.398Z</updated><title type='text'>Default Web Browser Registry Keys</title><content type='html'>To change the &lt;span style="font-weight: bold;"&gt;Default Web Browser&lt;/span&gt; setting for a machine via the registry you need to modify the following registry key areas. I got these keys from a RegMon on my Windows XP workstation but it should be the same for Windows 2003 Server.&lt;br /&gt;&lt;br /&gt;HKLM\Software\Classes\HTTPS\Shell\Open&lt;br /&gt;HKLM\Software\Classes\HTTP\Shell&lt;br /&gt;HKLM\Software\Classes\FTP&lt;br /&gt;HKLM\Software\Classes\HTTP\.XHTML&lt;br /&gt;HKLM\Software\Classes\HTTP\.XHT&lt;br /&gt;HKLM\Software\Classes\HTTP\.SHTML&lt;br /&gt;HKLM\Software\Classes\HTTP\.HTML&lt;br /&gt;HKLM\Software\Classes\HTTP\.HTM&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5163006370552729439-915981473968066623?l=www.thinworld.net%2Fblog' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/915981473968066623/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.thinworld.net/blog/2010/01/default-web-browser-registry-keys.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/915981473968066623'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/915981473968066623'/><link rel='alternate' type='text/html' href='http://www.thinworld.net/blog/2010/01/default-web-browser-registry-keys.html' title='Default Web Browser Registry Keys'/><author><name>Tomo</name><uri>http://www.blogger.com/profile/11900356308529850014</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='06250051572819351850'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5163006370552729439.post-735389562262790871</id><published>2010-01-28T09:50:00.003Z</published><updated>2010-01-28T10:09:41.337Z</updated><title type='text'>CMC or XenApp Advanced Configuration Loader fails to Launch after Upgrade</title><content type='html'>After applying an upgrade or patch to your XenApp servers the CMC or XenApp Advanced Configuration Loader fails to start with the error&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;The Presentation Server Console could not be started because there was an error creating the process. Would you like the details.&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Ive seen this problem on XenApp 4.0 to XenApp 4.5 upgrades and now again after installing HRP05 for XenApp 4.5&lt;br /&gt;The problem is due to Java requirements. Pressing the YES to the error message will give you more of a clue.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;XenApp 4.0 Resolution&lt;/span&gt;&lt;br /&gt;The CMC for PS4 appears to be hardcoded to look for key&lt;br /&gt;HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\1.4\JavaHome&lt;br /&gt;&lt;br /&gt;Put this old entry back but point the Java Home key to location of the currently installed java (eg. C:\Program Files\Java\jre1.5.0_09)&lt;br /&gt;&lt;br /&gt;This fix is discussed on older version of the CMC that had the same type of problem in article &lt;span style="font-weight: bold;"&gt;CTX102338 &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;XenApp 4.5 HRP05 Resolution&lt;/span&gt;&lt;br /&gt;After HRP05 upgrade the newer CMC with stupid name requires at least Java 6. Installing this corrects the launch problem.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5163006370552729439-735389562262790871?l=www.thinworld.net%2Fblog' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/735389562262790871/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.thinworld.net/blog/2010/01/cmc-or-xenapp-advanced-configuration.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/735389562262790871'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/735389562262790871'/><link rel='alternate' type='text/html' href='http://www.thinworld.net/blog/2010/01/cmc-or-xenapp-advanced-configuration.html' title='CMC or XenApp Advanced Configuration Loader fails to Launch after Upgrade'/><author><name>Tomo</name><uri>http://www.blogger.com/profile/11900356308529850014</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='06250051572819351850'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5163006370552729439.post-3377605581187764052</id><published>2010-01-27T16:15:00.003Z</published><updated>2010-01-27T16:24:45.876Z</updated><title type='text'>Web Interface Single Signon</title><content type='html'>If you want single sign on for web interface where the users AD credentials are pushed through to the web interface page then you need to install the full version of the Client and set the following registry keys on your clients&lt;br /&gt;&lt;br /&gt;[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Citrix\ICA Client\Engine\Lockdown Profiles\All Regions\Lockdown\Logon\Local Credentials]&lt;br /&gt;"SSOnUserSetting"="true"&lt;br /&gt;"EnableSSOnThruICAFile"="true"&lt;br /&gt;"UseLocalUserAndPassword"="true"&lt;br /&gt;"SSOnCredentialType"="Any,NT,NDS"&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5163006370552729439-3377605581187764052?l=www.thinworld.net%2Fblog' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/3377605581187764052/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.thinworld.net/blog/2010/01/web-interface-single-signon.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/3377605581187764052'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/3377605581187764052'/><link rel='alternate' type='text/html' href='http://www.thinworld.net/blog/2010/01/web-interface-single-signon.html' title='Web Interface Single Signon'/><author><name>Tomo</name><uri>http://www.blogger.com/profile/11900356308529850014</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='06250051572819351850'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5163006370552729439.post-2203575539694320351</id><published>2010-01-26T16:16:00.004Z</published><updated>2010-01-26T16:27:56.692Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='Scripts'/><title type='text'>Support GUI HTA</title><content type='html'>I wrote this support GUI for my employer. It allows 1st line support to perform a number of quick support actions from a simple GUI Interface. The code is HTA so HTML and VB Script together.&lt;br /&gt;&lt;br /&gt;We use a hybrid profile system so the GUI allows the deletion of portions of the profile at the click of a button. (Eg. Delete Printer settings, Delete IE settings)&lt;br /&gt;&lt;br /&gt;The program also records it own useage so that trends spotting can be performed.&lt;br /&gt;&lt;br /&gt;The code is fairly specific to my current environment so will be of limited use to others , however some of the code may be handy so im posting the whole thing.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Screenshot&lt;/span&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.thinworld.net/blog/uploaded_images/supportgui-745394.bmp"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 200px; height: 186px;" src="http://www.thinworld.net/blog/uploaded_images/supportgui-745279.bmp" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.thinworld.net/blog/SupportGUI2.hta"&gt;SupportGUI2.hta&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5163006370552729439-2203575539694320351?l=www.thinworld.net%2Fblog' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/2203575539694320351/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.thinworld.net/blog/2010/01/support-gui-hta.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/2203575539694320351'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/2203575539694320351'/><link rel='alternate' type='text/html' href='http://www.thinworld.net/blog/2010/01/support-gui-hta.html' title='Support GUI HTA'/><author><name>Tomo</name><uri>http://www.blogger.com/profile/11900356308529850014</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='06250051572819351850'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5163006370552729439.post-7345175486762679880</id><published>2010-01-25T14:44:00.001Z</published><updated>2010-01-25T14:46:57.925Z</updated><title type='text'>XenServer Build from USB Stick</title><content type='html'>I saw this interesting post in the citrix blogs , a guide to installing &lt;span style="font-weight: bold;"&gt;XenServer&lt;/span&gt; via a bootable USB stick. I plan to use this method to update my &lt;span style="font-weight: bold;"&gt;XenServer&lt;/span&gt; from v4 to v5 very soon as my Little shuttle XPC has no CD drive.  I will post back if i have any problems with the method detailed in this link&lt;br /&gt;&lt;br /&gt;http://community.citrix.com/display/ocb/2010/01/17/Install+XenServer+from+USB+Drive&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5163006370552729439-7345175486762679880?l=www.thinworld.net%2Fblog' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/7345175486762679880/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.thinworld.net/blog/2010/01/xenserver-build-from-usb-stick.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/7345175486762679880'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/7345175486762679880'/><link rel='alternate' type='text/html' href='http://www.thinworld.net/blog/2010/01/xenserver-build-from-usb-stick.html' title='XenServer Build from USB Stick'/><author><name>Tomo</name><uri>http://www.blogger.com/profile/11900356308529850014</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='06250051572819351850'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5163006370552729439.post-965899336582926250</id><published>2010-01-05T09:40:00.002Z</published><updated>2010-01-05T09:50:10.368Z</updated><title type='text'>64 Bit Terminal Server Shadow Key</title><content type='html'>64 Bit windows has a 64 bit area for the shadow keys.&lt;br /&gt;&lt;br /&gt;HKLM\Software\Wow6432Node\Microsoft\Windows NT\CurrentVersion\Terminal Server\Install\Software&lt;br /&gt;&lt;br /&gt;This area works in the same way the old 32 bit versions does. Eg. When in Change User \Install mode HKCU registry key changes are written to this area.&lt;br /&gt;&lt;br /&gt;I only noticed a 64 bit version after a small drama where users reported an admin account name in their MS Word username field.&lt;br /&gt;Investigation showed that an admin user had launched MS Word while building a server. The Server for reasons still unclear was still in install mode (deployment failure possibly) and as such the Admins account Name went into the shadow key.  When the server went live new users picked up the Admins account name in their Word Username field.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5163006370552729439-965899336582926250?l=www.thinworld.net%2Fblog' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/965899336582926250/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.thinworld.net/blog/2010/01/64-bit-terminal-server-shadow-key.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/965899336582926250'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/965899336582926250'/><link rel='alternate' type='text/html' href='http://www.thinworld.net/blog/2010/01/64-bit-terminal-server-shadow-key.html' title='64 Bit Terminal Server Shadow Key'/><author><name>Tomo</name><uri>http://www.blogger.com/profile/11900356308529850014</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='06250051572819351850'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5163006370552729439.post-484142763157467540</id><published>2009-12-30T10:35:00.004Z</published><updated>2009-12-30T10:53:31.395Z</updated><title type='text'>HTA Displaying a ADO Security Warning Message</title><content type='html'>Ive been writing a &lt;span style="font-weight: bold;"&gt;HTA&lt;/span&gt; recently to act as a support GUI for my employer.&lt;br /&gt;I will post all its code in another blog once its completed.&lt;br /&gt;&lt;br /&gt;I had an annoying pop up message which was slowing down my testing.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;ADO Security Warning&lt;/span&gt;&lt;br /&gt;This website uses a data provider that may be unsafe. If you trust the website, Click OK, Otherwise click Cancel&lt;br /&gt;&lt;br /&gt;This occured because i was running the HTA from a network drive,the message did not display if i ran the HTA locally on my PC.&lt;br /&gt;&lt;br /&gt;The following Internet Explorer restriction is causing the pop up message&lt;br /&gt;&lt;pre class="in_text"&gt;Miscellaneous: Access data sources across domains&lt;/pre&gt;This security popup can be prevented by setting the following registry key&lt;br /&gt;HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\1&lt;br /&gt;&lt;br /&gt;Change 1406 to value 0 - To Prevent the message&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Note : &lt;/span&gt;A Great article for details on IE Explorer Security Zone settings in the registry&lt;br /&gt;is the MS Article &lt;a href="http://support.microsoft.com/kb/182569"&gt;http://support.microsoft.com/kb/182569&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5163006370552729439-484142763157467540?l=www.thinworld.net%2Fblog' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/484142763157467540/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.thinworld.net/blog/2009/12/hta-displaying-ado-security-warning.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/484142763157467540'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/484142763157467540'/><link rel='alternate' type='text/html' href='http://www.thinworld.net/blog/2009/12/hta-displaying-ado-security-warning.html' title='HTA Displaying a ADO Security Warning Message'/><author><name>Tomo</name><uri>http://www.blogger.com/profile/11900356308529850014</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='06250051572819351850'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5163006370552729439.post-4171357687827933390</id><published>2009-12-25T11:19:00.002Z</published><updated>2009-12-25T11:21:20.375Z</updated><title type='text'>Determine Cirix Lience Server Version</title><content type='html'>The Citrix Licence console (well webpage really) does not seem to tell you what version it is.&lt;br /&gt;If you need to check the version look in the following registry key to find out&lt;br /&gt;&lt;br /&gt;HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\LicenseServer\Install&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5163006370552729439-4171357687827933390?l=www.thinworld.net%2Fblog' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/4171357687827933390/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.thinworld.net/blog/2009/12/determine-cirix-lience-server-version.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/4171357687827933390'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/4171357687827933390'/><link rel='alternate' type='text/html' href='http://www.thinworld.net/blog/2009/12/determine-cirix-lience-server-version.html' title='Determine Cirix Lience Server Version'/><author><name>Tomo</name><uri>http://www.blogger.com/profile/11900356308529850014</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='06250051572819351850'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5163006370552729439.post-8994803484689492100</id><published>2009-12-23T09:04:00.002Z</published><updated>2009-12-23T09:12:14.211Z</updated><title type='text'>Trusted Sites not working in GPO Setting Internet Explorer Maintenance</title><content type='html'>I had a problem with setting trusted and restricted web sites using the GPO setting under Internet Explorer Maintenance.&lt;br /&gt;&lt;br /&gt;I was adding sites to the IE trusted zones but the policy setting failed to take effect.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Resolution    &lt;/span&gt;&lt;br /&gt;If the GPO setting "Site to Zone Assignment" is used it can prevent settings in Internet explorer maintenance taking effect (see MS Articles 919748 &amp;amp; 918915)&lt;br /&gt;&lt;br /&gt;The site to Zone assignment can be set in both user and computer config area.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Note : &lt;/span&gt;Computer config has a setting to ignore User settings (a gotcha)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5163006370552729439-8994803484689492100?l=www.thinworld.net%2Fblog' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/8994803484689492100/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.thinworld.net/blog/2009/12/trusted-sites-not-working-in-gpo.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/8994803484689492100'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/8994803484689492100'/><link rel='alternate' type='text/html' href='http://www.thinworld.net/blog/2009/12/trusted-sites-not-working-in-gpo.html' title='Trusted Sites not working in GPO Setting Internet Explorer Maintenance'/><author><name>Tomo</name><uri>http://www.blogger.com/profile/11900356308529850014</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='06250051572819351850'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5163006370552729439.post-5297574880768079866</id><published>2009-12-14T14:39:00.002Z</published><updated>2009-12-14T14:53:56.568Z</updated><title type='text'>Citrix Logoff Sessions Tool</title><content type='html'>Another tool I came across today which looks very handy is the "&lt;span style="font-weight: bold;"&gt;Citrix Logoff tool&lt;/span&gt;"&lt;br /&gt;This single EXE needs to be run on a XenApp server and then performs a search of the farm&lt;br /&gt;for all the sessions open by a user. You can then select to to perform the following actions&lt;br /&gt;on that users session&lt;br /&gt;&lt;br /&gt;Logoff&lt;br /&gt;Disconnect&lt;br /&gt;Processes&lt;br /&gt;Send Message&lt;br /&gt;&lt;br /&gt;This is the same function that can be performed from within the &lt;span style="font-weight: bold;"&gt;AMC&lt;/span&gt; (Access Management Console) but saves a bit of the hassle and also saves a few clicks as the AMC search for me always seems to forget what to search and you have to set it back to Presentation Server every time.&lt;br /&gt;&lt;br /&gt;&lt;img src="file:///C:/DOCUME%7E1/DT9735%7E1/LOCALS%7E1/Temp/moz-screenshot-3.png" alt="" /&gt;&lt;img src="file:///C:/DOCUME%7E1/DT9735%7E1/LOCALS%7E1/Temp/moz-screenshot-4.png" alt="" /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.thinworld.net/blog/uploaded_images/logogg-796093.bmp"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 228px;" src="http://www.thinworld.net/blog/uploaded_images/logogg-796070.bmp" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Download the tool from ctx121653&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5163006370552729439-5297574880768079866?l=www.thinworld.net%2Fblog' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/5297574880768079866/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.thinworld.net/blog/2009/12/citrix-logoff-sessions-tool.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/5297574880768079866'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/5297574880768079866'/><link rel='alternate' type='text/html' href='http://www.thinworld.net/blog/2009/12/citrix-logoff-sessions-tool.html' title='Citrix Logoff Sessions Tool'/><author><name>Tomo</name><uri>http://www.blogger.com/profile/11900356308529850014</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='06250051572819351850'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5163006370552729439.post-4627071087014336504</id><published>2009-12-14T14:08:00.002Z</published><updated>2009-12-14T14:18:24.419Z</updated><title type='text'>Citrix Quick Launch</title><content type='html'>Citrix has released a standalone &lt;span style="font-weight: bold;"&gt;Quick Launcher&lt;/span&gt; executable.&lt;br /&gt;&lt;br /&gt;This can perform a &lt;span style="font-weight: bold;"&gt;direct ICA&lt;/span&gt; connection to a server like the "&lt;span style="font-weight: bold;"&gt;Quick Connect&lt;/span&gt;" box in the old program neighbourhood.  It also allows connections to published applications to be made.&lt;br /&gt;&lt;br /&gt;The reason for this release is that PN has been removed from the newer client installs and this feature was very handy for admins who need to quickly connect to a server with ICA.&lt;br /&gt;&lt;br /&gt;The tool and full details are available on&lt;br /&gt;http://support.citrix.com/article/ctx122536&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Screenshot &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.thinworld.net/blog/uploaded_images/quick-793232.bmp"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 305px;" src="http://www.thinworld.net/blog/uploaded_images/quick-793204.bmp" alt="" border="0" /&gt;&lt;/a&gt;&lt;img src="file:///C:/DOCUME%7E1/DT9735%7E1/LOCALS%7E1/Temp/moz-screenshot-2.png" alt="" /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5163006370552729439-4627071087014336504?l=www.thinworld.net%2Fblog' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/4627071087014336504/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.thinworld.net/blog/2009/12/citrix-quick-launch.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/4627071087014336504'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/4627071087014336504'/><link rel='alternate' type='text/html' href='http://www.thinworld.net/blog/2009/12/citrix-quick-launch.html' title='Citrix Quick Launch'/><author><name>Tomo</name><uri>http://www.blogger.com/profile/11900356308529850014</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='06250051572819351850'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5163006370552729439.post-5240564310539687346</id><published>2009-12-07T09:35:00.003Z</published><updated>2009-12-07T09:43:42.273Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='MFCOM'/><title type='text'>MFCOM To List Servers Silo</title><content type='html'>A &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_0"&gt;collague&lt;/span&gt; asked me for a script to list all the servers and their assigned silo into a text file so he can put the information into a change control.&lt;br /&gt;&lt;br /&gt;&lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_1"&gt;Here's&lt;/span&gt; the script.&lt;br /&gt;&lt;br /&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;StrOutputfilename&lt;/span&gt; = "server_silo.&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;txt&lt;/span&gt;"&lt;br /&gt;Set &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;fso&lt;/span&gt; = &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;CreateObject&lt;/span&gt;("Scripting.&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"&gt;FileSystemObject&lt;/span&gt;")&lt;br /&gt;Set Output_File = &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_7"&gt;fso&lt;/span&gt;.&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_8"&gt;CreateTextFile&lt;/span&gt;(&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_9"&gt;stroutputFileName&lt;/span&gt;, True)&lt;br /&gt;&lt;br /&gt;Set farm=&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_10"&gt;CreateObject&lt;/span&gt;("&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_11"&gt;MetaframeCOM&lt;/span&gt;.&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_12"&gt;MetaframeFarm&lt;/span&gt;")&lt;br /&gt;farm.initialize 1&lt;br /&gt;&lt;br /&gt;for each server in farm.servers&lt;br /&gt;             Output_File.&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_13"&gt;Writeline&lt;/span&gt; server.&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_14"&gt;Servername&lt;/span&gt; &amp;amp; " " &amp;amp; server.&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_15"&gt;ParentFolderDN&lt;/span&gt;&lt;br /&gt;Next&lt;br /&gt;&lt;br /&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_16"&gt;Outputfile&lt;/span&gt;.Close&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5163006370552729439-5240564310539687346?l=www.thinworld.net%2Fblog' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/5240564310539687346/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.thinworld.net/blog/2009/12/mfcom-to-list-servers-silo.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/5240564310539687346'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/5240564310539687346'/><link rel='alternate' type='text/html' href='http://www.thinworld.net/blog/2009/12/mfcom-to-list-servers-silo.html' title='MFCOM To List Servers Silo'/><author><name>Tomo</name><uri>http://www.blogger.com/profile/11900356308529850014</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='06250051572819351850'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5163006370552729439.post-6337044111017181154</id><published>2009-12-01T14:25:00.004Z</published><updated>2009-12-01T14:59:29.464Z</updated><title type='text'>Citrix ICA Client Hot Keys and Keyboard Mapping</title><content type='html'>Client Side Citrix hotkeys are controlled by the contents of the file &lt;span style="font-weight: bold;"&gt;APPSRV.INI&lt;/span&gt;&lt;br /&gt;Full information of the syntax of the file is contained in article CTX331178&lt;br /&gt;&lt;br /&gt;Some Handy hot keys are :&lt;br /&gt;&lt;br /&gt;SHIFT + F2 = Seamless on/off&lt;br /&gt;SHIFT + F3 = Disconnect&lt;br /&gt;CTRL  + F1 = Windows Security&lt;br /&gt;CTRL + F3 = Task Manager&lt;br /&gt;&lt;br /&gt;Inside the appsrv.ini you should see entries similar to the default set below.&lt;br /&gt;&lt;br /&gt;Hotkey1Char=F1&lt;br /&gt;Hotkey1Shift=Shift&lt;br /&gt;Hotkey2Char=F3&lt;br /&gt;Hotkey2Shift=Shift&lt;br /&gt;Hotkey3Char=F2&lt;br /&gt;Hotkey3Shift=Shift&lt;br /&gt;Hotkey4Char=F1&lt;br /&gt;Hotkey4Shift=Ctrl&lt;br /&gt;Hotkey5Char=F2&lt;br /&gt;Hotkey5Shift=Ctrl&lt;br /&gt;Hotkey6Char=F2&lt;br /&gt;Hotkey6Shift=Alt&lt;br /&gt;Hotkey7Char=plus&lt;br /&gt;Hotkey7Shift=Alt&lt;br /&gt;Hotkey8Char=minus&lt;br /&gt;Hotkey8Shift=Alt&lt;br /&gt;Hotkey9Char=F3&lt;br /&gt;HotKey9Shift=Ctrl&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;The fields on the Hotkeys tab are&lt;/span&gt; &lt;p&gt;&lt;/p&gt;  &lt;ul&gt;&lt;p&gt;&lt;span&gt;•  1 The Task List hotkey displays the Windows Task List for the local Windows desktop on the client computer. The default value for the Task List hotkey is SHIFT+F1. You can also use CTRL+ESC to display the Windows Task List on the client computer if you are not using SHIFT+F1 as an ICA Win16 Client hotkey. &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;• 2 The Close Remote Application hotkey disconnects from the Citrix server and exits the ICA Win16 Client. Using this hotkey will either leave the associated application in a disconnected state on the Citrix server or exit the application on the Citrix server depending on how the application is configured. The default value for the Close Remote Application hotkey is SHIFT+F3.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;• 3 The Toggle Title Bar hotkey causes the Citrix ICA Client window to display or hide its Windows title bar. The default value for the Toggle Title Bar hotkey is SHIFT+F2.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;• 4 The CTRL-ALT-DEL hotkey sends the standard Windows hotkey CTRL+ALT+DEL to the Citrix server running the remote application. This hotkey displays the Windows NT Security desktop in the ICA session. The default value for the CTRL-ALT-DEL hotkey is CTRL+F1.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;• 5 The CTRL-ESC hotkey sends the standard Windows hotkey CTRL+ESC to the Citrix server running the remote application. When using this hotkey during an ICA session on a WinFrame server, the remote Task List appears. If the ICA session is running on a MetaFrame server, the remote Windows NT Start menu appears. The default value for the CTRL-ESC hotkey is CTRL+F2.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;• 6 The ALT-ESC hotkey sends the standard Windows hotkey ALT+ESC to the Citrix server running the remote application. This hotkey is used to cycle the focus through maximized and minimized windows of programs that have been opened in an ICA session. The default value for the ALT-ESC hotkey is ALT+F2.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;• 7 The ALT-TAB hotkey sends the standard Windows hotkey ALT+TAB to the Citrix server running the remote application. Use this hotkey to cycle through applications that have been opened in the ICA session. A popup box appears and displays the programs as you cycle through them. The selected application receives keyboard and mouse focus. The default value for the ALT-TAB hotkey is ALT+PLUS.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;• 8 The ALT-BACKTAB hotkey sends the standard Windows hotkey ALT+SHIFT+TAB to the Citrix server running the remote application. Like the ALT+TAB hotkey, this key sequence cycles through applications that have been opened in the ICA session but in the opposite direction. The chosen application receives keyboard and mouse focus. The default value for the ALT-BACKTAB hotkey is ALT+MINUS.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;• 9 The CTRL-SHIFT-ESC hotkey sends the standard Windows hotkey CTRL+SHIFT+ESC to the MetaFrame server running the remote application. (This hotkey is not used by ICA sessions on WinFrame servers.) This hotkey displays the Windows NT Task Manager in the ICA session. The default value for the CTRL-SHIFT-ESC hotkey is CTRL+F3. &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;• 10 The CTRL-F5 hotkey Toggles the zero latency mode between On and Off. Use this hotkey to either enable or disable the zero latency mode.&lt;/span&gt;&lt;/p&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5163006370552729439-6337044111017181154?l=www.thinworld.net%2Fblog' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/6337044111017181154/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.thinworld.net/blog/2009/12/citrix-ica-client-hot-keys-and-keyboard.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/6337044111017181154'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/6337044111017181154'/><link rel='alternate' type='text/html' href='http://www.thinworld.net/blog/2009/12/citrix-ica-client-hot-keys-and-keyboard.html' title='Citrix ICA Client Hot Keys and Keyboard Mapping'/><author><name>Tomo</name><uri>http://www.blogger.com/profile/11900356308529850014</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='06250051572819351850'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5163006370552729439.post-8190075565629846762</id><published>2009-12-01T11:39:00.005Z</published><updated>2009-12-01T11:53:47.609Z</updated><title type='text'>Protocol Driver Error on application launch</title><content type='html'>We had reports that some users were &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_0"&gt;receiving&lt;/span&gt; the following error message&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Cannot connect to &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;Citrix&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;XenApp&lt;/span&gt; Server&lt;br /&gt;Protocol Driver Error &lt;/blockquote&gt;&lt;br /&gt;A scan of the number of connection on all servers showed an suspicious server with no connections. Closer inspection of this server showed it had no &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;ICA&lt;/span&gt; listener displaying in the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;AMC&lt;/span&gt; console. Also telnet on port 1494 to the server failed. The event log of the server had a large number of the following messages&lt;br /&gt;&lt;br /&gt;Event ID 118&lt;br /&gt;Unable to connect to the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;CGP&lt;/span&gt; Tunnel destination (127.0.0.1:1494)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Solution&lt;/span&gt;&lt;br /&gt;We simply restarted the server and it corrected the fault. If we needed to we were going to recreated the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"&gt;ICA&lt;/span&gt; listener which is detailed in the following &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_7"&gt;Citrix&lt;/span&gt; Article &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_8"&gt;CTX&lt;/span&gt;115152&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5163006370552729439-8190075565629846762?l=www.thinworld.net%2Fblog' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/8190075565629846762/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.thinworld.net/blog/2009/12/protocol-driver-error-on-application.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/8190075565629846762'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/8190075565629846762'/><link rel='alternate' type='text/html' href='http://www.thinworld.net/blog/2009/12/protocol-driver-error-on-application.html' title='Protocol Driver Error on application launch'/><author><name>Tomo</name><uri>http://www.blogger.com/profile/11900356308529850014</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='06250051572819351850'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5163006370552729439.post-8905714187431044156</id><published>2009-12-01T10:14:00.003Z</published><updated>2009-12-01T10:39:34.288Z</updated><title type='text'>Non Seamless applications on a per application basis</title><content type='html'>A colleague came across this handy solution for delivering a non-seamless application to users.&lt;br /&gt;Normally a user can choose to have non seamless applications via their web interface options but this effect all their applications. This solution allows a single problematic application to be delivered non seamless to users.&lt;br /&gt;&lt;br /&gt;To set a single application to non-seamless edi the &lt;span style="font-weight: bold;"&gt;Default.ICA&lt;/span&gt; file on the web interface server.&lt;br /&gt;&lt;span style="font-style: italic;"&gt;(The following is for web Interface 4 thru 4.6 for older versions see the Citrix Article)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;[ApplicationServers]&lt;br /&gt;application=&lt;br /&gt;&lt;br /&gt;Create a new line and add the following.&lt;p&gt;&lt;/p&gt;&lt;p&gt;[Notepad]&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;TWIMode=Off&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;For full info see the following Citrix Article CTX116357&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5163006370552729439-8905714187431044156?l=www.thinworld.net%2Fblog' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/8905714187431044156/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.thinworld.net/blog/2009/12/non-seamless-applications.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/8905714187431044156'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/8905714187431044156'/><link rel='alternate' type='text/html' href='http://www.thinworld.net/blog/2009/12/non-seamless-applications.html' title='Non Seamless applications on a per application basis'/><author><name>Tomo</name><uri>http://www.blogger.com/profile/11900356308529850014</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='06250051572819351850'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5163006370552729439.post-6942309391714537801</id><published>2009-11-26T16:31:00.002Z</published><updated>2009-11-26T16:36:21.697Z</updated><title type='text'>Session Reliability Limit of 150 users per server</title><content type='html'>&lt;span id="SPELLING_ERROR_0" class="blsp-spelling-error"&gt;XenApp&lt;/span&gt; has a limitation of 150 sessions per server when session &lt;span id="SPELLING_ERROR_1" class="blsp-spelling-corrected"&gt;reliability&lt;/span&gt; is enabled.&lt;br /&gt;This is applicable on &lt;span id="SPELLING_ERROR_2" class="blsp-spelling-error"&gt;XenApp&lt;/span&gt; 4.5 (32 and 64 Bit) and &lt;span id="SPELLING_ERROR_3" class="blsp-spelling-error"&gt;XenApp&lt;/span&gt; 5.0 (32 Bit)&lt;br /&gt;&lt;br /&gt;This default maximum can be &lt;span id="SPELLING_ERROR_4" class="blsp-spelling-corrected"&gt;overridden&lt;/span&gt; with the following registry key&lt;br /&gt;&lt;br /&gt;&lt;span id="SPELLING_ERROR_5" class="blsp-spelling-error"&gt;HKLM&lt;/span&gt;\Software\&lt;span id="SPELLING_ERROR_6" class="blsp-spelling-error"&gt;Citrix&lt;/span&gt;\&lt;span id="SPELLING_ERROR_7" class="blsp-spelling-error"&gt;XTEConfig&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span id="SPELLING_ERROR_8" class="blsp-spelling-error"&gt;Add MaxThreads&lt;/span&gt; (REG_DWORD) with the increased value&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5163006370552729439-6942309391714537801?l=www.thinworld.net%2Fblog' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/6942309391714537801/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.thinworld.net/blog/2009/11/session-reliability-limit-of-150-users.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/6942309391714537801'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5163006370552729439/posts/default/6942309391714537801'/><link rel='alternate' type='text/html' href='http://www.thinworld.net/blog/2009/11/session-reliability-limit-of-150-users.html' title='Session Reliability Limit of 150 users per server'/><author><name>Tomo</name><uri>http://www.blogger.com/profile/11900356308529850014</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='06250051572819351850'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry></feed>