Product.wxs 5.85 KB
Newer Older
Philippe Gorley's avatar
Philippe Gorley committed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
<?xml version="1.0" encoding="UTF-8"?>
<?include Config.wxi?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
    <Product Id="*" Name="$(var.Name)" Language="1033" Version="$(fun.AutoVersion(1.0))" Manufacturer="$(var.Manufacturer)" UpgradeCode="7c45b52b-0390-4fe8-947a-3f13e82dd346">
        <Package InstallerVersion="301" Compressed="yes" InstallScope="perMachine" />

        <MajorUpgrade AllowSameVersionUpgrades="yes" DowngradeErrorMessage="A newer version of [ProductName] is already installed." />
        <MediaTemplate EmbedCab="yes" CompressionLevel="high" />

        <Icon Id="icon.ico" SourceFile="$(var.ReleaseDir)\jami.ico" />
        <Property Id="ARPPRODUCTICON" Value="icon.ico" />
        <Property Id="ARPNOMODIFY" Value="1" />

        <Feature Id="ProductFeature" Title="Main" Level="1" Absent="disallow">
            <ComponentGroupRef Id="ProductComponents" Primary="yes" />
            <ComponentRef Id="ApplicationShortcutDesktop" />
            <ComponentRef Id="ApplicationShortcutStartMenu" />
        </Feature>
        <Feature Id="VCRedist" Title="Visual C++ Runtime" AllowAdvertise="no" Display="hidden" Level="1">
            <MergeRef Id="VCRedist" />
        </Feature>

        <UIRef Id="CustomUI" />
        <WixVariable Id="WixUIBannerBmp" Value="top-banner.bmp" />
        <WixVariable Id="WixUIDialogBmp" Value="main-banner.bmp" />
    </Product>

    <Fragment Id="DirectoryStructure">
        <Directory Id="TARGETDIR" Name="SourceDir">
            <Directory Id="ProgramFiles64Folder">
                <Directory Id="ManufacturerFolder" Name="$(var.Manufacturer)">
                    <Directory Id="INSTALLFOLDER" Name="$(var.Name)" />
                </Directory>
            </Directory>
            <Directory Id="DesktopFolder" Name="Desktop" />
            <Directory Id="ProgramMenuFolder">
                <Directory Id="ApplicationProgramsFolder" />
            </Directory>
        </Directory>
    </Fragment>

    <Fragment Id="Shortcuts">
        <DirectoryRef Id="DesktopFolder">
            <Component Id="ApplicationShortcutDesktop" Guid="*" Win64="yes">
                <Shortcut Id="ApplicationShortcutDesktop" Name="$(var.Name)" Description="Launch $(var.Name)"
                    Target="[#fileMain.exe]" WorkingDirectory="INSTALLFOLDER" />
                <RemoveFolder Id="DesktopFolder" On="uninstall" />
                <RegistryValue Root="HKCU" Key="Software/$(var.Name)" Name="desktop" Type="integer" Value="1" KeyPath="yes" />
            </Component>
        </DirectoryRef>

        <DirectoryRef Id="ApplicationProgramsFolder">
            <Component Id="ApplicationShortcutStartMenu" Guid="*" Win64="yes">
                <Shortcut Id="ApplicationShortcutStartMenu" Name="$(var.Name)" Description="Launch $(var.Name)"
                    Target="[#fileMain.exe]" WorkingDirectory="INSTALLFOLDER" />
                <RemoveFolder Id="StartMenuFolder" On="uninstall" />
                <RegistryValue Root="HKCU" Key="Software/$(var.Name)" Name="startmenu" Type="integer" Value="1" KeyPath="yes" />
            </Component>
        </DirectoryRef>
    </Fragment>

    <Fragment Id="UI">
        <UI Id="CustomUI">
            <UIRef Id="WixUI_Common" />
            <TextStyle Id="WixUI_Font_Normal" FaceName="Tahoma" Size="8" />
            <TextStyle Id="WixUI_Font_Bigger" FaceName="Tahoma" Size="12" />
            <TextStyle Id="WixUI_Font_Title" FaceName="Tahoma" Size="9" Bold="yes" />
            <Property Id="DefaultUIFont" Value="WixUI_Font_Normal" />
            <DialogRef Id="ErrorDlg" />
            <DialogRef Id="FatalError" />
            <DialogRef Id="FilesInUse" />
            <DialogRef Id="MsiRMFilesInUse" />
            <DialogRef Id="PrepareDlg" />
            <DialogRef Id="ProgressDlg" />
            <DialogRef Id="ResumeDlg" />
            <DialogRef Id="UserExit" />
            <DialogRef Id="WelcomeDlg" />
            <DialogRef Id="WelcomeLicenseNoCheckDlg" />

            <Publish Dialog="ExitDialog" Control="Finish" Event="EndDialog" Value="Return" Order="999">1</Publish>
            <Publish Dialog="VerifyReadyDlg" Control="Back" Event="NewDialog" Value="MaintenanceTypeDlg">1</Publish>
            <Publish Dialog="MaintenanceWelcomeDlg" Control="Next" Event="NewDialog" Value="MaintenanceTypeDlg">1</Publish>
            <Publish Dialog="MaintenanceTypeDlg" Control="RepairButton" Event="NewDialog" Value="VerifyReadyDlg">1</Publish>
            <Publish Dialog="MaintenanceTypeDlg" Control="RemoveButton" Event="NewDialog" Value="VerifyReadyDlg">1</Publish>
            <Publish Dialog="MaintenanceTypeDlg" Control="Back" Event="NewDialog" Value="MaintenanceWelcomeDlg">1</Publish>
            <Publish Dialog="WelcomeDlg" Control="Next" Event="NewDialog" Value="VerifyReadyDlg">Installed AND PATCH</Publish>
            <Publish Dialog="VerifyReadyDlg" Control="Back" Event="NewDialog" Value="WelcomeDlg" Order="2">Installed AND PATCH</Publish>
            <Publish Dialog="ExitDialog" Control="Finish" Event="DoAction" Value="LaunchApplication">WIXUI_EXITDIALOGOPTIONALCHECKBOX = 1</Publish>

            <InstallUISequence>
                <Show Dialog="WelcomeDlg" Before="WelcomeLicenseNoCheckDlg">Installed AND PATCH</Show>
                <Show Dialog="WelcomeLicenseNoCheckDlg" Before="ProgressDlg">NOT Installed</Show>
            </InstallUISequence>
        </UI>
        <Property Id="WIXUI_EXITDIALOGOPTIONALCHECKBOXTEXT" Value="Launch $(var.Name)" />
        <Property Id="WixShellExecTarget" Value="[#fileMain.exe]" />
        <CustomAction Id="LaunchApplication" BinaryKey="WixCA" DllEntry="WixShellExec" Impersonate="yes" />
        <WixVariable Id="WixUILicenseRtf" Value="$(var.ReleaseDir)\License.rtf"/>
    </Fragment>

    <Fragment Id="VCRedist">
        <DirectoryRef Id="TARGETDIR">
            <Merge Id="VCRedist" SourceFile="$(env.VCRedistMergeModule)" DiskId="1" Language="0" />
        </DirectoryRef>
    </Fragment>
</Wix>