Answered by:
HPC 2012 R2 Redistributable 'package' for visual studio 2015

Question
-
Hi,
I am trying to create a HPC client utilities redistributable as a 'pre-requistie' for one of my applications in VS 2015.
Anyone has a package readily available for this redistributable to plug into VS2015 click once wizard?
I know I can create a new one - But I am sort of lost while creating a 'product manifest' as described here -- - https://msdn.microsoft.com/en-us/library/ee335701.aspx
Essentially things like url for webbootstrapper , install checks, install conditions and exit codes are something I am not fully aware of as far as HPC 2012 R2 client redist package is concerned.
edit1: just realized that orca tool from microsoft may be able to help me with the product guid etc of the client utils msi, but still wonder if there is a package that some one already implemented it
edit2: even with orca, i could not figure out what the command line parameters would be to invoke client utils msi in an 'unattend' mode.
- Edited by SRIRAM R Friday, July 8, 2016 5:37 PM
Thursday, July 7, 2016 8:48 PM
Answers
-
Thanks. I was able to add hpc client utils to my clickonce windows forms app.
I am using Visual studio 2015 - so here are the steps if someone else needs it:
1) create a folder under C:\Program Files (x86)\Microsoft Visual Studio 14.0\SDK\Bootstrapper\Packages and call it "HpcClient_x64" (any name will do)
2) Under that folder,
a) create a sub folder called 'en'
b) create an empty file called "product.xml"
c) copy hpcclient_x64.msi file to this folder (download it from Microsoft, if needed)
3) Inside the 'en' folder created in 2 (a) above, create an empty file called "package.xml"
4) so the structure would be:
C:\Program Files (x86)\Microsoft Visual Studio 14.0\SDK\Bootstrapper\Packages\HPCClient_x64
+ en
+ package.xml
+ hpcclient_x64.msi
+ product.xml
5) paste the following contents to package.xml under en folder and save that file:
<?xml version="1.0" encoding="utf-8" ?> <Package xmlns="http://schemas.microsoft.com/developer/2004/01/bootstrapper" Name="DisplayName" Culture="Culture" > <!-- Defines a localizable string table for error messages--> <Strings> <String Name="DisplayName">HPC Client Utilities (x64)</String> <String Name="Culture">en</String> <String Name="AdminRequired">You do not have the permissions required to install HPC Client Utilities (x64). Please contact your administrator.</String> <String Name="InvalidOS">Installation of HPC Client Utilities (x64) is supported only on x64 machines.</String> <String Name="GeneralFailure">A failure occurred attempting to install HPC Client Utilities (x64).</String> <String Name="HpcClientRedistMsi">https://download.microsoft.com/download/4/B/6/4B66855F-0536-492A-9B1E-5DC6230E27C4/HpcClient_x64.Msi</String> </Strings> </Package>
6) paste the following contents to product.xml and save that file:
<?xml version="1.0" encoding="utf-8" ?> <Product xmlns="http://schemas.microsoft.com/developer/2004/01/bootstrapper" ProductCode="HpcClient.Utilities.x64"> <!-- Defines list of files to be copied on build --> <PackageFiles CopyAllPackageFiles="false"> <PackageFile Name="HpcClient_x64.Msi" HomeSite="HpcClientRedistMsi" /> </PackageFiles> <InstallChecks> <MsiProductCheck Property="IsMsiInstalled" Product="{63235828-843B-49E0-93A8-A0571EB6169A}"/> </InstallChecks> <!-- Defines how to invoke the setup for the HPC Client redist --> <Commands> <Command PackageFile="HpcClient_x64.Msi" Arguments=''> <!-- These checks determine whether the package is to be installed --> <InstallConditions> <BypassIf Property="IsMsiInstalled" Compare="ValueGreaterThanOrEqualTo" Value="0"/> <!-- Block install if user does not have admin privileges --> <FailIf Property="AdminUser" Compare="ValueEqualTo" Value="false" String="AdminRequired"/> <!-- Block install on any platform other than x64 --> <FailIf Property="ProcessorArchitecture" Compare="ValueNotEqualTo" Value="AMD64" String="InvalidOS"/> <!-- Block install on Vista or below --> <FailIf Property="VersionNT" Compare="VersionLessThan" Value="6.00" String="InvalidPlatformWinNT"/> </InstallConditions> <ExitCodes> <ExitCode Value="0" Result="Success"/> <ExitCode Value="3010" Result="SuccessReboot"/> <DefaultExitCode Result="Fail" FormatMessageFromSystem="true" String="GeneralFailure" /> </ExitCodes> </Command> </Commands> </Product>
7) restart visual studio, open the project properties -> publish tab -> prerequisites and it will be there!!
- Marked as answer by SRIRAM R Wednesday, July 13, 2016 3:32 PM
Wednesday, July 13, 2016 3:31 PM
All replies
-
Hi Sriram,
Sorry we don't have a manifest in place, but i can answer you two questions:
1. Product Guid for HpcClient_x86.msi is 1BF24E11-D39A-41E7-9551-AD1DBE0FE18E, and that for HpcClient_x64.msi is 63235828-843B-49E0-93A8-A0571EB6169A
2. The unattend installation is to add a "/qn" as a msioption argument (see https://technet.microsoft.com/en-sg/library/cc759262(v=ws.10).aspx). So I suppose the below command shall work.
<Command PackageFile="HpcClient_x64.msi" Arguments="/qn">
- Edited by Sunbin Zhu Monday, July 11, 2016 5:13 AM
Monday, July 11, 2016 5:13 AM -
Thanks. I was able to add hpc client utils to my clickonce windows forms app.
I am using Visual studio 2015 - so here are the steps if someone else needs it:
1) create a folder under C:\Program Files (x86)\Microsoft Visual Studio 14.0\SDK\Bootstrapper\Packages and call it "HpcClient_x64" (any name will do)
2) Under that folder,
a) create a sub folder called 'en'
b) create an empty file called "product.xml"
c) copy hpcclient_x64.msi file to this folder (download it from Microsoft, if needed)
3) Inside the 'en' folder created in 2 (a) above, create an empty file called "package.xml"
4) so the structure would be:
C:\Program Files (x86)\Microsoft Visual Studio 14.0\SDK\Bootstrapper\Packages\HPCClient_x64
+ en
+ package.xml
+ hpcclient_x64.msi
+ product.xml
5) paste the following contents to package.xml under en folder and save that file:
<?xml version="1.0" encoding="utf-8" ?> <Package xmlns="http://schemas.microsoft.com/developer/2004/01/bootstrapper" Name="DisplayName" Culture="Culture" > <!-- Defines a localizable string table for error messages--> <Strings> <String Name="DisplayName">HPC Client Utilities (x64)</String> <String Name="Culture">en</String> <String Name="AdminRequired">You do not have the permissions required to install HPC Client Utilities (x64). Please contact your administrator.</String> <String Name="InvalidOS">Installation of HPC Client Utilities (x64) is supported only on x64 machines.</String> <String Name="GeneralFailure">A failure occurred attempting to install HPC Client Utilities (x64).</String> <String Name="HpcClientRedistMsi">https://download.microsoft.com/download/4/B/6/4B66855F-0536-492A-9B1E-5DC6230E27C4/HpcClient_x64.Msi</String> </Strings> </Package>
6) paste the following contents to product.xml and save that file:
<?xml version="1.0" encoding="utf-8" ?> <Product xmlns="http://schemas.microsoft.com/developer/2004/01/bootstrapper" ProductCode="HpcClient.Utilities.x64"> <!-- Defines list of files to be copied on build --> <PackageFiles CopyAllPackageFiles="false"> <PackageFile Name="HpcClient_x64.Msi" HomeSite="HpcClientRedistMsi" /> </PackageFiles> <InstallChecks> <MsiProductCheck Property="IsMsiInstalled" Product="{63235828-843B-49E0-93A8-A0571EB6169A}"/> </InstallChecks> <!-- Defines how to invoke the setup for the HPC Client redist --> <Commands> <Command PackageFile="HpcClient_x64.Msi" Arguments=''> <!-- These checks determine whether the package is to be installed --> <InstallConditions> <BypassIf Property="IsMsiInstalled" Compare="ValueGreaterThanOrEqualTo" Value="0"/> <!-- Block install if user does not have admin privileges --> <FailIf Property="AdminUser" Compare="ValueEqualTo" Value="false" String="AdminRequired"/> <!-- Block install on any platform other than x64 --> <FailIf Property="ProcessorArchitecture" Compare="ValueNotEqualTo" Value="AMD64" String="InvalidOS"/> <!-- Block install on Vista or below --> <FailIf Property="VersionNT" Compare="VersionLessThan" Value="6.00" String="InvalidPlatformWinNT"/> </InstallConditions> <ExitCodes> <ExitCode Value="0" Result="Success"/> <ExitCode Value="3010" Result="SuccessReboot"/> <DefaultExitCode Result="Fail" FormatMessageFromSystem="true" String="GeneralFailure" /> </ExitCodes> </Command> </Commands> </Product>
7) restart visual studio, open the project properties -> publish tab -> prerequisites and it will be there!!
- Marked as answer by SRIRAM R Wednesday, July 13, 2016 3:32 PM
Wednesday, July 13, 2016 3:31 PM -
Thanks for sharing!Monday, July 18, 2016 5:25 AM