build/funcinstall.wxs (71 lines of code) (raw):

<?xml version='1.0' encoding='windows-1252'?> <?define Manufacturer='Microsoft'?> <?define ProductName='Azure Functions Core Tools'?> <?if $(var.Platform)=x64?> <?define UpgradeCodeGuid='E9F5190E-0E1F-49C0-BAF5-3D47FE5837B9'?> <?define PathGuid='E7D05676-5209-45E2-99DB-F4B20CF3D89D'?> <?define ProgramMenuDirGuid='09195356-949C-4CEF-9C2C-84EA559E5C19'?> <?define PlatformProgramFilesFolder='ProgramFiles64Folder'?> <?else?> <?define UpgradeCodeGuid='31C010A9-2414-4DB7-BFEA-A6F1D085382E'?> <?define PathGuid='35765F38-08D4-4E00-A006-CD71240AD39F'?> <?define ProgramMenuDirGuid='46CAA18B-4C44-4954-8D99-C681CD1F301D'?> <?define PlatformProgramFilesFolder='ProgramFilesFolder'?> <?endif?> <Wix xmlns='http://schemas.microsoft.com/wix/2006/wi'> <!-- Product, Package and Upgrade Information --> <Product Id='*' Name='$(var.ProductName) - $(var.ProductVersion) ($(var.Platform))' UpgradeCode='$(var.UpgradeCodeGuid)' Language='1033' Codepage='1252' Version='$(var.ProductVersion)' Manufacturer='$(var.Manufacturer)'> <Package Id='*' Keywords='Azure, Functions, Core Tools, Installer' Description='$(var.ProductName) $(var.ProductVersion) $(var.Platform) Installer' Manufacturer='$(var.Manufacturer)' Comments='Copyright (c) .NET Foundation. All rights reserved. Licensed under the MIT License.' InstallerVersion='300' Compressed='yes' Languages='1033' SummaryCodepage='1252' /> <MajorUpgrade AllowDowngrades='yes' Schedule='afterInstallInitialize' /> <Media Id='1' Cabinet='funchost.cab' EmbedCab='yes' /> <!-- Directory Structure and Feature Definition --> <Directory Id='TARGETDIR' Name='SourceDir'> <Directory Id='$(var.PlatformProgramFilesFolder)' Name='PFiles'> <Directory Id='$(var.Manufacturer)' Name='$(var.Manufacturer)'> <Directory Id='INSTALLDIR' Name='$(var.ProductName)'> <!-- FuncHost componentgroup in fragment --> <Component Id='Path' Guid='$(var.PathGuid)' KeyPath='yes'> <Environment Id='UpdatePath' Name='PATH' Value='[INSTALLDIR]' Permanent='no' Part='last' Action='set' System='yes' /> </Component> </Directory> </Directory> </Directory> <Directory Id='ProgramMenuFolder' Name='Programs'> <Directory Id='ProgramMenuDir' Name='$(var.ProductName)'> <Component Id='ProgramMenuDir' Guid='$(var.ProgramMenuDirGuid)'> <RemoveFolder Id='ProgramMenuDir' On='uninstall' /> <RegistryValue Root='HKCU' Key='Software\[Manufacturer]\[ProductName]' Type='string' Value='' KeyPath='yes' /> </Component> </Directory> </Directory> </Directory> <Feature Id='Complete' Level='1' Title='$(var.ProductName)' Description='Placeholder description' Display='expand'> <ComponentGroupRef Id='FuncHost' /> <ComponentRef Id='ProgramMenuDir' /> <ComponentRef Id='Path' /> </Feature> <!-- UI --> <UIRef Id='WixUI_InstallDir' /> <UIRef Id='WixUI_ErrorProgressText' /> <Property Id='WIXUI_INSTALLDIR' Value='INSTALLDIR' /> <Icon Id='icon.ico' SourceFile='icon.ico' /> <Property Id='ARPPRODUCTICON' Value='icon.ico' /> <WixVariable Id='WixUILicenseRtf' Value='license.rtf' /> <WixVariable Id='WixUIBannerBmp' Value='installbanner.bmp' /> <WixVariable Id='WixUIDialogBmp' Value='installdialog.bmp' /> </Product> </Wix>