{"id":442,"date":"2009-11-29T01:56:33","date_gmt":"2009-11-28T17:56:33","guid":{"rendered":"http:\/\/www.jhouseconsulting.com\/?p=442"},"modified":"2010-10-04T02:36:57","modified_gmt":"2010-10-03T18:36:57","slug":"deployment-script-for-the-repair-clipboard-chain-utility","status":"publish","type":"post","link":"https:\/\/www.jhouseconsulting.com\/jhouseconsulting\/2009\/11\/29\/deployment-script-for-the-repair-clipboard-chain-utility-442","title":{"rendered":"Deployment Script for the Repair Clipboard Chain utility"},"content":{"rendered":"<p>Here is a deployment script for the Citrix Repair Clipboard Chain (RepairCBDChain.exe) utility as per Citrix KB article <a href=\"http:\/\/support.citrix.com\/article\/CTX106226\" target=\"_blank\">CTX106226<\/a>.<\/p>\n<p>This utility does not have a nice default icon, so I have used one that looks like this: <a href=\"https:\/\/www.jhouseconsulting.com\/jhouseconsulting\/wp-content\/uploads\/2009\/11\/clipboard.png\"><img decoding=\"async\" class=\"alignnone size-full wp-image-617\" title=\"clipboard\" src=\"https:\/\/www.jhouseconsulting.com\/jhouseconsulting\/wp-content\/uploads\/2009\/11\/clipboard.png\" alt=\"\" width=\"16\" height=\"16\" \/><\/a><\/p>\n<p>I have zipped up the actual ico file here: <a href=\"https:\/\/www.jhouseconsulting.com\/jhouseconsulting\/wp-content\/uploads\/2009\/11\/clipboard.zip\">clipboard<\/a><\/p>\n<p>Enjoy!<!--more--><\/p>\n<p><dirtycode:InstallRepairClipboardChain><br \/>\n&#8216; Installation script for the Repair Clipboard Chain utility as per Citrix KB article CTX106226<br \/>\n&#8216;<br \/>\n&#8216; Notes:<br \/>\n&#8216; 1) Even though this a a 32-bit application&#8230;<br \/>\n&#8216;    i) It will still run 100% correctly in a 64-bit environment.<br \/>\n&#8216;    ii) In a 64-bit environment we deploy it to the &#8220;%ProgramFiles%&#8221;<br \/>\n&#8216;        location and not the &#8220;%ProgramFiles(x86)%&#8221; location. This provides<br \/>\n&#8216;        a single location for the published application regardless of the<br \/>\n&#8216;        system architecture type.<br \/>\n&#8216;<br \/>\n&#8216; Revision 1.0<br \/>\n&#8216; Written by Jeremy@jhouseconsulting.com on 10th November 2009.<\/p>\n<p>Option Explicit<\/p>\n<p>Dim objfso, objFolder, wshShell, oShellLink, strAUPrograms, strAUDesktop<br \/>\nDim strProgramFiles, strScriptPath, blnStartMenuShortcut, blnDesktopShortcut<br \/>\nDim strStartMenuSubFolder, strStartMenuFolder<\/p>\n<p>blnStartMenuShortcut = True<br \/>\nblnDesktopShortcut = False<br \/>\nstrStartMenuSubFolder = &#8220;User Self-Help Tools&#8221;<\/p>\n<p>set WshShell = WScript.CreateObject(&#8220;WScript.Shell&#8221;)<br \/>\nset objfso = CreateObject(&#8220;Scripting.FileSystemObject&#8221;)<\/p>\n<p>strProgramFiles = WshShell.ExpandEnvironmentStrings(&#8220;%ProgramFiles%&#8221;)<br \/>\nstrAUPrograms = WshShell.SpecialFolders(&#8220;AllUsersPrograms&#8221;)<br \/>\nstrAUDesktop = WshShell.SpecialFolders(&#8220;AllUsersDesktop&#8221;)<br \/>\nstrScriptPath = Left(WScript.ScriptFullName, InstrRev(WScript.ScriptFullName, &#8220;\\&#8221;))<\/p>\n<p>If objFSO.FileExists(strScriptPath &#038; &#8220;RepairCBDChain.exe&#8221;) AND objFSO.FileExists(strScriptPath &#038; &#8220;clipboard.ico&#8221;) Then<br \/>\n  If NOT objFSO.FolderExists(strProgramFiles &#038; &#8220;\\Citrix&#8221;) Then<br \/>\n    Set objFolder = objFSO.CreateFolder(strProgramFiles &#038; &#8220;\\Citrix&#8221;)<br \/>\n  End If<br \/>\n  objFSO.CopyFile strScriptPath &#038; &#8220;RepairCBDChain.exe&#8221;, strProgramFiles &#038; &#8220;\\Citrix\\&#8221;, True<br \/>\n  objFSO.CopyFile strScriptPath &#038; &#8220;clipboard.ico&#8221;, strProgramFiles &#038; &#8220;\\Citrix\\&#8221;, True<br \/>\n  If blnStartMenuShortcut Then<br \/>\n    If strStartMenuSubFolder <> &#8220;&#8221; Then<br \/>\n      strStartMenuFolder = strAUPrograms &#038; &#8220;\\&#8221; &#038; strStartMenuSubFolder<br \/>\n      If NOT objFSO.FolderExists(strAUPrograms &#038; &#8220;\\&#8221; &#038; strStartMenuSubFolder) Then<br \/>\n        Set objFolder = objFSO.CreateFolder(strAUPrograms &#038; &#8220;\\&#8221; &#038; strStartMenuSubFolder)<br \/>\n      End If<br \/>\n    Else<br \/>\n      strStartMenuFolder = strAUPrograms<br \/>\n    End If<br \/>\n    Set oShellLink = WshShell.CreateShortcut(strStartMenuFolder &#038; &#8220;\\Repair Clipboard Chain.lnk&#8221;)<br \/>\n    oShellLink.TargetPath = chr(34) &#038; strProgramFiles &#038; &#8220;\\Citrix\\RepairCBDChain.exe&#8221; &#038; chr(34)<br \/>\n    oShellLink.WorkingDirectory= strProgramFiles &#038; &#8220;\\Citrix&#8221;<br \/>\n    oShellLink.IconLocation = strProgramFiles &#038; &#8220;\\Citrix\\clipboard.ico&#8221; &#038; &#8220;,0&#8221;<br \/>\n    oShellLink.Save<br \/>\n  End If<br \/>\n  If blnDesktopShortcut Then<br \/>\n    Set oShellLink = WshShell.CreateShortcut(strAUDesktop &#038; &#8220;\\Repair Clipboard Chain.lnk&#8221;)<br \/>\n    oShellLink.TargetPath = chr(34) &#038; strProgramFiles &#038; &#8220;\\Citrix\\RepairCBDChain.exe&#8221; &#038; chr(34)<br \/>\n    oShellLink.WorkingDirectory= strProgramFiles &#038; &#8220;\\Citrix&#8221;<br \/>\n    oShellLink.IconLocation = strProgramFiles &#038; &#8220;\\Citrix\\clipboard.ico&#8221; &#038; &#8220;,0&#8221;<br \/>\n    oShellLink.Save<br \/>\n  End If<br \/>\nEnd If<\/p>\n<p>Set WshShell = Nothing<br \/>\nSet objfso = Nothing<br \/>\nSet objFolder = Nothing<br \/>\nSet oShellLink = Nothing<\/p>\n<p>WScript.Quit(0)<br \/>\n<\/dirtycode><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Here is a deployment script for the Citrix Repair Clipboard Chain (RepairCBDChain.exe) utility as per Citrix KB article CTX106226. This utility does not have a nice default icon, so I have used one that looks like this: I have zipped up the actual ico file here: clipboard Enjoy!<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ngg_post_thumbnail":0,"footnotes":""},"categories":[5],"tags":[169,168],"class_list":["post-442","post","type-post","status-publish","format-standard","hentry","category-scripting","tag-ica","tag-repair-clipboard-chain"],"aioseo_notices":[],"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/www.jhouseconsulting.com\/jhouseconsulting\/wp-json\/wp\/v2\/posts\/442","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.jhouseconsulting.com\/jhouseconsulting\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.jhouseconsulting.com\/jhouseconsulting\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.jhouseconsulting.com\/jhouseconsulting\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.jhouseconsulting.com\/jhouseconsulting\/wp-json\/wp\/v2\/comments?post=442"}],"version-history":[{"count":10,"href":"https:\/\/www.jhouseconsulting.com\/jhouseconsulting\/wp-json\/wp\/v2\/posts\/442\/revisions"}],"predecessor-version":[{"id":621,"href":"https:\/\/www.jhouseconsulting.com\/jhouseconsulting\/wp-json\/wp\/v2\/posts\/442\/revisions\/621"}],"wp:attachment":[{"href":"https:\/\/www.jhouseconsulting.com\/jhouseconsulting\/wp-json\/wp\/v2\/media?parent=442"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.jhouseconsulting.com\/jhouseconsulting\/wp-json\/wp\/v2\/categories?post=442"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.jhouseconsulting.com\/jhouseconsulting\/wp-json\/wp\/v2\/tags?post=442"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}