NickIT

Höchste Qualität
In Budget
In Time
Das ist unsere Visitenkarte!

Startseite > Infos > NITCtxPatcher Documentation

Documentation NITCtxPatcher

NITCtxPatcher is a Patchmanager for Citrix XenDesktop 7.6.

Search for patches on the Citrix website is a lot of work. 10 sites with 10 patches on every site only for XenDesktop 7.6. Therefore, I have decided to build a patching tool and patchmanager for Citrix XenApp and XenDesktop 7.x. We created this application to download all hotfixes and LIMITED hotfixes. This is the first Release with all features.

This tool can save a lot of work. Maybe even a few days in the year for an administrator and it is a real Timesaver

In my own behalf: It is 30 years ago that I learned a little bit English. Please, ignores the mistakes or if you like, send me a corrections, I rework with pleasure this document.


Features in Version 1.0

  • Fast select and download Patches for XenApp and XenDesktop 7.1 and higher
  • Fast select and download LIMITED Patches for XenApp/Desktop 7.1 and higher with one click
  • Automatic detect superseded patches
  • Automatic download LIMITED Patches
  • Generate silent installation scripts for your patches
  • Proxy support
  • Support for an automatic Mycitrix login
  • Html Reports for you downloaded patches
  • Unzip Hotfix archives (for example the DDC and the Citrix Studio)
  • Run custom Scripts after the download
  • Command line support
  • Full silent run of the tool

Version:

1.0

Status:

Release 08/2015

Andreas Nick

2015


Table of content

1.Install NitCtxPatcher for XenDesktop 7.x

1.1Installation requirements

1.2Check the Signature

1.3Install the MSI

1.4Silent installation

2.Search and download Patches

2.1Download the patches

3.Create a Report

4.Proxy and account configuration

5.Settings for download

6.Common settings

7.Run own scripts

8.Configuration file

8.1Save and Load a configuration

9.Commandline

9.1Create an automatic silent installation

9.2Patch example

10.Appendix

10.1Version history

10.2NITCtxPatcher License agreement

11.Contact

11.1Support

11.2Enterprise support


1. Install NitCtxPatcher for XenDesktop 7.x

The installation sources and this documentation can be downloaded on the web page

www.software-virtualisierung.de

http://www.software-virtualisierung.de/nitctxpatcher.html

Image 1 Download a version

Image 2 Licence Agreement

1.1 Installation requirements

• Windows 7 (32 /64 bit) / Server 2008 R2 or Higher

• .NET Framework 4.0 http://www.microsoft.com/en-us/download/details.aspx?id=17718

• Powershell 3.0 installed http://www.microsoft.com/en-us/download/details.aspx?id=34595


1.2 Check the Signature

First you can check the signature of the Installer. NITCtxPatcher is a signed MSI and also the exe file in the Installer. To check the signature press with the right mouse button on the MSI and select properties.

Image 3 Show signature details

Image 4 Digital signature Andreas Nick


1.3 Install the MSI

  • Start the Installer NITCtxPatcher1.0.0.msi with a double-click

Image 5 NITCtxPatcher Installation dialog

  • Click Install

1.4 Silent installation

The following command launches a silent installation for the NITCtxPatcher:

Msiexec.exe /I NITCtxPatcher1.0.0.msi /qb

The installer is for a 32 Bit Application and the default Path is “C:\Program Files (x86)\NITCtxPatcher”

You can change the installation with the msivariable “APPLICATIONROOTDIRECTORY “ to your own location:

Msiexec.exe /I NITCtxPatcher1.0.0.msi APPLICATIONROOTDIRECTORY=<YOURPATH> /qb

For example:

Msiexec.exe /I NITCtxPatcher1.0.0.msi APPLICATIONROOTDIRECTORY=”C:\MyApplicationfolder” /qb

2. Search and download Patches

First searches for a Hotfix

  • Start the application over the desktop or start menu shortcut
  • Select your filter options
  • Klick the “Search” button

Image 6 NITCtxPatcher main window

