Skip to content

Instantly share code, notes, and snippets.

@dinhngtu
Last active August 30, 2022 20:12
Show Gist options
  • Save dinhngtu/2be7222068241f6b0801e448dd8c442c to your computer and use it in GitHub Desktop.
Save dinhngtu/2be7222068241f6b0801e448dd8c442c to your computer and use it in GitHub Desktop.
NanaZip WiX setup
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Product
Id="*"
Name="NanaZip"
Language="!(bind.fileLanguage.NanaZip.exe)"
Version="!(bind.fileVersion.NanaZip.exe)"
Manufacturer="Kenji Mouri"
UpgradeCode="951cc21a-fbaa-44b1-82e2-c4f8eb57af02">
<Package InstallerVersion="200" Compressed="yes" InstallScope="perMachine" />
<MajorUpgrade DowngradeErrorMessage="A newer version of [ProductName] is already installed." />
<MediaTemplate EmbedCab="yes" />
<Feature Id="ProductFeature" Title="NanaZip" AllowAdvertise="no" Absent="disallow">
<ComponentGroupRef Id="ProductComponents" />
<ComponentGroupRef Id="SfxComponents" />
</Feature>
<Feature Id="ShellExtensionFeature" Title="NanaZip Shell Extension" AllowAdvertise="no">
<ComponentGroupRef Id="ShellExtensionComponents" />
</Feature>
<UIRef Id="WixUI_FeatureTree" />
<Property Id="ARPPRODUCTICON" Value="NanaZip.ico" />
</Product>
<Fragment>
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="ProgramFiles64Folder">
<Directory Id="INSTALLFOLDER" Name="NanaZip" />
</Directory>
</Directory>
</Fragment>
<Fragment>
<DirectoryRef Id="TARGETDIR">
<Directory Id="ProgramMenuFolder" />
</DirectoryRef>
</Fragment>
<Fragment>
<Icon Id="NanaZip.ico" SourceFile="NanaZip.ico" />
</Fragment>
<Fragment>
<ComponentGroup Id="ProductComponents" Directory="INSTALLFOLDER" Source="E:\code\NanaZip\Output\Binaries\Release\NanaZipPackage\x64">
<Component Win64="yes">
<File Name="NanaZip.exe" />
<Shortcut Id="NanaZip" Directory="ProgramMenuFolder" Name="NanaZip" WorkingDirectory="INSTALLFOLDER" Advertise="yes" Icon="NanaZip.ico" />
</Component>
<Component Win64="yes">
<File Name="NanaZipC.exe" />
</Component>
<Component Win64="yes">
<File Name="NanaZipCore.dll" />
</Component>
<Component Win64="yes">
<File Name="NanaZipG.exe" />
</Component>
<Component Win64="yes">
<File Name="resources.pri" DefaultLanguage="!(bind.fileLanguage.NanaZip.exe)" DefaultVersion="!(bind.fileVersion.NanaZip.exe)" />
</Component>
</ComponentGroup>
</Fragment>
<Fragment>
<ComponentGroup Id="SfxComponents" Directory="INSTALLFOLDER" Source="E:\code\NanaZip\Output\Binaries\Release\NanaZipPackage\x64">
<Component Win64="yes">
<File Name="NanaZipConsole.sfx" />
</Component>
<Component Win64="yes">
<File Name="NanaZipWindows.sfx" />
</Component>
</ComponentGroup>
</Fragment>
<Fragment>
<ComponentGroup Id="ShellExtensionComponents" Directory="INSTALLFOLDER" Source="E:\code\NanaZip\Output\Binaries\Release\NanaZipPackage\x64">
<Component Win64="yes">
<File Name="NanaZipShellExtension.dll">
<Class Id="469D94E9-6AF4-4395-B396-99B1308F8CE5" Context="InprocServer32" ThreadingModel="apartment" />
</File>
</Component>
<Component Win64="yes">
<RegistryValue Root="HKCR" Key="*\Shell\NanaZip" Name="ExplorerCommandHandler" Type="string" Value="{469D94E9-6AF4-4395-B396-99B1308F8CE5}" />
</Component>
<Component Win64="yes">
<RegistryValue Root="HKCR" Key="Directory\Shell\NanaZip" Name="ExplorerCommandHandler" Type="string" Value="{469D94E9-6AF4-4395-B396-99B1308F8CE5}" />
</Component>
</ComponentGroup>
</Fragment>
</Wix>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment