markus / MarkusAutoUpdate / SetupWix / Product.wxs @ 74b0f4b1
이력 | 보기 | 이력해설 | 다운로드 (9.92 KB)
1 |
<?xml version="1.0" encoding="UTF-8"?> |
---|---|
2 |
|
3 |
<!-- The name of the product --> |
4 |
<?define Name = "Markus Auto Update" ?> |
5 |
<!-- The Description of the product --> |
6 |
<?define Description = "Automatic update when running Markus." ?> |
7 |
<!-- The manufacturer, for setup package publisher and folder info --> |
8 |
<?define Manufacturer = "Doftech (c)" ?> |
9 |
<!-- The version number of this setup package--> |
10 |
<?define Version = "1.0.0" ?> |
11 |
<!-- UpgradeCode must be unique and not changed once the first version of the program is installed. --> |
12 |
<?define UpgradeCode = "{25DA3824-3F14-4040-826B-F8D1783E1288}" ?> |
13 |
<!-- The name of the Cabinet --> |
14 |
<?define CabName = "MarkusUpdate.cab" ?> |
15 |
|
16 |
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" xmlns:utilExt="http://schemas.microsoft.com/wix/UtilExtension" xmlns:netfx="http://schemas.microsoft.com/wix/NetFxExtension"> |
17 |
<!-- Projects Build Path--> |
18 |
<?define NetSparkle.Samples.NetFramework.WPF_TargetDir=$(var.NetSparkle.Samples.NetFramework.WPF.TargetDir)?> |
19 |
<?define NetSparkle_TargetDir=$(var.NetSparkle.Samples.NetFramework.WPF.TargetDir)?> |
20 |
<?define NetSparkle.UI.WPF_TargetDir=$(var.NetSparkle.Samples.NetFramework.WPF.TargetDir)?> |
21 |
<?define IIpc_TargetDir=$(var.NetSparkle.Samples.NetFramework.WPF.TargetDir)?> |
22 |
<?define Kcom_TargetDir=$(var.Kcom.TargetDir)?> |
23 |
<?define MarkusUpdateExtract_Net_TargetDir=$(var.MarkusUpdateExtract_Net.TargetDir)?> |
24 |
<!--<?define NetSparkle_TargetDir=$(var.NetSparkle.UI.WPF.TargetDir)net452\?> |
25 |
<?define NetSparkle.UI.WPF_TargetDir=$(var.NetSparkle.UI.WPF.TargetDir)net452\?> |
26 |
<?define IIpc_TargetDir=$(var.IIpc.TargetDir)?> |
27 |
<?define Kcom_TargetDir=$(var.Kcom.TargetDir)?>--> |
28 |
|
29 |
<Product Id="*" Name="$(var.Name)" Language="1033" Version="$(var.Version)" Manufacturer="$(var.Manufacturer)" UpgradeCode="$(var.UpgradeCode)"> |
30 |
<Package InstallerVersion="200" Compressed="yes" InstallScope="perMachine" Manufacturer="$(var.Manufacturer)" /> |
31 |
<!--<Media Id="1" Cabinet="$(var.CabName)" EmbedCab="yes" />--> |
32 |
<MajorUpgrade DowngradeErrorMessage="A newer version of [ProductName] is already installed." /> |
33 |
<!--Embed Cabinet into single msi file--> |
34 |
<Media Id="1" Cabinet="$(var.CabName)" EmbedCab="yes" /> |
35 |
|
36 |
<!--<Condition Message="This application requires .NET Framework 4.5.2 Please install the .NET Framework then run this installer again."> |
37 |
<![CDATA[Installed OR WIX_IS_NETFRAMEWORK_452_OR_LATER_INSTALLED]]> |
38 |
</Condition>--> |
39 |
<PropertyRef Id="WIX_IS_NETFRAMEWORK_452_OR_LATER_INSTALLED" /> |
40 |
<Condition Message="This application requires .NET Framework 4.5.2 Please install the .NET Framework then run this installer again."> |
41 |
<![CDATA[Installed OR WIX_IS_NETFRAMEWORK_452_OR_LATER_INSTALLED]]> |
42 |
</Condition> |
43 |
<Feature Id="ProductFeature" Title="$(var.Name)" Level="1"> |
44 |
<ComponentGroupRef Id="ProductComponents" /> |
45 |
</Feature> |
46 |
<Feature Id="Complete"> |
47 |
<ComponentRef Id="REG_PROTOCOL_WRITE"/> |
48 |
<ComponentRef Id="REG_WARNONOPEN_WRITE"/> |
49 |
</Feature> |
50 |
</Product> |
51 |
|
52 |
<Fragment> |
53 |
<Directory Id="TARGETDIR" Name="SourceDir"> |
54 |
<Directory Id="ProgramFiles64Folder"> |
55 |
<Directory Id="ROOTDIRECTORY" Name="DOFTECH"> |
56 |
<!-- Create a folder inside Company Name folder with Product Name--> |
57 |
<Directory Id="INSTALLFOLDER" Name="MarkusUpdate"> |
58 |
<Directory Id="EXTRACT_INSTALLFOLDER" Name="MarkusExtractUpdate"/> |
59 |
</Directory> |
60 |
</Directory> |
61 |
</Directory> |
62 |
</Directory> |
63 |
</Fragment> |
64 |
<Fragment> |
65 |
<ComponentGroup Id="ProductComponents" Directory="INSTALLFOLDER"> |
66 |
<!-- TODO: Remove the comments around this Component element and the ComponentRef below in order to add resources to this installer. --> |
67 |
<!-- <Component Id="ProductComponent"> --> |
68 |
<!-- TODO: Insert files, registry keys, and other resources here. --> |
69 |
<!-- </Component> --> |
70 |
<ComponentGroupRef Id="ProgramFilesFolder_files"/> |
71 |
<ComponentGroupRef Id="MarkusUpdateExtract_files"/> |
72 |
</ComponentGroup> |
73 |
</Fragment> |
74 |
<!--<Fragment> |
75 |
<DirectoryRef Id="TARGETDIR"> |
76 |
<Component Id="cmp67889FD2219FCD1ECDA0BD9FE906CD7A" Guid="57D045D4-AFC0-4874-8BA9-A1E8B9C348F9" KeyPath="yes"> |
77 |
<RegistryKey ForceCreateOnInstall="yes" Key="KCOM\shell\open" Root="HKCR" /> |
78 |
</Component> |
79 |
</DirectoryRef> |
80 |
</Fragment>--> |
81 |
|
82 |
<!--Kcom:// url open--> |
83 |
<Fragment> |
84 |
<DirectoryRef Id="INSTALLFOLDER"> |
85 |
<Component Id="REG_PROTOCOL_WRITE" Guid="D8795ADA-D3EC-4F34-86C3-7D6BE54420EA" KeyPath="yes"> |
86 |
<RegistryKey Key="KCOM" Root="HKCR" Action="createAndRemoveOnUninstall"> |
87 |
<RegistryValue Name="URL Protocol" Value="" Type="string" /> |
88 |
</RegistryKey> |
89 |
<RegistryKey ForceCreateOnInstall="yes" Key="KCOM\shell" Root="HKCR" /> |
90 |
<RegistryKey Key="KCOM\shell\open\command" Root="HKCR" Action="createAndRemoveOnUninstall"> |
91 |
<RegistryValue Value=""[INSTALLFOLDER]\Markus.AppUpdate.exe" "%1"" Type="string" /> |
92 |
</RegistryKey> |
93 |
</Component> |
94 |
</DirectoryRef> |
95 |
</Fragment> |
96 |
<Fragment> |
97 |
<DirectoryRef Id="INSTALLFOLDER"> |
98 |
<Component Id="REG_WARNONOPEN_WRITE" Guid="171260E2-66FC-4088-9F1F-3FAEB29250CA" KeyPath="yes"> |
99 |
<RegistryKey Key="Software\KCOM" Root="HKCU" Action="createAndRemoveOnUninstall" /> |
100 |
<RegistryKey Key="Software\Microsoft\Internet Explorer\KCOM" Root="HKCU" Action="createAndRemoveOnUninstall"> |
101 |
<RegistryValue Name="WarnOnOpen" Value="0" Type="integer" /> |
102 |
</RegistryKey> |
103 |
<RegistryKey Key="Software\KCOM" Root="HKLM" Action="createAndRemoveOnUninstall" /> |
104 |
</Component> |
105 |
</DirectoryRef> |
106 |
</Fragment> |
107 |
<Fragment> |
108 |
<ComponentGroup Id="ProgramFilesFolder_files" Directory="INSTALLFOLDER"> |
109 |
<Component Id="Log.config" Guid="9bac7a56-e2be-41d4-b869-fc9730d89dfc"> |
110 |
<File Id="Log.config" Name="Log.config" Source="$(var.NetSparkle.Samples.NetFramework.WPF_TargetDir)Log.config" /> |
111 |
</Component> |
112 |
<Component Id="Markus.AppUpdate.ini" Guid="531ed1f4-148c-4849-9fb8-b45425f028be"> |
113 |
<File Id="Markus.AppUpdate.ini" Name="Markus.AppUpdate.ini" Source="$(var.NetSparkle.Samples.NetFramework.WPF_TargetDir)Markus.AppUpdate.ini" /> |
114 |
</Component> |
115 |
<Component Id="MARKUS.ini" Guid="406e6027-fcfc-47e9-bff8-868bae6b9498"> |
116 |
<File Id="MARKUS.ini" Name="MARKUS.ini" Source="$(var.NetSparkle.Samples.NetFramework.WPF_TargetDir)MARKUS.ini" /> |
117 |
</Component> |
118 |
<Component Id="Markus.AppUpdate.exe" Guid="7855cf56-af12-40f8-8a44-3740268876e3"> |
119 |
<File Id="Markus.AppUpdate.exe" Name="Markus.AppUpdate.exe" Source="$(var.NetSparkle.Samples.NetFramework.WPF_TargetDir)Markus.AppUpdate.exe" /> |
120 |
</Component> |
121 |
<Component Id="Markus.AppUpdate.exe.config" Guid="992bc69f-c3c5-4e68-9e61-933017300ec7"> |
122 |
<File Id="Markus.AppUpdate.exe.config" Name="Markus.AppUpdate.exe.config" Source="$(var.NetSparkle.Samples.NetFramework.WPF_TargetDir)Markus.AppUpdate.exe.config" /> |
123 |
</Component> |
124 |
<Component Id="NetSparkle.dll" Guid="75b25671-7b5f-478f-9cc2-6190b9266e09"> |
125 |
<File Id="NetSparkle.dll" Name="NetSparkle.dll" Source="$(var.NetSparkle_TargetDir)NetSparkle.dll" /> |
126 |
</Component> |
127 |
<Component Id="ConfigParser.dll" Guid="9ea73b97-bd10-489d-8fff-c4cdb94ef8eb"> |
128 |
<File Id="ConfigParser.dll" Name="ConfigParser.dll" Source="$(var.NetSparkle.Samples.NetFramework.WPF_TargetDir)ConfigParser.dll" /> |
129 |
</Component> |
130 |
<Component Id="log4net.dll" Guid="28e72c39-3ded-4042-8679-394f23e19341"> |
131 |
<File Id="log4net.dll" Name="log4net.dll" Source="$(var.NetSparkle.Samples.NetFramework.WPF_TargetDir)log4net.dll" /> |
132 |
</Component> |
133 |
<Component Id="NetSparkle.UI.WPF.dll" Guid="74deb7fa-1d41-4bee-9713-c47eb970f3a8"> |
134 |
<File Id="NetSparkle.UI.WPF.dll" Name="NetSparkle.UI.WPF.dll" Source="$(var.NetSparkle.UI.WPF_TargetDir)NetSparkle.UI.WPF.dll" /> |
135 |
</Component> |
136 |
<Component Id="IIpc.dll" Guid="996e8122-db02-4132-9de0-144dcb8635d9"> |
137 |
<File Id="IIpc.dll" Name="IIpc.dll" Source="$(var.IIpc_TargetDir)IIpc.dll" /> |
138 |
</Component> |
139 |
<Component Id="BouncyCastle.Crypto.dll" Guid="4c7cf6c2-b024-48c3-bad1-c6af9d16c3af"> |
140 |
<File Id="BouncyCastle.Crypto.dll" Name="BouncyCastle.Crypto.dll" Source="$(var.NetSparkle.Samples.NetFramework.WPF_TargetDir)BouncyCastle.Crypto.dll" /> |
141 |
</Component> |
142 |
<Component Id="Newtonsoft.Json.dll" Guid="8d3bdd17-ae86-4686-a51a-153143f29a76"> |
143 |
<File Id="Newtonsoft.Json.dll" Name="Newtonsoft.Json.dll" Source="$(var.NetSparkle.Samples.NetFramework.WPF_TargetDir)Newtonsoft.Json.dll" /> |
144 |
</Component> |
145 |
<Component Id="Kcom.exe" Guid="eb074842-fe01-4ee4-8440-ba6630a65e50"> |
146 |
<File Id="Kcom.exe" Name="Kcom.exe" Source="$(var.Kcom_TargetDir)Kcom.exe" /> |
147 |
</Component> |
148 |
<Component Id="Kcom.exe.config" Guid="01d01d56-6de0-4844-b8f3-b1fae4a4bdae"> |
149 |
<File Id="Kcom.exe.config" Name="Kcom.exe.config" Source="$(var.Kcom_TargetDir)Kcom.exe.config" /> |
150 |
</Component> |
151 |
</ComponentGroup> |
152 |
</Fragment> |
153 |
<Fragment> |
154 |
<ComponentGroup Id="MarkusUpdateExtract_files" Directory="EXTRACT_INSTALLFOLDER"> |
155 |
<Component Id="MarkusUpdateExtract.exe" Guid="8f9a8aeb-d455-4c95-8730-63bafefe9541"> |
156 |
<File Id="MarkusUpdateExtract.exe" Name="MarkusUpdateExtract.exe" Source="$(var.MarkusUpdateExtract_Net_TargetDir)MarkusUpdateExtract.exe" /> |
157 |
</Component> |
158 |
<Component Id="MarkusUpdateExtract.exe.config" Guid="72c14e98-001a-41ff-b81e-f2a2fe733175"> |
159 |
<File Id="MarkusUpdateExtract.exe.config" Name="MarkusUpdateExtract.exe.config" Source="$(var.MarkusUpdateExtract_Net_TargetDir)MarkusUpdateExtract.exe.config" /> |
160 |
</Component> |
161 |
<Component Id="log4net.dll2" Guid="28e72c39-3ded-4042-8679-394f23e19343"> |
162 |
<File Id="log4net.dll2" Name="log4net.dll" Source="$(var.NetSparkle.Samples.NetFramework.WPF_TargetDir)log4net.dll" /> |
163 |
</Component> |
164 |
<Component Id="IIpc.dll2" Guid="996e8122-db02-4132-9de0-144dcb8635d1"> |
165 |
<File Id="IIpc.dll2" Name="IIpc.dll" Source="$(var.IIpc_TargetDir)IIpc.dll" /> |
166 |
</Component> |
167 |
<Component Id="Log.config2" Guid="9bac7a56-e2be-41d4-b869-fc9730d89dfa"> |
168 |
<File Id="Log.config2" Name="Log.config" Source="$(var.NetSparkle.Samples.NetFramework.WPF_TargetDir)Log.config" /> |
169 |
</Component> |
170 |
</ComponentGroup> |
171 |
</Fragment> |
172 |
</Wix> |