You can select any combination for the filter and download all together.

  • IMPORTANT: 32/64 Bit –select one both, if you like
  • “Citrix GPM” Group Policy Management Console
  • “DStudio” Patches for the Desktop Studio
  • “VDA TS” VDA Core Services for Terminalserver
  • “VDA WS” VDA Core Services for Desktops
  • “UPS Server/Client” for the Universal Print Server
  • “DDC” for Delivery Controller patches
  • “POTH” for the Citrix PowerShell Module
  • “MISA” Machine Identity Service Agent
  • “Director” Hotfixes for the Citrix Director
  • “Other” all other patches. Maybe later with a own checkbox (please mail me your suggestion’s)

if no checkbox is selected, the tool shows all patches

2.1 Download the patches

The download launches after the pressure the "start download" button

Image 7 Patch download

After end of the download äffnet a window with the clipboard path. This is by default

“%TEMP %\NitCtxPatches \<XA/XDVersion>”

The path can be changed in the configuration settings.

In the log file “NITCtxPatch.log” are found information’s about whether everything has functioned perfectly.

3. Create a Report

Anew since version 0.94 is the possibility for the report production. An abstract is created for all clicked patch. You can see which functions are patched and what was replaced.

Image 8 Create a report

Image 9 Report view

The Button “Full report” create a report for all patches (selected and unselected).

3.1 Tooltip after report creation

The NITCtxPatcher create a new tooltip for every entry in the report view.

Image 10 : Tooltip after report creation

4. Proxy and account configuration

The account settigs administer proxy and mycitrix account. We had big problems with different Proxy to servers. Tord Bergset from Norway has helped very much. I hope, now the problems are removed with all Proxyservern

Image 11 Account and proxy settings

  • Set a MyCitrix account for access to the limited patches. Every password is stored encrypted in the config file.
  • Settings for your proxy server
  • Use the system wide default authentication. Maybe for a Active Directory authentication
  • Proxy username and password

5. Settings for download

Here some general settings are to be found for the Script generator and the automatic download

Image 12 Patch settings

  • “Autoselect Limited” – select automatic all LIMITED Patches for a download. Please, with care are of use and exactly read what the patch makes.
  • “Overwrite existing Patches” – overwrite every time the file in the patch repository
  • “Delete superseded from repository” - if the tool an old, not more to valid ones patch in the repository finds, this is deleted
  • “Download only” - this tool can create a silent installation script after the download. This is activated here
  • “Switch norestart” - The installation script set an no restart entry for every file. Many patches want a restart after the installation. To ignore this can function, however, does not have to go.

The generated script are in everybody fall exactly to test. We test no patches and particularly none limited patches.

Image 13 Patch and silent folder

Every Zip archive is automatically unpacked and especially integrated in silent script. Here at the example of Hotfix 2 for the Citrix DDC

Image 14 Silent script location

@echo off

@echo ##############################################################

@echo # Silent Patch CMD #

@echo # Generated with NITCtxPatcher #

@echo # A.Nick http://www.software-virtualisierung.de #

@echo ##############################################################

@echo.

@echo 1. Do not start this script in an ICA or RDP session

@echo 2. you need to carefully test this script

@echo Most Citrix patches require a reboot!

@echo 3. Use this script at your own risk

@echo.

@echo Silent Script for XenDesktop_7.6

@echo.

set hotfixpath=%~dp0

change user /install

@echo -------------------------------------------------------------

@echo Install Hotfix http://support.citrix.com/article/CTX142439

@echo -------------------------------------------------------------

echo start /wait msiexec.exe /i "%hotfixpath%XA_XD_760_Controller_X64_HFs_2\BrokerSrvc760WX64002.msi" /qb /passive /norestart

start /wait msiexec.exe /i "%hotfixpath%XA_XD_760_Controller_X64_HFs_2\BrokerSrvc760WX64002.msi" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

echo start /wait msiexec.exe /i "%hotfixpath%XA_XD_760_Controller_X64_HFs_2\ConfigMgrWOL760WX64002.msi" /qb /passive /norestart

start /wait msiexec.exe /i "%hotfixpath%XA_XD_760_Controller_X64_HFs_2\ConfigMgrWOL760WX64002.msi" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

echo start /wait msiexec.exe /i "%hotfixpath%XA_XD_760_Controller_X64_HFs_2\HostSrvc760WX64002.msi" /qb /passive /norestart

start /wait msiexec.exe /i "%hotfixpath%XA_XD_760_Controller_X64_HFs_2\HostSrvc760WX64002.msi" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

echo start /wait msiexec.exe /i "%hotfixpath%XA_XD_760_Controller_X64_HFs_2\MCSrvc760WX64002.msi" /qb /passive /norestart

start /wait msiexec.exe /i "%hotfixpath%XA_XD_760_Controller_X64_HFs_2\MCSrvc760WX64002.msi" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

echo start /wait msiexec.exe /i "%hotfixpath%XA_XD_760_Controller_X64_HFs_2\MonitorPSSI760WX64002.msi" /qb /passive /norestart

start /wait msiexec.exe /i "%hotfixpath%XA_XD_760_Controller_X64_HFs_2\MonitorPSSI760WX64002.msi" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

6. Common settings

Here are other general settings.

Image 15 General settings

  • Temp repository can change the default location for the patch repository. This setting is also stored in the configuration file.
  • “Copy result” Create a copy of the “selected” patches to a own location. in repository remain all patches. Copy delete the output folder! Give so better here no C:\!
  • “Delete repository after copy” – delete the temp repository with all you patches. Maybe to cleanup every time
  • Run powershell – run an own powershell after the download.

7. Run own scripts

Trond from Xenappblog has written an article to our tool. And here the question about to integrate the whole in the Automation Framework from xenappblog.com.

http://xenappblog.com/2015/automate-citrix-hotfix-installation/

From the commands:

Wouldn’t it be great if the NITCTXPatcher tool would provide a method to automatically download all the hotfixes these folders used by the Automation Framework:

DDC\32

DDC\64

VDA\Desktop\32

VDA\Desktop\64

VDA\Server\32

VDA\Server\64

My solution is to allow own scripts. And I have written an example script. This script is installed with the tool. Please, yours sends me scripts if have ideas for it. With pleasure also own Installation scripts. I will integrate this with and mention your name in the appendix!

All scripts are stored in the application folder C:\Program Files (x86)\NITCtxPatcher\scripts

Image 16 Patch location

This execution of Powershell scripts scripts must be permitted on the system.

Set-executionpolicy –executionpolicy remotesigned

You can place there your own script. This are only examples . Today untested!


Xenappblog framework script example (XenAppBlogCopy.ps1)

<#

.SYNOPSIS

Copy content from the patch download to a XenAppBlog Framework folder after patch download

#>

$Basefolder = "$ENV:TEMP\CtxPatches\XenDesktop_7.6"

#$CopyTo = "\\YOURSERVER\Patches"

$CopyTo = "C:\temp\patches"

function xBlogCopy {

<#

.SYNOPSIS

Create destination folder and copy all patches

.PARAMETER $source

Path to a folder

.PARAMETER $destination

Path to a folder

.EXAMPLE

Get-Something -ParameterA 'One value' -ParameterB 32

#>

param (

[String] $source,

[String] $destination

)

if (Test-Path "$source") {

if (Test-Path "$destination") {

Remove-Item "$destination" -Force

}

New-Item "$destination" -Type directory -Force

copy "$source\*" "$destination\"

}

}

xBlogCopy -source "$Basefolder\VDAWS32Bit" -destination "$CopyTo\VDA\Desktop\32"

xBlogCopy -source "$Basefolder\VDAWS64Bit" -destination "$CopyTo\VDA\Desktop\64"

#.....

xBlogCopy -source "$Basefolder\VDATS64Bit" -destination "$CopyTo\VDA\Server\64"

8. Configuration file

The configuration for a „download action“ is stored in a single xml file. Password settings are encrypted with a secure key in the application. You can save a own config file to another location for „special“ jobs. Download silent VDA Wokstation/Desktop patches for example.

The default configuration file and the last settings are stored here:

%APPDATA%\NITCTXPatcher\ NITCtxPatcherConfig.xml

The patcher save automatic every time you start a download.

<NITCTXPatcher>

<Config>

<Bit32>False</Bit32>

<Bit64>True</Bit64>

<VDAWS>False</VDAWS>

....

<CitrixPassword>76492d1116743f0423413b16050a5345MgB8AE8AQgBqAC8AdABwAHMAZgBIAEEAYgBDAFAAYgBRAGcA.....NgBmADEAMgBhAGUAMgA5AGYANwAzAGIAYwA1AGEAMgA1ADQAZQA2ADkAYgAxADYAZgBiADk...gBkAGQAMwA=</CitrixPassword>

</Config>

</NITCTXPatcher>

8.1 Save and Load a configuration

You can save and load an own configuration file. But for a download and with a "Save" in the menu the file is always saved under the default path. An own configuration can be used only with "Saves as” and with “Load”.

Image 17 File menu

9. Commandline

Version 1.0 has a commandline support. This means, the tool can be executed with a configuration file silent.

Commandline syntax :: NITCTXPatcher.exe -config <CONFIG_XML_FILE>

Full Silent mode :: -silent

Hidden gui :: -nogui

9.1 Create an automatic silent installation

  • Create an own config file. Check all the checkboxes you need. For example VDAWS, 64 bit, Silent Script
  • Save the xml config file over “Save as” on your own location
  • Create a batch or powershell with NITCTXPatcher.exe –config <YOURCONFIGFILE> -silent
  • Schedule your script

NITCtxPatcher can create a silent script for a patch installation. You can schedule the script for your servers.

We will soon publish a service, exactly those surrendered can take over!

9.2 Patch example

Patch installation for XenDesktop 7.6 VDA Workstation 64 Bit

@echo off

@echo ##############################################################

@echo # Silent Patch CMD #

@echo # Generated with NITCtxPatcher #

@echo # A.Nick http://www.software-virtualisierung.de #

@echo ##############################################################

@echo.

@echo 1. Do not start this script in an ICA or RDP session

@echo 2. you need to carefully test this script

@echo Most Citrix patches require a reboot!

@echo 3. Use this script at your own risk

@echo.

@echo Silent Script for XenDesktop_7.6

@echo.

set hotfixpath=%~dp0

change user /install

@echo Install MSP Hotfix ICATS760WX64006.msp - http://support.citrix.com/article/CTX141918

echo start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64006.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64006.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICATS760WX64009.msp - http://support.citrix.com/article/CTX142036

echo start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64009.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64009.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICATS760WX64011.msp - http://support.citrix.com/article/CTX142038

echo start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64011.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64011.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICATS760WX64012.msp - http://support.citrix.com/article/CTX142160

echo start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64012.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64012.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICATS760WX64013.msp - http://support.citrix.com/article/CTX142161

echo start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64013.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64013.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICATS760WX64015.msp - http://support.citrix.com/article/CTX142222

echo start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64015.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64015.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICATS760WX64016.msp - http://support.citrix.com/article/CTX142223

echo start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64016.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64016.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICATS760WX64017.msp - http://support.citrix.com/article/CTX142224

echo start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64017.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64017.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICATS760WX64018.msp - http://support.citrix.com/article/CTX142225

echo start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64018.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64018.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICATS760WX64021.msp - http://support.citrix.com/article/CTX142255

echo start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64021.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64021.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICATS760WX64023.msp - http://support.citrix.com/article/CTX142350

echo start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64023.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64023.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICATS760WX64026.msp - http://support.citrix.com/article/CTX142501

echo start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64026.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64026.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICATS760WX64027.msp - http://support.citrix.com/article/CTX142502

echo start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64027.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64027.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICATS760WX64028.msp - http://support.citrix.com/article/CTX142541

echo start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64028.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64028.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICATS760WX64029.msp - http://support.citrix.com/article/CTX142598

echo start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64029.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64029.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICATS760WX64032.msp - http://support.citrix.com/article/CTX142640

echo start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64032.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64032.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICAWS760WX64006.msp - http://support.citrix.com/article/CTX141921

echo start /wait msiexec.exe /update "%hotfixpath%ICAWS760WX64006.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICAWS760WX64006.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICAWS760WX64008.msp - http://support.citrix.com/article/CTX142051

echo start /wait msiexec.exe /update "%hotfixpath%ICAWS760WX64008.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICAWS760WX64008.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICAWS760WX64011.msp - http://support.citrix.com/article/CTX141690

echo start /wait msiexec.exe /update "%hotfixpath%ICAWS760WX64011.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICAWS760WX64011.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICAWS760WX64012.msp - http://support.citrix.com/article/CTX142151

echo start /wait msiexec.exe /update "%hotfixpath%ICAWS760WX64012.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICAWS760WX64012.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICAWS760WX64014.msp - http://support.citrix.com/article/CTX142157

echo start /wait msiexec.exe /update "%hotfixpath%ICAWS760WX64014.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICAWS760WX64014.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICAWS760WX64018.msp - http://support.citrix.com/article/CTX142243

echo start /wait msiexec.exe /update "%hotfixpath%ICAWS760WX64018.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICAWS760WX64018.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICAWS760WX64023.msp - http://support.citrix.com/article/CTX142409

echo start /wait msiexec.exe /update "%hotfixpath%ICAWS760WX64023.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICAWS760WX64023.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICAWS760WX64024.msp - http://support.citrix.com/article/CTX142411

echo start /wait msiexec.exe /update "%hotfixpath%ICAWS760WX64024.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICAWS760WX64024.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICAWS760WX64025.msp - http://support.citrix.com/article/CTX142420

echo start /wait msiexec.exe /update "%hotfixpath%ICAWS760WX64025.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICAWS760WX64025.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICAWS760WX64026.msp - http://support.citrix.com/article/CTX142642

echo start /wait msiexec.exe /update "%hotfixpath%ICAWS760WX64026.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICAWS760WX64026.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

change user /execute

Patch installation for XenDesktop 7.6 VDA Terminalserver 64 Bit

@echo off

@echo ##############################################################

@echo # Silent Patch CMD #

@echo # Generated with NITCtxPatcher #

@echo # A.Nick http://www.software-virtualisierung.de #

@echo ##############################################################

@echo.

@echo 1. Do not start this script in an ICA or RDP session

@echo 2. you need to carefully test this script

@echo Most Citrix patches require a reboot!

@echo 3. Use this script at your own risk

@echo.

@echo Silent Script for XenDesktop_7.6

@echo.

set hotfixpath=%~dp0

change user /install

@echo Install MSP Hotfix ICATS760WX64006.msp - http://support.citrix.com/article/CTX141918

echo start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64006.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64006.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICATS760WX64009.msp - http://support.citrix.com/article/CTX142036

echo start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64009.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64009.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICATS760WX64011.msp - http://support.citrix.com/article/CTX142038

echo start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64011.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64011.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICATS760WX64012.msp - http://support.citrix.com/article/CTX142160

echo start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64012.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64012.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICATS760WX64013.msp - http://support.citrix.com/article/CTX142161

echo start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64013.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64013.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICATS760WX64015.msp - http://support.citrix.com/article/CTX142222

echo start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64015.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64015.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICATS760WX64016.msp - http://support.citrix.com/article/CTX142223

echo start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64016.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64016.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICATS760WX64017.msp - http://support.citrix.com/article/CTX142224

echo start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64017.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64017.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICATS760WX64018.msp - http://support.citrix.com/article/CTX142225

echo start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64018.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64018.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICATS760WX64021.msp - http://support.citrix.com/article/CTX142255

echo start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64021.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64021.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICATS760WX64023.msp - http://support.citrix.com/article/CTX142350

echo start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64023.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64023.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICATS760WX64026.msp - http://support.citrix.com/article/CTX142501

echo start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64026.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64026.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICATS760WX64027.msp - http://support.citrix.com/article/CTX142502

echo start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64027.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64027.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICATS760WX64028.msp - http://support.citrix.com/article/CTX142541

echo start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64028.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64028.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICATS760WX64029.msp - http://support.citrix.com/article/CTX142598

echo start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64029.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64029.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICATS760WX64032.msp - http://support.citrix.com/article/CTX142640

echo start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64032.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICATS760WX64032.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICAWS760WX64006.msp - http://support.citrix.com/article/CTX141921

echo start /wait msiexec.exe /update "%hotfixpath%ICAWS760WX64006.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICAWS760WX64006.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICAWS760WX64008.msp - http://support.citrix.com/article/CTX142051

echo start /wait msiexec.exe /update "%hotfixpath%ICAWS760WX64008.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICAWS760WX64008.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICAWS760WX64011.msp - http://support.citrix.com/article/CTX141690

echo start /wait msiexec.exe /update "%hotfixpath%ICAWS760WX64011.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICAWS760WX64011.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICAWS760WX64012.msp - http://support.citrix.com/article/CTX142151

echo start /wait msiexec.exe /update "%hotfixpath%ICAWS760WX64012.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICAWS760WX64012.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICAWS760WX64014.msp - http://support.citrix.com/article/CTX142157

echo start /wait msiexec.exe /update "%hotfixpath%ICAWS760WX64014.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICAWS760WX64014.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICAWS760WX64018.msp - http://support.citrix.com/article/CTX142243

echo start /wait msiexec.exe /update "%hotfixpath%ICAWS760WX64018.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICAWS760WX64018.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICAWS760WX64023.msp - http://support.citrix.com/article/CTX142409

echo start /wait msiexec.exe /update "%hotfixpath%ICAWS760WX64023.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICAWS760WX64023.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICAWS760WX64024.msp - http://support.citrix.com/article/CTX142411

echo start /wait msiexec.exe /update "%hotfixpath%ICAWS760WX64024.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICAWS760WX64024.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICAWS760WX64025.msp - http://support.citrix.com/article/CTX142420

echo start /wait msiexec.exe /update "%hotfixpath%ICAWS760WX64025.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICAWS760WX64025.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

@echo Install MSP Hotfix ICAWS760WX64026.msp - http://support.citrix.com/article/CTX142642

echo start /wait msiexec.exe /update "%hotfixpath%ICAWS760WX64026.msp" /qb /passive /norestart

start /wait msiexec.exe /update "%hotfixpath%ICAWS760WX64026.msp" /qb /passive /norestart

if NOT %ERRORLEVEL%==0 @echo Errorlevel: %ERRORLEVEL%

change user /execute

10. Appendix

10.1 Version history

Version

Version date

Changes

0.8.0

2015/05/03 0.8.0

  • First version

0.8.1

2015/05/09 0.8.1

  • Support download of director patches. Director patches have not an x86 or x64 in the patch name. Therefore, we need a lot of extra code here.
  • Delete existing logs and silent scripts
  • “noreboot switch now works properly

0.8.2

2015/05/09 0.8.2

  • Wrong msi switch. /noreboot is now /norestart. I can patch XenApp 7.5 with all Hotfixes and LIMITED Hofixes (silent)

0.9.0

2015/05/17

  • This version allow proxy settings. at least this is still problematic with the Jana Proxy. Generally, it works. Please start with problems "as administrator". I know not every proxy server. If this does not solve the problem, please write about the error in our Support Forum.
  • Some bugs fixed

0.9.1

2015/05/19 0.9.1

  • Small bugs fixed in the dialogs and in the proxy feature

0.9.2

2015/05/25 0.9.2

  • Some GUI changes. The design is now more logical. Thanks for the tip Matthias!

0.9.3

2015/07/13 0.9.3

  • Bugfix for MISA download checkbox
  • New checkbox for XA_XD Powershell Module "Posh"
  • Now able to automatic copy downloaded patches to a own localtion. The source in the temp folder is not deleted

0.9.4

2015/07/13 0.9.4

  • Open Citrix Supportside http://support.citrix.com/arcticle/ctx... on doubleclick

0.9.5

2015/07/28 0.9.5

  • Find any patch again. Citrix changed a lot of keywords
  • Report for the patches
  • Detail tooltip after create a report
  • Unpack ZIP archives from citrix
  • Generate silent install script also for msi files

0.9.6

2015/08/03 0.9.6

  • Download work again. Citrix changed a lot of keywords

1.0.0

2015/08/25 1.0.0

  • Full silent support (commandline)
  • Extended proxy support (thanks to Tord for testing)
  • Functions for repositore cleanup
  • Extended copy funktion
  • Repository directory parameter
  • Automatic script sxecution after the download (maybe for a xenappblog framework copy)


10.2 NITCtxPatcher License agreement

SOFTWARE LICENSE AGREEMENT

http://www.nick-it.de, http://wwww-software-virtualisierung.de

This license statement("License Agreement") constitutes the entire legal agreement between you(either as an individual or a legal entity) ("You") and the Nick Informationstechnik GmbH in Germany for the software product including any accompanying online or printed documentation(the "Software").

BY DOWNLOADING, INSTALLING, COPYING, OR OTHERWISE USING THE SOFTWARE, YOU AGREE TO BE BOUND BY THE TERMS AND CONDITIONS OF THIS LICENSE AGREEMENT.

It is not allowed to provide our software on different websides!

GRANT OF A LICENSE

Upon your registration at our website http://www.software-virtualisierung.de and following the approval of your registration, Nick Informationstechnik hereby grants to you a personal, worldwide, royalty-free, non-assignable and non-exclusive license to use the Software for your internal business needs.

our use shall not include the right to use the Software for external purposes, including but not limited to the provision of any commercial or non - commercial services to third parties or the use for marketing purposes, for instance by placing the Software on your website for downloading purposes or otherwise.

You may not(and You may not permit anyone else to) copy, modify, create a derivative work of, reverse engineer, decompile or otherwise attempt to extract the object code or source code of the Software or any part thereof, unless expressly permitted by Nick Informationstechnik.

SUPPORT

You can get a email support for the Software. We will try to help you

EXCLUSION OF WARRANTIES

The Software is provided "as is" and without any warranties whether express or implied, including, but not limited to the implied warranties and conditions of merchantability, fitness for a particular purpose and non - infringement.You expressly acknowledge and agree that use of the Software is at your own discretion and at your sole risk and that you shall be solely responsible for any damage to your computer or other device or loss of data that results from the download or use of the Software.

LIMITATION OF LIABILITY

In no event shall Nick Informationstechnik be liable for any direct or indirect damages(including, without limitation, damages for loss of turnover, loss of profits, business interruption, loss of data, use or business interruption) arising out of the use of or inability to use the Software, even if we have been advised of the possibility of such damages.

INTELLECTUAL PROPERTY RIGHTS

All rights, title and interest in the Software, and any modifications thereof, shall at all times remain vested in Nick Informationstechnik.This License Agreement does not constitute a transfer to you of any title in or intellectual property rights to the Software, or modifications thereof, or of any copyrights, patents, trademarks or trade names related thereto.

OWNERSHIP

The original and any copies of the Licensed Programs, made by Licensee, including translations, compilations, partial copies, modifications, and updates, are the property of the Nick Informationstechnik GmbH.

APPLICABLE LAW

This License Agreement is governed by and shall be construed in accordance with the laws of Germany.Any dispute arising out or in connection with this License Agreement shall exclusively be submitted to the competent courts in Hannover, Germany.

11. Contact

http://www.software-virtualisierung.de

http://www.nick-it.de

info(at)nick - it.de

11.1 Support

Please use our „Support Forum“. AND only of the registration a licence will assign to you for our tools (licence conditions). Hence, you should own an account.

11.2 Enterprise support

We the Nick Informationstechnik GmbH, has support contracts for 5x8 with a response times of 24 hours on offer and also references in the German DAX. If your enterprise needs a support contract for the NITCtxPatcher. Please send an email to info[at]nick-it.de.

Furthermore it is also possible for the integration in SCCM or other software distribution systems to buy the source codes for an internal use. With pleasure we also accept suitable orders.

Chart
Nick Informationstechnik GmbH * Dribusch 2 * 30539 Hannover