aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBob Arnson <bob@firegiant.com>2020-10-27 15:54:11 -0400
committerBob Arnson <bob@firegiant.com>2020-10-27 15:57:02 -0400
commit9a105bff160e7ab7db82b1f2689e21f4f7b30917 (patch)
treecc79bc0a0022eb1797b1e9d29029c4c655adab64
parentc5458b789cda75af4f1782468b80162f9b24276b (diff)
downloadwix-9a105bff160e7ab7db82b1f2689e21f4f7b30917.tar.gz
wix-9a105bff160e7ab7db82b1f2689e21f4f7b30917.tar.bz2
wix-9a105bff160e7ab7db82b1f2689e21f4f7b30917.zip
Update project for Package/SummaryInformation change (and others).
-rw-r--r--ComPlus.wixext.sln4
-rw-r--r--global.json2
-rw-r--r--src/ca/complusca.vcxproj15
-rw-r--r--src/test/WixToolsetTest.ComPlus/TestData/UsingComPlusPartition/Package.wxs11
-rw-r--r--src/wixext/ComPlusCompiler.cs13
-rw-r--r--src/wixext/WixToolset.ComPlus.wixext.csproj1
-rw-r--r--src/wixext/complus.xsd944
-rw-r--r--src/wixlib/ComPlusExtension.wxs157
-rw-r--r--src/wixlib/caerr.wxi2
9 files changed, 93 insertions, 1056 deletions
diff --git a/ComPlus.wixext.sln b/ComPlus.wixext.sln
index f117e399..9fab25f2 100644
--- a/ComPlus.wixext.sln
+++ b/ComPlus.wixext.sln
@@ -1,7 +1,7 @@
1 1
2Microsoft Visual Studio Solution File, Format Version 12.00 2Microsoft Visual Studio Solution File, Format Version 12.00
3# Visual Studio 15 3# Visual Studio Version 16
4VisualStudioVersion = 15.0.28010.2016 4VisualStudioVersion = 16.0.30611.23
5MinimumVisualStudioVersion = 10.0.40219.1 5MinimumVisualStudioVersion = 10.0.40219.1
6Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "complusca", "src\ca\complusca.vcxproj", "{BDEF51ED-E242-4FA2-801A-01B127DF851A}" 6Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "complusca", "src\ca\complusca.vcxproj", "{BDEF51ED-E242-4FA2-801A-01B127DF851A}"
7EndProject 7EndProject
diff --git a/global.json b/global.json
index 7a995d0a..f94ab6df 100644
--- a/global.json
+++ b/global.json
@@ -1,5 +1,5 @@
1{ 1{
2 "msbuild-sdks": { 2 "msbuild-sdks": {
3 "WixToolset.Sdk": "4.0.0-build-0143" 3 "WixToolset.Sdk": "4.0.0-build-0162"
4 } 4 }
5} 5}
diff --git a/src/ca/complusca.vcxproj b/src/ca/complusca.vcxproj
index 60c48f6d..0192557a 100644
--- a/src/ca/complusca.vcxproj
+++ b/src/ca/complusca.vcxproj
@@ -1,10 +1,8 @@
1<?xml version="1.0" encoding="utf-8"?> 1<?xml version="1.0" encoding="utf-8"?>
2<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. --> 2<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3
4<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 3<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
5 <Import Project="..\..\packages\WixToolset.DUtil.4.0.30\build\WixToolset.DUtil.props" Condition="Exists('..\..\packages\WixToolset.DUtil.4.0.30\build\WixToolset.DUtil.props')" /> 4 <Import Project="..\..\packages\WixToolset.DUtil.4.0.30\build\WixToolset.DUtil.props" Condition="Exists('..\..\packages\WixToolset.DUtil.4.0.30\build\WixToolset.DUtil.props')" />
6 <Import Project="..\..\packages\WixToolset.WcaUtil.4.0.16\build\WixToolset.WcaUtil.props" Condition="Exists('..\..\packages\WixToolset.WcaUtil.4.0.16\build\WixToolset.WcaUtil.props')" /> 5 <Import Project="..\..\packages\WixToolset.WcaUtil.4.0.16\build\WixToolset.WcaUtil.props" Condition="Exists('..\..\packages\WixToolset.WcaUtil.4.0.16\build\WixToolset.WcaUtil.props')" />
7
8 <ItemGroup Label="ProjectConfigurations"> 6 <ItemGroup Label="ProjectConfigurations">
9 <ProjectConfiguration Include="Debug|Win32"> 7 <ProjectConfiguration Include="Debug|Win32">
10 <Configuration>Debug</Configuration> 8 <Configuration>Debug</Configuration>
@@ -23,24 +21,21 @@
23 <Platform>x64</Platform> 21 <Platform>x64</Platform>
24 </ProjectConfiguration> 22 </ProjectConfiguration>
25 </ItemGroup> 23 </ItemGroup>
26
27 <PropertyGroup Label="Globals"> 24 <PropertyGroup Label="Globals">
28 <ProjectGuid>{BDEF51ED-E242-4FA2-801A-01B127DF851A}</ProjectGuid> 25 <ProjectGuid>{BDEF51ED-E242-4FA2-801A-01B127DF851A}</ProjectGuid>
29 <ConfigurationType>DynamicLibrary</ConfigurationType> 26 <ConfigurationType>DynamicLibrary</ConfigurationType>
30 <PlatformToolset>v141</PlatformToolset> 27 <PlatformToolset>v142</PlatformToolset>
31 <CharacterSet>Unicode</CharacterSet> 28 <CharacterSet>Unicode</CharacterSet>
32 <TargetName>complusca</TargetName> 29 <TargetName>complusca</TargetName>
33 <ProjectModuleDefinitionFile>complusca.def</ProjectModuleDefinitionFile> 30 <ProjectModuleDefinitionFile>complusca.def</ProjectModuleDefinitionFile>
34 <Description>WiX Toolset ComPlus CustomAction</Description> 31 <Description>WiX Toolset ComPlus CustomAction</Description>
32 <WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
35 </PropertyGroup> 33 </PropertyGroup>
36
37 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> 34 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
38 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> 35 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
39
40 <PropertyGroup> 36 <PropertyGroup>
41 <ProjectAdditionalLinkLibraries>msi.lib</ProjectAdditionalLinkLibraries> 37 <ProjectAdditionalLinkLibraries>msi.lib</ProjectAdditionalLinkLibraries>
42 </PropertyGroup> 38 </PropertyGroup>
43
44 <ItemGroup> 39 <ItemGroup>
45 <ClCompile Include="cpappexec.cpp" /> 40 <ClCompile Include="cpappexec.cpp" />
46 <ClCompile Include="cpapproleexec.cpp" /> 41 <ClCompile Include="cpapproleexec.cpp" />
@@ -62,7 +57,6 @@
62 <PrecompiledHeader>Create</PrecompiledHeader> 57 <PrecompiledHeader>Create</PrecompiledHeader>
63 </ClCompile> 58 </ClCompile>
64 </ItemGroup> 59 </ItemGroup>
65
66 <ItemGroup> 60 <ItemGroup>
67 <ClInclude Include="cpappexec.h" /> 61 <ClInclude Include="cpappexec.h" />
68 <ClInclude Include="cpapproleexec.h" /> 62 <ClInclude Include="cpapproleexec.h" />
@@ -81,14 +75,11 @@
81 <ClInclude Include="cputilsched.h" /> 75 <ClInclude Include="cputilsched.h" />
82 <ClInclude Include="precomp.h" /> 76 <ClInclude Include="precomp.h" />
83 </ItemGroup> 77 </ItemGroup>
84
85 <ItemGroup> 78 <ItemGroup>
86 <None Include="packages.config" /> 79 <None Include="packages.config" />
87 <None Include="complusca.def" /> 80 <None Include="complusca.def" />
88 </ItemGroup> 81 </ItemGroup>
89
90 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> 82 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
91
92 <Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild"> 83 <Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
93 <PropertyGroup> 84 <PropertyGroup>
94 <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText> 85 <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
@@ -96,4 +87,4 @@
96 <Error Condition="!Exists('..\..\packages\WixToolset.DUtil.4.0.30\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.DUtil.4.0.30\build\WixToolset.DUtil.props'))" /> 87 <Error Condition="!Exists('..\..\packages\WixToolset.DUtil.4.0.30\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.DUtil.4.0.30\build\WixToolset.DUtil.props'))" />
97 <Error Condition="!Exists('..\..\packages\WixToolset.WcaUtil.4.0.16\build\WixToolset.WcaUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.WcaUtil.4.0.16\build\WixToolset.WcaUtil.props'))" /> 88 <Error Condition="!Exists('..\..\packages\WixToolset.WcaUtil.4.0.16\build\WixToolset.WcaUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.WcaUtil.4.0.16\build\WixToolset.WcaUtil.props'))" />
98 </Target> 89 </Target>
99</Project> 90</Project> \ No newline at end of file
diff --git a/src/test/WixToolsetTest.ComPlus/TestData/UsingComPlusPartition/Package.wxs b/src/test/WixToolsetTest.ComPlus/TestData/UsingComPlusPartition/Package.wxs
index 68ff98fd..44820bdd 100644
--- a/src/test/WixToolsetTest.ComPlus/TestData/UsingComPlusPartition/Package.wxs
+++ b/src/test/WixToolsetTest.ComPlus/TestData/UsingComPlusPartition/Package.wxs
@@ -1,16 +1,15 @@
1<?xml version="1.0" encoding="utf-8"?> 1<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs">
2<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs"> 2 <Package Name="MsiPackage" Language="1033" Version="1.0.0.0" Manufacturer="Example Corporation" UpgradeCode="047730a5-30fe-4a62-a520-da9381b8226a" InstallerVersion="200">
3 <Product Id="*" Name="MsiPackage" Language="1033" Version="1.0.0.0" Manufacturer="Example Corporation" UpgradeCode="047730a5-30fe-4a62-a520-da9381b8226a"> 3
4 <Package InstallerVersion="200" Compressed="no" InstallScope="perMachine" />
5 4
6 <MajorUpgrade DowngradeErrorMessage="!(loc.DowngradeError)" /> 5 <MajorUpgrade DowngradeErrorMessage="!(loc.DowngradeError)" />
7 <MediaTemplate /> 6
8 7
9 <Feature Id="ProductFeature" Title="!(loc.FeatureTitle)"> 8 <Feature Id="ProductFeature" Title="!(loc.FeatureTitle)">
10 <ComponentGroupRef Id="ProductComponents" /> 9 <ComponentGroupRef Id="ProductComponents" />
11 </Feature> 10 </Feature>
12 11
13 </Product> 12 </Package>
14 13
15 <Fragment> 14 <Fragment>
16 <Directory Id="TARGETDIR" Name="SourceDir"> 15 <Directory Id="TARGETDIR" Name="SourceDir">
diff --git a/src/wixext/ComPlusCompiler.cs b/src/wixext/ComPlusCompiler.cs
index 8df98bdf..4404801e 100644
--- a/src/wixext/ComPlusCompiler.cs
+++ b/src/wixext/ComPlusCompiler.cs
@@ -94,7 +94,7 @@ namespace WixToolset.ComPlus
94 break; 94 break;
95 case "Fragment": 95 case "Fragment":
96 case "Module": 96 case "Module":
97 case "Product": 97 case "Package":
98 switch (element.Name.LocalName) 98 switch (element.Name.LocalName)
99 { 99 {
100 case "ComPlusPartition": 100 case "ComPlusPartition":
@@ -2150,15 +2150,8 @@ namespace WixToolset.ComPlus
2150 { 2150 {
2151 if (win64) 2151 if (win64)
2152 { 2152 {
2153 if (this.Context.Platform == Platform.IA64) 2153 this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureComPlusInstall_x64");
2154 { 2154 this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureComPlusUninstall_x64");
2155 this.Messaging.Write(ErrorMessages.UnsupportedPlatformForElement(sourceLineNumbers, "ia64", elementName));
2156 }
2157 else
2158 {
2159 this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureComPlusInstall_x64");
2160 this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureComPlusUninstall_x64");
2161 }
2162 } 2155 }
2163 else 2156 else
2164 { 2157 {
diff --git a/src/wixext/WixToolset.ComPlus.wixext.csproj b/src/wixext/WixToolset.ComPlus.wixext.csproj
index 86ad1a3d..5e411efb 100644
--- a/src/wixext/WixToolset.ComPlus.wixext.csproj
+++ b/src/wixext/WixToolset.ComPlus.wixext.csproj
@@ -13,7 +13,6 @@
13 13
14 <ItemGroup> 14 <ItemGroup>
15 <Content Include="$(MSBuildThisFileName).targets" /> 15 <Content Include="$(MSBuildThisFileName).targets" />
16 <Content Include="complus.xsd" PackagePath="tools" />
17 <EmbeddedResource Include="$(OutputPath)..\complus.wixlib" /> 16 <EmbeddedResource Include="$(OutputPath)..\complus.wixlib" />
18 </ItemGroup> 17 </ItemGroup>
19 18
diff --git a/src/wixext/complus.xsd b/src/wixext/complus.xsd
deleted file mode 100644
index f7ddacc6..00000000
--- a/src/wixext/complus.xsd
+++ /dev/null
@@ -1,944 +0,0 @@
1<?xml version="1.0" encoding="utf-8"?>
2<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3
4
5<xs:schema xmlns:html="http://www.w3.org/1999/xhtml"
6 xmlns:wix="http://wixtoolset.org/schemas/v4/wxs"
7 xmlns:xs="http://www.w3.org/2001/XMLSchema"
8 xmlns:xse=" http://wixtoolset.org/schemas/XmlSchemaExtension"
9 targetNamespace="http://wixtoolset.org/schemas/v4/wxs/complus"
10 xmlns="http://wixtoolset.org/schemas/v4/wxs/complus">
11 <xs:annotation>
12 <xs:documentation>
13 The source code schema for the WiX Toolset COM+ Extension.
14 </xs:documentation>
15 </xs:annotation>
16
17 <xs:import namespace="http://wixtoolset.org/schemas/v4/wxs" />
18
19 <xs:element name="ComPlusPartition">
20 <xs:annotation>
21 <xs:appinfo>
22 <xse:parent namespace="http://wixtoolset.org/schemas/v4/wxs" ref="Component" />
23 <xse:parent namespace="http://wixtoolset.org/schemas/v4/wxs" ref="Fragment" />
24 <xse:parent namespace="http://wixtoolset.org/schemas/v4/wxs" ref="Module" />
25 <xse:parent namespace="http://wixtoolset.org/schemas/v4/wxs" ref="Product" />
26 </xs:appinfo>
27 <xs:documentation>
28 Defines a COM+ partition. If this element is a child of a
29 Component element, the partition will be created in association with this
30 component. If the element is a child of any of the Fragment, Module or Product
31 elements it is considered to be a locater, referencing an existing partition.
32 </xs:documentation>
33 </xs:annotation>
34 <xs:complexType>
35 <xs:sequence>
36 <xs:choice minOccurs="0" maxOccurs="unbounded">
37 <xs:element ref="ComPlusPartitionRole" />
38 <xs:element ref="ComPlusPartitionUser" />
39 <xs:element ref="ComPlusApplication" />
40 </xs:choice>
41 </xs:sequence>
42 <xs:attribute name="Id" use="required" type="xs:string">
43 <xs:annotation><xs:documentation>
44 Identifier for the element.
45 </xs:documentation></xs:annotation>
46 </xs:attribute>
47 <xs:attribute name="PartitionId" use="optional" type="xs:string">
48 <xs:annotation><xs:documentation>
49 Id for the partition. This attribute can be omitted, in
50 which case an id will be generated on install. If the element is a locater,
51 this attribute can be omitted if a value is provided for the Name attribute.
52 </xs:documentation></xs:annotation>
53 </xs:attribute>
54 <xs:attribute name="Name" use="optional" type="xs:string">
55 <xs:annotation><xs:documentation>
56 Name of the partition. This attribute can be omitted if
57 the element is a locater, and a value is provided for the PartitionId
58 attribute.
59 </xs:documentation></xs:annotation>
60 </xs:attribute>
61 <xs:attribute name="Changeable" use="optional" type="YesNoType" />
62 <xs:attribute name="Deleteable" use="optional" type="YesNoType" />
63 <xs:attribute name="Description" use="optional" type="xs:string" />
64 </xs:complexType>
65 </xs:element>
66
67 <xs:element name="ComPlusPartitionRole">
68 <xs:annotation>
69 <xs:appinfo>
70 <xse:parent namespace="http://wixtoolset.org/schemas/v4/wxs" ref="Component" />
71 <xse:parent namespace="http://wixtoolset.org/schemas/v4/wxs" ref="Fragment" />
72 <xse:parent namespace="http://wixtoolset.org/schemas/v4/wxs" ref="Module" />
73 <xse:parent namespace="http://wixtoolset.org/schemas/v4/wxs" ref="Product" />
74 </xs:appinfo>
75 <xs:documentation>
76 Defines a COM+ partition role. Partition roles can not be
77 created; this element can only be used as a locater to reference an existing
78 role.
79 </xs:documentation>
80 </xs:annotation>
81 <xs:complexType>
82 <xs:sequence>
83 <xs:choice minOccurs="0" maxOccurs="unbounded">
84 <xs:element ref="ComPlusUserInPartitionRole" />
85 <xs:element ref="ComPlusGroupInPartitionRole" />
86 </xs:choice>
87 </xs:sequence>
88 <xs:attribute name="Id" use="required" type="xs:string">
89 <xs:annotation><xs:documentation>
90 Identifier for the element.
91 </xs:documentation></xs:annotation>
92 </xs:attribute>
93 <xs:attribute name="Partition" use="optional" type="xs:string">
94 <xs:annotation><xs:documentation>
95 The id of a ComPlusPartition element representing the partition
96 the role belongs to.
97 </xs:documentation></xs:annotation>
98 </xs:attribute>
99 <xs:attribute name="Name" use="required" type="xs:string">
100 <xs:annotation><xs:documentation>
101 Name of the partition role.
102 </xs:documentation></xs:annotation>
103 </xs:attribute>
104 </xs:complexType>
105 </xs:element>
106
107 <xs:element name="ComPlusUserInPartitionRole">
108 <xs:annotation>
109 <xs:appinfo>
110 <xse:parent namespace="http://wixtoolset.org/schemas/v4/wxs" ref="Component" />
111 </xs:appinfo>
112 <xs:documentation>
113 This element represents a user membership in a partition
114 role. When the parent component of this element is installed, the user will be
115 added to the associated partition role.
116 </xs:documentation>
117 </xs:annotation>
118 <xs:complexType>
119 <xs:attribute name="Id" use="required" type="xs:string">
120 <xs:annotation><xs:documentation>
121 Identifier for the element.
122 </xs:documentation></xs:annotation>
123 </xs:attribute>
124 <xs:attribute name="PartitionRole" use="optional" type="xs:string">
125 <xs:annotation><xs:documentation>
126 The id of a ComPlusPartitionRole element representing the
127 partition the user should be added to.
128 </xs:documentation></xs:annotation>
129 </xs:attribute>
130 <xs:attribute name="User" use="required" type="xs:string">
131 <xs:annotation><xs:documentation>
132 Foreign key into the User table.
133 </xs:documentation></xs:annotation>
134 </xs:attribute>
135 </xs:complexType>
136 </xs:element>
137
138 <xs:element name="ComPlusGroupInPartitionRole">
139 <xs:annotation>
140 <xs:appinfo>
141 <xse:parent namespace="http://wixtoolset.org/schemas/v4/wxs" ref="Component" />
142 </xs:appinfo>
143 <xs:documentation>
144 This element represents a security group membership in a
145 partition role. When the parent component of this element is installed, the
146 security group will be added to the associated partition role.
147 </xs:documentation>
148 </xs:annotation>
149 <xs:complexType>
150 <xs:attribute name="Id" use="required" type="xs:string">
151 <xs:annotation><xs:documentation>
152 Identifier for the element.
153 </xs:documentation></xs:annotation>
154 </xs:attribute>
155 <xs:attribute name="PartitionRole" use="optional" type="xs:string">
156 <xs:annotation><xs:documentation>
157 The id of a ComPlusPartitionRole element representing the
158 partition the user should be added to.
159 </xs:documentation></xs:annotation>
160 </xs:attribute>
161 <xs:attribute name="Group" use="required" type="xs:string">
162 <xs:annotation><xs:documentation>
163 Foreign key into the Group table.
164 </xs:documentation></xs:annotation>
165 </xs:attribute>
166 </xs:complexType>
167 </xs:element>
168
169 <xs:element name="ComPlusPartitionUser">
170 <xs:annotation>
171 <xs:appinfo>
172 <xse:parent namespace="http://wixtoolset.org/schemas/v4/wxs" ref="Component" />
173 </xs:appinfo>
174 <xs:documentation>
175 Represents a default partition definition for a user. When
176 the parent component of this element is installed, the default partition of the
177 user will be set to the referenced partition.
178 </xs:documentation>
179 </xs:annotation>
180 <xs:complexType>
181 <xs:attribute name="Id" use="required" type="xs:string">
182 <xs:annotation><xs:documentation>
183 Identifier for the element.
184 </xs:documentation></xs:annotation>
185 </xs:attribute>
186 <xs:attribute name="Partition" use="optional" type="xs:string">
187 <xs:annotation><xs:documentation>
188 The id of a ComPlusPartition element representing the
189 partition that will be the default partition for the user.
190 </xs:documentation></xs:annotation>
191 </xs:attribute>
192 <xs:attribute name="User" use="required" type="xs:string">
193 <xs:annotation><xs:documentation>
194 Foreign key into the User table.
195 </xs:documentation></xs:annotation>
196 </xs:attribute>
197 </xs:complexType>
198 </xs:element>
199
200 <xs:element name="ComPlusApplication">
201 <xs:annotation>
202 <xs:appinfo>
203 <xse:parent namespace="http://wixtoolset.org/schemas/v4/wxs" ref="Component" />
204 <xse:parent namespace="http://wixtoolset.org/schemas/v4/wxs" ref="Fragment" />
205 <xse:parent namespace="http://wixtoolset.org/schemas/v4/wxs" ref="Module" />
206 <xse:parent namespace="http://wixtoolset.org/schemas/v4/wxs" ref="Product" />
207 </xs:appinfo>
208 <xs:documentation>
209 Defines a COM+ application. If this element is a descendent
210 of a Component element, the application will be created in association with
211 this component. If the element is a child of any of the Fragment, Module or
212 Product elements it is considered to be a locater, referencing an existing
213 application.
214
215 If the element is a child of a ComPlusPartition element,
216 or have its Partition attribute set, the application will be installed under
217 the referenced partition.
218 </xs:documentation>
219 </xs:annotation>
220 <xs:complexType>
221 <xs:sequence>
222 <xs:choice minOccurs="0" maxOccurs="unbounded">
223 <xs:element ref="ComPlusApplicationRole" />
224 <xs:element ref="ComPlusAssembly" />
225 </xs:choice>
226 </xs:sequence>
227 <xs:attribute name="Id" use="required" type="xs:string">
228 <xs:annotation><xs:documentation>
229 Identifier for the element.
230 </xs:documentation></xs:annotation>
231 </xs:attribute>
232 <xs:attribute name="Partition" use="optional" type="xs:string">
233 <xs:annotation><xs:documentation>
234 If the element is not a child of a ComPlusPartition
235 element, this attribute can be provided with the id of a ComPlusPartition
236 element representing the partition the application belongs to.
237 </xs:documentation></xs:annotation>
238 </xs:attribute>
239 <xs:attribute name="ApplicationId" use="optional" type="xs:string">
240 <xs:annotation><xs:documentation>
241 Id for the application. This attribute can be omitted, in
242 which case an id will be generated on install. If the element is a locater,
243 this attribute can be omitted if a value is provided for the Name attribute.
244 </xs:documentation></xs:annotation>
245 </xs:attribute>
246 <xs:attribute name="Name" use="optional" type="xs:string">
247 <xs:annotation><xs:documentation>
248 Name of the application. This attribute can be omitted if
249 the element is a locater, and a value is provided for the PartitionId
250 attribute.
251 </xs:documentation></xs:annotation>
252 </xs:attribute>
253 <xs:attribute name="ThreeGigSupportEnabled" use="optional" type="YesNoType" />
254 <xs:attribute name="AccessChecksLevel" use="optional">
255 <xs:simpleType>
256 <xs:restriction base="xs:NMTOKEN">
257 <xs:enumeration value="applicationLevel" />
258 <xs:enumeration value="applicationComponentLevel" />
259 </xs:restriction>
260 </xs:simpleType>
261 </xs:attribute>
262 <xs:attribute name="Activation" use="optional">
263 <xs:simpleType>
264 <xs:restriction base="xs:NMTOKEN">
265 <xs:enumeration value="inproc" />
266 <xs:enumeration value="local" />
267 </xs:restriction>
268 </xs:simpleType>
269 </xs:attribute>
270 <xs:attribute name="ApplicationAccessChecksEnabled" use="optional" type="YesNoType" />
271 <xs:attribute name="ApplicationDirectory" use="optional" type="xs:string" />
272 <xs:attribute name="Authentication" use="optional">
273 <xs:simpleType>
274 <xs:restriction base="xs:NMTOKEN">
275 <xs:enumeration value="default" />
276 <xs:enumeration value="none" />
277 <xs:enumeration value="connect" />
278 <xs:enumeration value="call" />
279 <xs:enumeration value="packet" />
280 <xs:enumeration value="integrity" />
281 <xs:enumeration value="privacy" />
282 </xs:restriction>
283 </xs:simpleType>
284 </xs:attribute>
285 <xs:attribute name="AuthenticationCapability" use="optional">
286 <xs:simpleType>
287 <xs:restriction base="xs:NMTOKEN">
288 <xs:enumeration value="none" />
289 <xs:enumeration value="secureReference" />
290 <xs:enumeration value="staticCloaking" />
291 <xs:enumeration value="dynamicCloaking" />
292 </xs:restriction>
293 </xs:simpleType>
294 </xs:attribute>
295 <xs:attribute name="Changeable" use="optional" type="YesNoType" />
296 <xs:attribute name="CommandLine" use="optional" type="xs:string" />
297 <xs:attribute name="ConcurrentApps" use="optional" type="xs:int" />
298 <xs:attribute name="CreatedBy" use="optional" type="xs:string" />
299 <xs:attribute name="CRMEnabled" use="optional" type="YesNoType" />
300 <xs:attribute name="CRMLogFile" use="optional" type="xs:string" />
301 <xs:attribute name="Deleteable" use="optional" type="YesNoType" />
302 <xs:attribute name="Description" use="optional" type="xs:string" />
303 <xs:attribute name="DumpEnabled" use="optional" type="YesNoType" />
304 <xs:attribute name="DumpOnException" use="optional" type="YesNoType" />
305 <xs:attribute name="DumpOnFailfast" use="optional" type="YesNoType" />
306 <xs:attribute name="DumpPath" use="optional" type="xs:string" />
307 <xs:attribute name="EventsEnabled" use="optional" type="YesNoType" />
308 <xs:attribute name="Identity" use="optional" type="xs:string" />
309 <xs:attribute name="ImpersonationLevel" use="optional">
310 <xs:simpleType>
311 <xs:restriction base="xs:NMTOKEN">
312 <xs:enumeration value="anonymous" />
313 <xs:enumeration value="identify" />
314 <xs:enumeration value="impersonate" />
315 <xs:enumeration value="delegate" />
316 </xs:restriction>
317 </xs:simpleType>
318 </xs:attribute>
319 <xs:attribute name="IsEnabled" use="optional" type="YesNoType" />
320 <xs:attribute name="MaxDumpCount" use="optional" type="xs:int" />
321 <xs:attribute name="Password" use="optional" type="xs:string" />
322 <xs:attribute name="QCAuthenticateMsgs" use="optional">
323 <xs:simpleType>
324 <xs:restriction base="xs:NMTOKEN">
325 <xs:enumeration value="secureApps" />
326 <xs:enumeration value="off" />
327 <xs:enumeration value="on" />
328 </xs:restriction>
329 </xs:simpleType>
330 </xs:attribute>
331 <xs:attribute name="QCListenerMaxThreads" use="optional" type="xs:int" />
332 <xs:attribute name="QueueListenerEnabled" use="optional" type="YesNoType" />
333 <xs:attribute name="QueuingEnabled" use="optional" type="YesNoType" />
334 <xs:attribute name="RecycleActivationLimit" use="optional" type="xs:int" />
335 <xs:attribute name="RecycleCallLimit" use="optional" type="xs:int" />
336 <xs:attribute name="RecycleExpirationTimeout" use="optional" type="xs:int" />
337 <xs:attribute name="RecycleLifetimeLimit" use="optional" type="xs:int" />
338 <xs:attribute name="RecycleMemoryLimit" use="optional" type="xs:int" />
339 <xs:attribute name="Replicable" use="optional" type="YesNoType" />
340 <xs:attribute name="RunForever" use="optional" type="YesNoType" />
341 <xs:attribute name="ShutdownAfter" use="optional" type="xs:int" />
342 <xs:attribute name="SoapActivated" use="optional" type="YesNoType" />
343 <xs:attribute name="SoapBaseUrl" use="optional" type="xs:string" />
344 <xs:attribute name="SoapMailTo" use="optional" type="xs:string" />
345 <xs:attribute name="SoapVRoot" use="optional" type="xs:string" />
346 <xs:attribute name="SRPEnabled" use="optional" type="YesNoType" />
347 <xs:attribute name="SRPTrustLevel" use="optional">
348 <xs:simpleType>
349 <xs:restriction base="xs:NMTOKEN">
350 <xs:enumeration value="disallowed" />
351 <xs:enumeration value="fullyTrusted" />
352 </xs:restriction>
353 </xs:simpleType>
354 </xs:attribute>
355 </xs:complexType>
356 </xs:element>
357
358 <xs:element name="ComPlusApplicationRole">
359 <xs:annotation>
360 <xs:appinfo>
361 <xse:parent namespace="http://wixtoolset.org/schemas/v4/wxs" ref="Component" />
362 <xse:parent namespace="http://wixtoolset.org/schemas/v4/wxs" ref="Fragment" />
363 <xse:parent namespace="http://wixtoolset.org/schemas/v4/wxs" ref="Module" />
364 <xse:parent namespace="http://wixtoolset.org/schemas/v4/wxs" ref="Product" />
365 </xs:appinfo>
366 <xs:documentation>
367 Defines an application role. If this element is a descendent
368 of a Component element, the application role will be created in association
369 with this component. If the element is a child of any of the Fragment, Module
370 or Product elements it is considered to be a locater, referencing an existing
371 application role.
372 </xs:documentation>
373 </xs:annotation>
374 <xs:complexType>
375 <xs:sequence>
376 <xs:choice minOccurs="0" maxOccurs="unbounded">
377 <xs:element ref="ComPlusUserInApplicationRole" />
378 <xs:element ref="ComPlusGroupInApplicationRole" />
379 </xs:choice>
380 </xs:sequence>
381 <xs:attribute name="Id" use="required" type="xs:string">
382 <xs:annotation><xs:documentation>
383 Identifier for the element.
384 </xs:documentation></xs:annotation>
385 </xs:attribute>
386 <xs:attribute name="Application" use="optional" type="xs:string">
387 <xs:annotation><xs:documentation>
388 If the element is not a child of a ComPlusApplication
389 element, this attribute should be provided with the id of a
390 ComPlusApplication element representing the application the role belongs to.
391 </xs:documentation></xs:annotation>
392 </xs:attribute>
393 <xs:attribute name="Name" use="required" type="xs:string">
394 <xs:annotation><xs:documentation>
395 Name of the application role.
396 </xs:documentation></xs:annotation>
397 </xs:attribute>
398 <xs:attribute name="Description" use="optional" type="xs:string" />
399 </xs:complexType>
400 </xs:element>
401
402 <xs:element name="ComPlusUserInApplicationRole">
403 <xs:annotation>
404 <xs:appinfo>
405 <xse:parent namespace="http://wixtoolset.org/schemas/v4/wxs" ref="Component" />
406 </xs:appinfo>
407 <xs:documentation>
408 This element represents a user membership in an
409 application role. When the parent component of this element is installed, the
410 user will be added to the associated application role. This element must be a descendent
411 of a Component element; it can not be a child of a ComPlusApplicationRole
412 locater element. To reference a locater element use the ApplicationRole
413 attribute.
414 </xs:documentation>
415 </xs:annotation>
416 <xs:complexType>
417 <xs:attribute name="Id" use="required" type="xs:string">
418 <xs:annotation><xs:documentation>
419 Identifier for the element.
420 </xs:documentation></xs:annotation>
421 </xs:attribute>
422 <xs:attribute name="ApplicationRole" use="optional" type="xs:string">
423 <xs:annotation><xs:documentation>
424 If the element is not a child of a ComPlusApplicationRole
425 element, this attribute should be provided with the id of a
426 ComPlusApplicationRole element representing the application role the user is
427 to be added to.
428 </xs:documentation></xs:annotation>
429 </xs:attribute>
430 <xs:attribute name="User" use="required" type="xs:string">
431 <xs:annotation><xs:documentation>
432 Foreign key into the User table.
433 </xs:documentation></xs:annotation>
434 </xs:attribute>
435 </xs:complexType>
436 </xs:element>
437
438 <xs:element name="ComPlusGroupInApplicationRole">
439 <xs:annotation>
440 <xs:appinfo>
441 <xse:parent namespace="http://wixtoolset.org/schemas/v4/wxs" ref="Component" />
442 </xs:appinfo>
443 <xs:documentation>
444 This element represents a security group membership in an
445 application role. When the parent component of this element is installed, the
446 user will be added to the associated application role. This element must be a
447 descendent of a Component element; it can not be a child of a
448 ComPlusApplicationRole locater element. To reference a locater element use the
449 ApplicationRole attribute.
450 </xs:documentation>
451 </xs:annotation>
452 <xs:complexType>
453 <xs:attribute name="Id" use="required" type="xs:string">
454 <xs:annotation><xs:documentation>
455 Identifier for the element.
456 </xs:documentation></xs:annotation>
457 </xs:attribute>
458 <xs:attribute name="ApplicationRole" use="optional" type="xs:string">
459 <xs:annotation><xs:documentation>
460 If the element is not a child of a ComPlusApplicationRole
461 element, this attribute should be provided with the id of a
462 ComPlusApplicationRole element representing the application role the user is
463 to be added to.
464 </xs:documentation></xs:annotation>
465 </xs:attribute>
466 <xs:attribute name="Group" use="required" type="xs:string">
467 <xs:annotation><xs:documentation>
468 Foreign key into the Group table.
469 </xs:documentation></xs:annotation>
470 </xs:attribute>
471 </xs:complexType>
472 </xs:element>
473
474 <xs:element name="ComPlusAssembly">
475 <xs:annotation>
476 <xs:documentation>
477 Represents a DLL or assembly to be registered with COM+. If
478 this element is a child of a ComPlusApplication element, the assembly will be
479 registered in this application. Other ways the Application attribute must be
480 set to an application. The element must be a descendent of a Component element,
481 it can not be a child of a ComPlusApplication locator element.
482 </xs:documentation>
483 <xs:appinfo>
484 <xse:parent namespace="http://wixtoolset.org/schemas/v4/wxs" ref="Component" />
485 <xse:remarks>
486 <html:p>
487 When installing a native assembly, all components
488 contained in the assembly must be represented as ComPlusComponent elements
489 under this element. Any component not listed will not be removed during
490 uninstall.
491 </html:p>
492
493 <html:p>
494 The fields DllPath, TlbPath and PSDllPath are formatted
495 fields that should contain file paths to there respective file types. A typical
496 value for DllPath for example, should be something like “[#MyAssembly_dll]”,
497 where “MyAssembly_dll” is the key of the dll file in the File table.
498 </html:p>
499
500 <html:p>
501 <html:b>Warning</html:b>: The assembly name provided in the AssemblyName
502 attribute must be a fully specified assembly name, if a partial name is
503 provided a random assembly matching the partial name will be selected.
504 </html:p>
505 </xse:remarks>
506 </xs:appinfo>
507 </xs:annotation>
508 <xs:complexType>
509 <xs:sequence>
510 <xs:choice minOccurs="0" maxOccurs="unbounded">
511 <xs:element ref="ComPlusAssemblyDependency" />
512 <xs:element ref="ComPlusComponent" />
513 </xs:choice>
514 </xs:sequence>
515 <xs:attribute name="Id" use="required" type="xs:string">
516 <xs:annotation><xs:documentation>
517 Identifier for the element.
518 </xs:documentation></xs:annotation>
519 </xs:attribute>
520 <xs:attribute name="Application" use="optional" type="xs:string">
521 <xs:annotation><xs:documentation>
522 If the element is not a child of a ComPlusApplication
523 element, this attribute should be provided with the id of a ComPlusApplication
524 element representing the application the assembly is to be registered in.
525 This attribute can be omitted for a .NET assembly even if the application is
526 not a child of a ComPlusApplication element.
527 </xs:documentation></xs:annotation>
528 </xs:attribute>
529 <xs:attribute name="AssemblyName" use="optional" type="xs:string">
530 <xs:annotation><xs:documentation>
531 The name of the assembly used to identify the assembly in
532 the GAC. This attribute can be provided only if DllPathFromGAC is set to
533 “yes”.
534 </xs:documentation></xs:annotation>
535 </xs:attribute>
536 <xs:attribute name="DllPath" use="optional" type="xs:string">
537 <xs:annotation><xs:documentation>
538 The path to locate the assembly DLL during registration.
539 This attribute should be provided if DllPathFromGAC is not set to “yes”.
540 </xs:documentation></xs:annotation>
541 </xs:attribute>
542 <xs:attribute name="TlbPath" use="optional" type="xs:string">
543 <xs:annotation><xs:documentation>
544 An optional path to an external type lib for the assembly.
545 This attribute must be provided if the Type attribute is set to “.net”.
546 </xs:documentation></xs:annotation>
547 </xs:attribute>
548 <xs:attribute name="PSDllPath" use="optional" type="xs:string">
549 <xs:annotation><xs:documentation>
550 An optional path to an external proxy/stub DLL for the assembly.
551 </xs:documentation></xs:annotation>
552 </xs:attribute>
553 <xs:attribute name="Type" use="required">
554 <xs:annotation><xs:documentation>
555 </xs:documentation></xs:annotation>
556 <xs:simpleType>
557 <xs:restriction base="xs:NMTOKEN">
558 <xs:enumeration value="native" />
559 <xs:enumeration value=".net" />
560 </xs:restriction>
561 </xs:simpleType>
562 </xs:attribute>
563 <xs:attribute name="EventClass" use="optional" type="YesNoType">
564 <xs:annotation><xs:documentation>
565 Indicates that the assembly is to be installed as an event
566 class DLL. This attribute is only valid for native assemblies. The assembly
567 will be installed with the COM+ catalog’s InstallEventClass() function.
568 </xs:documentation></xs:annotation>
569 </xs:attribute>
570 <xs:attribute name="DllPathFromGAC" use="optional" type="YesNoType">
571 <xs:annotation><xs:documentation>
572 Indicates that the DLL path should be extracted from the
573 GAC instead for being provided in the DllPath attribute. If this attribute is
574 set to “yes”, the name of the assembly can be provided using the AssemblyName
575 attribute. Or, if this AssemblyName attribute is missing, the name will be
576 extracted from the MsiAssemblyName table using the id of the parent Component
577 element.
578 </xs:documentation></xs:annotation>
579 </xs:attribute>
580 <xs:attribute name="RegisterInCommit" use="optional" type="YesNoType">
581 <xs:annotation><xs:documentation>
582 Indicates that the assembly should be installed in the
583 commit custom action instead of the normal deferred custom action. This is
584 necessary when installing .NET assemblies to the GAC in the same
585 installation, as the assemblies are not visible in the GAC until after the
586 InstallFinalize action has run.
587 </xs:documentation></xs:annotation>
588 </xs:attribute>
589 </xs:complexType>
590 </xs:element>
591
592 <xs:element name="ComPlusAssemblyDependency">
593 <xs:annotation>
594 <xs:documentation>
595 Defines a dependency between two assemblies. This element
596 affects the order in which assembles are registered. Any assemblies referenced
597 by this element are guarantied to be registered before, and unregistered after,
598 the assembly referenced by the parent ComPlusAssembly element.
599 </xs:documentation>
600 <xs:appinfo>
601 <xse:remarks>
602 It is only necessary to explicitly specify dependencies between
603 assemblies contained in the same package (MSI or MSM). Assemblies merged in to a
604 package from a merge module will always be installed before any assemblies
605 specified in the base package. Assemblies merged in from different merge
606 modules are sequenced using the ModuleDependency MSI table. It is not possible
607 to have cross dependencies between merge modules or have an assembly in a merge
608 module depend on an assembly in the base package.
609 </xse:remarks>
610 </xs:appinfo>
611 </xs:annotation>
612 <xs:complexType>
613 <xs:attribute name="RequiredAssembly" use="required" type="xs:string">
614 <xs:annotation><xs:documentation>
615 Reference to the id of the assembly required by the parent
616 ComPlusAssembly element.
617 </xs:documentation></xs:annotation>
618 </xs:attribute>
619 </xs:complexType>
620 </xs:element>
621
622 <xs:element name="ComPlusComponent">
623 <xs:annotation><xs:documentation>
624 Represents a COM+ component in an assembly.
625 </xs:documentation></xs:annotation>
626 <xs:complexType>
627 <xs:sequence>
628 <xs:choice minOccurs="0" maxOccurs="unbounded">
629 <xs:element ref="ComPlusRoleForComponent" />
630 <xs:element ref="ComPlusInterface" />
631 <xs:element ref="ComPlusSubscription" />
632 </xs:choice>
633 </xs:sequence>
634 <xs:attribute name="Id" use="required" type="xs:string">
635 <xs:annotation><xs:documentation>
636 Identifier for the element.
637 </xs:documentation></xs:annotation>
638 </xs:attribute>
639 <xs:attribute name="CLSID" use="required" type="uuid">
640 <xs:annotation><xs:documentation>
641 CLSID of the component.
642 </xs:documentation></xs:annotation>
643 </xs:attribute>
644 <xs:attribute name="AllowInprocSubscribers" use="optional" type="YesNoType" />
645 <xs:attribute name="ComponentAccessChecksEnabled" use="optional" type="YesNoType" />
646 <xs:attribute name="ComponentTransactionTimeout" use="optional" type="xs:int" />
647 <xs:attribute name="ComponentTransactionTimeoutEnabled" use="optional" type="YesNoType" />
648 <xs:attribute name="COMTIIntrinsics" use="optional" type="YesNoType" />
649 <xs:attribute name="ConstructionEnabled" use="optional" type="YesNoType" />
650 <xs:attribute name="ConstructorString" use="optional" type="xs:string" />
651 <xs:attribute name="CreationTimeout" use="optional" type="xs:int" />
652 <xs:attribute name="Description" use="optional" type="xs:string" />
653 <xs:attribute name="EventTrackingEnabled" use="optional" type="YesNoType" />
654 <xs:attribute name="ExceptionClass" use="optional" type="xs:string" />
655 <xs:attribute name="FireInParallel" use="optional" type="YesNoType" />
656 <xs:attribute name="IISIntrinsics" use="optional" type="YesNoType" />
657 <xs:attribute name="InitializesServerApplication" use="optional" type="YesNoType" />
658 <xs:attribute name="IsEnabled" use="optional" type="YesNoType" />
659 <xs:attribute name="IsPrivateComponent" use="optional" type="YesNoType" />
660 <xs:attribute name="JustInTimeActivation" use="optional" type="YesNoType" />
661 <xs:attribute name="LoadBalancingSupported" use="optional" type="YesNoType" />
662 <xs:attribute name="MaxPoolSize" use="optional" type="xs:int" />
663 <xs:attribute name="MinPoolSize" use="optional" type="xs:int" />
664 <xs:attribute name="MultiInterfacePublisherFilterCLSID" use="optional" type="xs:string" />
665 <xs:attribute name="MustRunInClientContext" use="optional" type="YesNoType" />
666 <xs:attribute name="MustRunInDefaultContext" use="optional" type="YesNoType" />
667 <xs:attribute name="ObjectPoolingEnabled" use="optional" type="YesNoType" />
668 <xs:attribute name="PublisherID" use="optional" type="xs:string" />
669 <xs:attribute name="SoapAssemblyName" use="optional" type="xs:string" />
670 <xs:attribute name="SoapTypeName" use="optional" type="xs:string" />
671 <xs:attribute name="Synchronization" use="optional">
672 <xs:simpleType>
673 <xs:restriction base="xs:NMTOKEN">
674 <xs:enumeration value="ignored" />
675 <xs:enumeration value="none" />
676 <xs:enumeration value="supported" />
677 <xs:enumeration value="required" />
678 <xs:enumeration value="requiresNew" />
679 </xs:restriction>
680 </xs:simpleType>
681 </xs:attribute>
682 <xs:attribute name="Transaction" use="optional">
683 <xs:simpleType>
684 <xs:restriction base="xs:NMTOKEN">
685 <xs:enumeration value="ignored" />
686 <xs:enumeration value="none" />
687 <xs:enumeration value="supported" />
688 <xs:enumeration value="required" />
689 <xs:enumeration value="requiresNew" />
690 </xs:restriction>
691 </xs:simpleType>
692 </xs:attribute>
693 <xs:attribute name="TxIsolationLevel" use="optional">
694 <xs:simpleType>
695 <xs:restriction base="xs:NMTOKEN">
696 <xs:enumeration value="any" />
697 <xs:enumeration value="readUnCommitted" />
698 <xs:enumeration value="readCommitted" />
699 <xs:enumeration value="repeatableRead" />
700 <xs:enumeration value="serializable" />
701 </xs:restriction>
702 </xs:simpleType>
703 </xs:attribute>
704 </xs:complexType>
705 </xs:element>
706
707 <xs:element name="ComPlusRoleForComponent">
708 <xs:annotation>
709 <xs:appinfo>
710 <xse:parent namespace="http://wixtoolset.org/schemas/v4/wxs" ref="Component" />
711 </xs:appinfo>
712 <xs:documentation>
713 Represents a role assignment to a COM+ component.
714 </xs:documentation>
715 </xs:annotation>
716 <xs:complexType>
717 <xs:attribute name="Id" use="required" type="xs:string">
718 <xs:annotation><xs:documentation>
719 Identifier for the element.
720 </xs:documentation></xs:annotation>
721 </xs:attribute>
722 <xs:attribute name="Component" use="optional" type="xs:string">
723 <xs:annotation><xs:documentation>
724 If the element is not a child of a ComPlusComponent
725 element, this attribute should be provided with the id of a ComPlusComponent
726 element representing the component the role is to be added to.
727 </xs:documentation></xs:annotation>
728 </xs:attribute>
729 <xs:attribute name="ApplicationRole" use="required" type="xs:string">
730 <xs:annotation><xs:documentation>
731 Id of the ComPlusApplicationRole element representing the
732 role that shall be granted access to the component.
733 </xs:documentation></xs:annotation>
734 </xs:attribute>
735 </xs:complexType>
736 </xs:element>
737
738 <xs:element name="ComPlusInterface">
739 <xs:annotation><xs:documentation>
740 Represents an interface for a COM+ component.
741 </xs:documentation></xs:annotation>
742 <xs:complexType>
743 <xs:sequence>
744 <xs:choice minOccurs="0" maxOccurs="unbounded">
745 <xs:element ref="ComPlusRoleForInterface" />
746 <xs:element ref="ComPlusMethod" />
747 </xs:choice>
748 </xs:sequence>
749 <xs:attribute name="Id" use="required" type="xs:string">
750 <xs:annotation><xs:documentation>
751 Identifier for the element.
752 </xs:documentation></xs:annotation>
753 </xs:attribute>
754 <xs:attribute name="IID" use="required" type="uuid">
755 <xs:annotation><xs:documentation>
756 IID of the interface.
757 </xs:documentation></xs:annotation>
758 </xs:attribute>
759 <xs:attribute name="Description" use="optional" type="xs:string" />
760 <xs:attribute name="QueuingEnabled" use="optional" type="YesNoType" />
761 </xs:complexType>
762 </xs:element>
763
764 <xs:element name="ComPlusRoleForInterface">
765 <xs:annotation>
766 <xs:appinfo>
767 <xse:parent namespace="http://wixtoolset.org/schemas/v4/wxs" ref="Component" />
768 </xs:appinfo>
769 <xs:documentation>
770 Represents a role assignment to an interface.
771 </xs:documentation>
772 </xs:annotation>
773 <xs:complexType>
774 <xs:attribute name="Id" use="required" type="xs:string">
775 <xs:annotation><xs:documentation>
776 Identifier for the element.
777 </xs:documentation></xs:annotation>
778 </xs:attribute>
779 <xs:attribute name="Interface" use="optional" type="xs:string">
780 <xs:annotation><xs:documentation>
781 If the element is not a child of a ComPlusInterface
782 element, this attribute should be provided with the id of a ComPlusInterface
783 element representing the interface the role is to be added to.
784 </xs:documentation></xs:annotation>
785 </xs:attribute>
786 <xs:attribute name="ApplicationRole" use="required" type="xs:string">
787 <xs:annotation><xs:documentation>
788 Id of the ComPlusApplicationRole element representing the
789 role that shall be granted access to the interface.
790 </xs:documentation></xs:annotation>
791 </xs:attribute>
792 </xs:complexType>
793 </xs:element>
794
795 <xs:element name="ComPlusMethod">
796 <xs:annotation>
797 <xs:documentation>
798 Represents a method for an interface.
799 </xs:documentation>
800 </xs:annotation>
801 <xs:complexType>
802 <xs:sequence>
803 <xs:element ref="ComPlusRoleForMethod" minOccurs="0" maxOccurs="unbounded" />
804 </xs:sequence>
805 <xs:attribute name="Id" use="required" type="xs:string">
806 <xs:annotation>
807 <xs:documentation>
808 Identifier for the element.
809 </xs:documentation>
810 </xs:annotation>
811 </xs:attribute>
812 <xs:attribute name="Index" use="optional" type="xs:int">
813 <xs:annotation>
814 <xs:documentation>
815 Dispatch id of the method. If this attribute is not set a
816 value must be provided for the Name attribute.
817 </xs:documentation>
818 </xs:annotation>
819 </xs:attribute>
820 <xs:attribute name="Name" use="optional" type="xs:string">
821 <xs:annotation>
822 <xs:documentation>
823 Name of the method. If this attribute is not set a value
824 must be provided for the Index attribute.
825 </xs:documentation>
826 </xs:annotation>
827 </xs:attribute>
828 <xs:attribute name="AutoComplete" use="optional" type="YesNoType" />
829 <xs:attribute name="Description" use="optional" type="xs:string" />
830 </xs:complexType>
831 </xs:element>
832
833 <xs:element name="ComPlusRoleForMethod">
834 <xs:annotation>
835 <xs:appinfo>
836 <xse:parent namespace="http://wixtoolset.org/schemas/v4/wxs" ref="Component" />
837 </xs:appinfo>
838 <xs:documentation>
839 Represents a role assignment to a COM+ method.
840 </xs:documentation>
841 </xs:annotation>
842 <xs:complexType>
843 <xs:attribute name="Id" use="required" type="xs:string">
844 <xs:annotation><xs:documentation>
845 Identifier for the element.
846 </xs:documentation></xs:annotation>
847 </xs:attribute>
848 <xs:attribute name="Method" use="optional" type="xs:string">
849 <xs:annotation><xs:documentation>
850 If the element is not a child of a ComPlusMethod element,
851 this attribute should be provided with the id of a ComPlusMethod element
852 representing the method the role is to be added to.
853 </xs:documentation></xs:annotation>
854 </xs:attribute>
855 <xs:attribute name="ApplicationRole" use="required" type="xs:string">
856 <xs:annotation><xs:documentation>
857 Id of the ComPlusApplicationRole element representing the
858 role that shall be granted access to the method.
859 </xs:documentation></xs:annotation>
860 </xs:attribute>
861 </xs:complexType>
862 </xs:element>
863
864 <xs:element name="ComPlusSubscription">
865 <xs:annotation>
866 <xs:appinfo>
867 <xse:parent namespace="http://wixtoolset.org/schemas/v4/wxs" ref="Component" />
868 </xs:appinfo>
869 <xs:documentation>
870 Defines an event subscription for a COM+ component.
871 </xs:documentation>
872 </xs:annotation>
873 <xs:complexType>
874 <xs:attribute name="Id" use="required" type="xs:string">
875 <xs:annotation><xs:documentation>
876 Identifier for the element.
877 </xs:documentation></xs:annotation>
878 </xs:attribute>
879 <xs:attribute name="Component" use="optional" type="xs:string">
880 <xs:annotation><xs:documentation>
881 If the element is not a child of a ComPlusComponent
882 element, this attribute should be provided with the id of a ComPlusComponent
883 element representing the component the subscription is to be created for.
884 </xs:documentation></xs:annotation>
885 </xs:attribute>
886 <xs:attribute name="SubscriptionId" use="optional" type="xs:string">
887 <xs:annotation><xs:documentation>
888 Id of the subscription. If a value is not provided for
889 this attribute, an id will be generated during installation.
890 </xs:documentation></xs:annotation>
891 </xs:attribute>
892 <xs:attribute name="Name" use="required" type="xs:string">
893 <xs:annotation><xs:documentation>
894 Name of the subscription.
895 </xs:documentation></xs:annotation>
896 </xs:attribute>
897 <xs:attribute name="EventCLSID" use="optional" type="xs:string">
898 <xs:annotation><xs:documentation>
899 CLSID of the event class for the subscription. If a value
900 for this attribute is not provided, a value for the PublisherID attribute
901 must be provided.
902 </xs:documentation></xs:annotation>
903 </xs:attribute>
904 <xs:attribute name="PublisherID" use="optional" type="xs:string">
905 <xs:annotation><xs:documentation>
906 Publisher id for the subscription. If a value for this
907 attribute is not provided, a value for the EventCLSID attribute must be
908 provided.
909 </xs:documentation></xs:annotation>
910 </xs:attribute>
911 <xs:attribute name="Description" use="optional" type="xs:string" />
912 <xs:attribute name="Enabled" use="optional" type="YesNoType" />
913 <xs:attribute name="EventClassPartitionID" use="optional" type="xs:string" />
914 <xs:attribute name="FilterCriteria" use="optional" type="xs:string" />
915 <xs:attribute name="InterfaceID" use="optional" type="xs:string" />
916 <xs:attribute name="MachineName" use="optional" type="xs:string" />
917 <xs:attribute name="MethodName" use="optional" type="xs:string" />
918 <xs:attribute name="PerUser" use="optional" type="YesNoType" />
919 <xs:attribute name="Queued" use="optional" type="YesNoType" />
920 <xs:attribute name="SubscriberMoniker" use="optional" type="xs:string" />
921 <xs:attribute name="UserName" use="optional" type="xs:string" />
922 </xs:complexType>
923 </xs:element>
924
925 <xs:simpleType name="YesNoType">
926 <xs:annotation>
927 <xs:documentation>Values of this type will either be "yes" or "no".</xs:documentation>
928 </xs:annotation>
929 <xs:restriction base="xs:NMTOKEN">
930 <xs:enumeration value="no" />
931 <xs:enumeration value="yes" />
932 </xs:restriction>
933 </xs:simpleType>
934
935 <xs:simpleType name="uuid">
936 <xs:annotation>
937 <xs:documentation>Values of this type will look like: "01234567-89AB-CDEF-0123-456789ABCDEF".</xs:documentation>
938 </xs:annotation>
939 <xs:restriction base="xs:string">
940 <xs:pattern value="[0-9A-Fa-f]{8}\-?[0-9A-Fa-f]{4}\-?[0-9A-Fa-f]{4}\-?[0-9A-Fa-f]{4}\-?[0-9A-Fa-f]{12}" />
941 </xs:restriction>
942 </xs:simpleType>
943
944</xs:schema>
diff --git a/src/wixlib/ComPlusExtension.wxs b/src/wixlib/ComPlusExtension.wxs
index 2a5710c0..d41e327e 100644
--- a/src/wixlib/ComPlusExtension.wxs
+++ b/src/wixlib/ComPlusExtension.wxs
@@ -1,5 +1,4 @@
1<?xml version="1.0" encoding="utf-8"?> 1<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
2<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3 2
4 3
5<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs"> 4<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs">
@@ -7,72 +6,72 @@
7 6
8 <Fragment> 7 <Fragment>
9 <UI Id="ComPlusUI"> 8 <UI Id="ComPlusUI">
10 <Error Id="$(var.msierrComPlusCannotConnect)">!(loc.msierrComPlusCannotConnect)</Error> 9 <Error Id="$(var.msierrComPlusCannotConnect)" Message="!(loc.msierrComPlusCannotConnect)" />
11 <Error Id="$(var.msierrComPlusPartitionReadFailed)">!(loc.msierrComPlusPartitionReadFailed)</Error> 10 <Error Id="$(var.msierrComPlusPartitionReadFailed)" Message="!(loc.msierrComPlusPartitionReadFailed)" />
12 <Error Id="$(var.msierrComPlusPartitionRoleReadFailed)">!(loc.msierrComPlusPartitionRoleReadFailed)</Error> 11 <Error Id="$(var.msierrComPlusPartitionRoleReadFailed)" Message="!(loc.msierrComPlusPartitionRoleReadFailed)" />
13 <Error Id="$(var.msierrComPlusUserInPartitionRoleReadFailed)">!(loc.msierrComPlusUserInPartitionRoleReadFailed)</Error> 12 <Error Id="$(var.msierrComPlusUserInPartitionRoleReadFailed)" Message="!(loc.msierrComPlusUserInPartitionRoleReadFailed)" />
14 <Error Id="$(var.msierrComPlusPartitionUserReadFailed)">!(loc.msierrComPlusPartitionUserReadFailed)</Error> 13 <Error Id="$(var.msierrComPlusPartitionUserReadFailed)" Message="!(loc.msierrComPlusPartitionUserReadFailed)" />
15 <Error Id="$(var.msierrComPlusApplicationReadFailed)">!(loc.msierrComPlusApplicationReadFailed)</Error> 14 <Error Id="$(var.msierrComPlusApplicationReadFailed)" Message="!(loc.msierrComPlusApplicationReadFailed)" />
16 <Error Id="$(var.msierrComPlusApplicationRoleReadFailed)">!(loc.msierrComPlusApplicationRoleReadFailed)</Error> 15 <Error Id="$(var.msierrComPlusApplicationRoleReadFailed)" Message="!(loc.msierrComPlusApplicationRoleReadFailed)" />
17 <Error Id="$(var.msierrComPlusUserInApplicationRoleReadFailed)">!(loc.msierrComPlusUserInApplicationRoleReadFailed)</Error> 16 <Error Id="$(var.msierrComPlusUserInApplicationRoleReadFailed)" Message="!(loc.msierrComPlusUserInApplicationRoleReadFailed)" />
18 <Error Id="$(var.msierrComPlusAssembliesReadFailed)">!(loc.msierrComPlusAssembliesReadFailed)</Error> 17 <Error Id="$(var.msierrComPlusAssembliesReadFailed)" Message="!(loc.msierrComPlusAssembliesReadFailed)" />
19 <Error Id="$(var.msierrComPlusSubscriptionReadFailed)">!(loc.msierrComPlusSubscriptionReadFailed)</Error> 18 <Error Id="$(var.msierrComPlusSubscriptionReadFailed)" Message="!(loc.msierrComPlusSubscriptionReadFailed)" />
20 <Error Id="$(var.msierrComPlusPartitionDependency)">!(loc.msierrComPlusPartitionDependency)</Error> 19 <Error Id="$(var.msierrComPlusPartitionDependency)" Message="!(loc.msierrComPlusPartitionDependency)" />
21 <Error Id="$(var.msierrComPlusPartitionNotFound)">!(loc.msierrComPlusPartitionNotFound)</Error> 20 <Error Id="$(var.msierrComPlusPartitionNotFound)" Message="!(loc.msierrComPlusPartitionNotFound)" />
22 <Error Id="$(var.msierrComPlusPartitionIdConflict)">!(loc.msierrComPlusPartitionIdConflict)</Error> 21 <Error Id="$(var.msierrComPlusPartitionIdConflict)" Message="!(loc.msierrComPlusPartitionIdConflict)" />
23 <Error Id="$(var.msierrComPlusPartitionNameConflict)">!(loc.msierrComPlusPartitionNameConflict)</Error> 22 <Error Id="$(var.msierrComPlusPartitionNameConflict)" Message="!(loc.msierrComPlusPartitionNameConflict)" />
24 <Error Id="$(var.msierrComPlusApplicationDependency)">!(loc.msierrComPlusApplicationDependency)</Error> 23 <Error Id="$(var.msierrComPlusApplicationDependency)" Message="!(loc.msierrComPlusApplicationDependency)" />
25 <Error Id="$(var.msierrComPlusApplicationNotFound)">!(loc.msierrComPlusApplicationNotFound)</Error> 24 <Error Id="$(var.msierrComPlusApplicationNotFound)" Message="!(loc.msierrComPlusApplicationNotFound)" />
26 <Error Id="$(var.msierrComPlusApplicationIdConflict)">!(loc.msierrComPlusApplicationIdConflict)</Error> 25 <Error Id="$(var.msierrComPlusApplicationIdConflict)" Message="!(loc.msierrComPlusApplicationIdConflict)" />
27 <Error Id="$(var.msierrComPlusApplicationNameConflict)">!(loc.msierrComPlusApplicationNameConflict)</Error> 26 <Error Id="$(var.msierrComPlusApplicationNameConflict)" Message="!(loc.msierrComPlusApplicationNameConflict)" />
28 <Error Id="$(var.msierrComPlusApplicationRoleDependency)">!(loc.msierrComPlusApplicationRoleDependency)</Error> 27 <Error Id="$(var.msierrComPlusApplicationRoleDependency)" Message="!(loc.msierrComPlusApplicationRoleDependency)" />
29 <Error Id="$(var.msierrComPlusApplicationRoleNotFound)">!(loc.msierrComPlusApplicationRoleNotFound)</Error> 28 <Error Id="$(var.msierrComPlusApplicationRoleNotFound)" Message="!(loc.msierrComPlusApplicationRoleNotFound)" />
30 <Error Id="$(var.msierrComPlusApplicationRoleConflict)">!(loc.msierrComPlusApplicationRoleConflict)</Error> 29 <Error Id="$(var.msierrComPlusApplicationRoleConflict)" Message="!(loc.msierrComPlusApplicationRoleConflict)" />
31 <Error Id="$(var.msierrComPlusAssemblyDependency)">!(loc.msierrComPlusAssemblyDependency)</Error> 30 <Error Id="$(var.msierrComPlusAssemblyDependency)" Message="!(loc.msierrComPlusAssemblyDependency)" />
32 <Error Id="$(var.msierrComPlusSubscriptionIdConflict)">!(loc.msierrComPlusSubscriptionIdConflict)</Error> 31 <Error Id="$(var.msierrComPlusSubscriptionIdConflict)" Message="!(loc.msierrComPlusSubscriptionIdConflict)" />
33 <Error Id="$(var.msierrComPlusSubscriptionNameConflict)">!(loc.msierrComPlusSubscriptionNameConflict)</Error> 32 <Error Id="$(var.msierrComPlusSubscriptionNameConflict)" Message="!(loc.msierrComPlusSubscriptionNameConflict)" />
34 <Error Id="$(var.msierrComPlusFailedLookupNames)">!(loc.msierrComPlusFailedLookupNames)</Error> 33 <Error Id="$(var.msierrComPlusFailedLookupNames)" Message="!(loc.msierrComPlusFailedLookupNames)" />
35 34
36 <ProgressText Action="ComPlusInstallExecute">!(loc.ComPlusInstallExecute)</ProgressText> 35 <ProgressText Action="ComPlusInstallExecute" Message="!(loc.ComPlusInstallExecute)" />
37 <ProgressText Action="ComPlusUninstallExecute">!(loc.ComPlusUninstallExecute)</ProgressText> 36 <ProgressText Action="ComPlusUninstallExecute" Message="!(loc.ComPlusUninstallExecute)" />
38 37
39 <ProgressText Action="CreateComPlusPartitions" Template="!(loc.CreateComPlusPartitionsTemplate)">!(loc.CreateComPlusPartitions)</ProgressText> 38 <ProgressText Action="CreateComPlusPartitions" Template="!(loc.CreateComPlusPartitionsTemplate)" Message="!(loc.CreateComPlusPartitions)" />
40 <ProgressText Action="RemoveComPlusPartitions" Template="!(loc.RemoveComPlusPartitionsTemplate)">!(loc.RemoveComPlusPartitions)</ProgressText> 39 <ProgressText Action="RemoveComPlusPartitions" Template="!(loc.RemoveComPlusPartitionsTemplate)" Message="!(loc.RemoveComPlusPartitions)" />
41 <ProgressText Action="AddUsersToComPlusPartitionRoles" Template="!(loc.AddUsersToComPlusPartitionRolesTemplate)">!(loc.AddUsersToComPlusPartitionRoles)</ProgressText> 40 <ProgressText Action="AddUsersToComPlusPartitionRoles" Template="!(loc.AddUsersToComPlusPartitionRolesTemplate)" Message="!(loc.AddUsersToComPlusPartitionRoles)" />
42 <ProgressText Action="RemoveUsersFromComPlusPartRoles" Template="!(loc.RemoveUsersFromComPlusPartitionRolesTemplate)">!(loc.RemoveUsersFromComPlusPartitionRoles)</ProgressText> 41 <ProgressText Action="RemoveUsersFromComPlusPartRoles" Template="!(loc.RemoveUsersFromComPlusPartitionRolesTemplate)" Message="!(loc.RemoveUsersFromComPlusPartitionRoles)" />
43 <ProgressText Action="AddComPlusPartitionUsers" Template="!(loc.AddComPlusPartitionUsersTemplate)">!(loc.AddComPlusPartitionUsers)</ProgressText> 42 <ProgressText Action="AddComPlusPartitionUsers" Template="!(loc.AddComPlusPartitionUsersTemplate)" Message="!(loc.AddComPlusPartitionUsers)" />
44 <ProgressText Action="RemoveComPlusPartitionUsers" Template="!(loc.RemoveComPlusPartitionUsersTemplate)">!(loc.RemoveComPlusPartitionUsers)</ProgressText> 43 <ProgressText Action="RemoveComPlusPartitionUsers" Template="!(loc.RemoveComPlusPartitionUsersTemplate)" Message="!(loc.RemoveComPlusPartitionUsers)" />
45 <ProgressText Action="CreateComPlusApplications" Template="!(loc.CreateComPlusApplicationsTemplate)">!(loc.CreateComPlusApplications)</ProgressText> 44 <ProgressText Action="CreateComPlusApplications" Template="!(loc.CreateComPlusApplicationsTemplate)" Message="!(loc.CreateComPlusApplications)" />
46 <ProgressText Action="RemoveComPlusApplications" Template="!(loc.RemoveComPlusApplicationsTemplate)">!(loc.RemoveComPlusApplications)</ProgressText> 45 <ProgressText Action="RemoveComPlusApplications" Template="!(loc.RemoveComPlusApplicationsTemplate)" Message="!(loc.RemoveComPlusApplications)" />
47 <ProgressText Action="CreateComPlusApplicationRoles" Template="!(loc.CreateComPlusApplicationRolesTemplate)">!(loc.CreateComPlusApplicationRoles)</ProgressText> 46 <ProgressText Action="CreateComPlusApplicationRoles" Template="!(loc.CreateComPlusApplicationRolesTemplate)" Message="!(loc.CreateComPlusApplicationRoles)" />
48 <ProgressText Action="RemoveComPlusApplicationRoles" Template="!(loc.RemoveComPlusApplicationRolesTemplate)">!(loc.RemoveComPlusApplicationRoles)</ProgressText> 47 <ProgressText Action="RemoveComPlusApplicationRoles" Template="!(loc.RemoveComPlusApplicationRolesTemplate)" Message="!(loc.RemoveComPlusApplicationRoles)" />
49 <ProgressText Action="AddUsersToComPlusApplicationRoles" Template="!(loc.AddUsersToComPlusApplicationRolesTemplate)">!(loc.AddUsersToComPlusApplicationRoles)</ProgressText> 48 <ProgressText Action="AddUsersToComPlusApplicationRoles" Template="!(loc.AddUsersToComPlusApplicationRolesTemplate)" Message="!(loc.AddUsersToComPlusApplicationRoles)" />
50 <ProgressText Action="RemoveUsersFromComPlusAppRoles" Template="!(loc.RemoveUsersFromComPlusApplicationRolesTemplate)">!(loc.RemoveUsersFromComPlusApplicationRoles)</ProgressText> 49 <ProgressText Action="RemoveUsersFromComPlusAppRoles" Template="!(loc.RemoveUsersFromComPlusApplicationRolesTemplate)" Message="!(loc.RemoveUsersFromComPlusApplicationRoles)" />
51 <ProgressText Action="RegisterComPlusAssemblies" Template="!(loc.RegisterComPlusAssembliesTemplate)">!(loc.RegisterComPlusAssemblies)</ProgressText> 50 <ProgressText Action="RegisterComPlusAssemblies" Template="!(loc.RegisterComPlusAssembliesTemplate)" Message="!(loc.RegisterComPlusAssemblies)" />
52 <ProgressText Action="UnregisterComPlusAssemblies" Template="!(loc.UnregisterComPlusAssembliesTemplate)">!(loc.UnregisterComPlusAssemblies)</ProgressText> 51 <ProgressText Action="UnregisterComPlusAssemblies" Template="!(loc.UnregisterComPlusAssembliesTemplate)" Message="!(loc.UnregisterComPlusAssemblies)" />
53 <ProgressText Action="AddComPlusRoleAssignments" Template="!(loc.AddComPlusRoleAssignmentsTemplate)">!(loc.AddComPlusRoleAssignments)</ProgressText> 52 <ProgressText Action="AddComPlusRoleAssignments" Template="!(loc.AddComPlusRoleAssignmentsTemplate)" Message="!(loc.AddComPlusRoleAssignments)" />
54 <ProgressText Action="RemoveComPlusRoleAssignments" Template="!(loc.RemoveComPlusRoleAssignmentsTemplate)">!(loc.RemoveComPlusRoleAssignments)</ProgressText> 53 <ProgressText Action="RemoveComPlusRoleAssignments" Template="!(loc.RemoveComPlusRoleAssignmentsTemplate)" Message="!(loc.RemoveComPlusRoleAssignments)" />
55 <ProgressText Action="CreateSubscrComPlusComponents" Template="!(loc.CreateSubscriptionsComPlusComponentsTemplate)">!(loc.CreateSubscriptionsComPlusComponents)</ProgressText> 54 <ProgressText Action="CreateSubscrComPlusComponents" Template="!(loc.CreateSubscriptionsComPlusComponentsTemplate)" Message="!(loc.CreateSubscriptionsComPlusComponents)" />
56 <ProgressText Action="RemoveSubscrComPlusComponents" Template="!(loc.RemoveSubscriptionsComPlusComponentsTemplate)">!(loc.RemoveSubscriptionsComPlusComponents)</ProgressText> 55 <ProgressText Action="RemoveSubscrComPlusComponents" Template="!(loc.RemoveSubscriptionsComPlusComponentsTemplate)" Message="!(loc.RemoveSubscriptionsComPlusComponents)" />
57 </UI> 56 </UI>
58 </Fragment> 57 </Fragment>
59 58
60 <Fragment> 59 <Fragment>
61 <UIRef Id="ComPlusUI" /> 60 <UIRef Id="ComPlusUI" />
62 61
63 <CustomAction Id="ConfigureComPlusInstall" BinaryKey="ComPlusCA_x86" DllEntry="ConfigureComPlusInstall" Execute="immediate" Return="check" SuppressModularization="yes" /> 62 <CustomAction Id="ConfigureComPlusInstall" DllEntry="ConfigureComPlusInstall" Execute="immediate" Return="check" SuppressModularization="yes" BinaryRef="ComPlusCA_x86" />
64 <CustomAction Id="ConfigureComPlusUninstall" BinaryKey="ComPlusCA_x86" DllEntry="ConfigureComPlusUninstall" Execute="immediate" Return="check" SuppressModularization="yes" /> 63 <CustomAction Id="ConfigureComPlusUninstall" DllEntry="ConfigureComPlusUninstall" Execute="immediate" Return="check" SuppressModularization="yes" BinaryRef="ComPlusCA_x86" />
65 <CustomAction Id="ComPlusInstallPrepare" BinaryKey="ComPlusCA_x86" DllEntry="ComPlusPrepare" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> 64 <CustomAction Id="ComPlusInstallPrepare" DllEntry="ComPlusPrepare" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" BinaryRef="ComPlusCA_x86" />
66 <CustomAction Id="ComPlusRollbackInstallPrepare" BinaryKey="ComPlusCA_x86" DllEntry="ComPlusCleanup" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> 65 <CustomAction Id="ComPlusRollbackInstallPrepare" DllEntry="ComPlusCleanup" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" BinaryRef="ComPlusCA_x86" />
67 <CustomAction Id="ComPlusInstallExecute" BinaryKey="ComPlusCA_x86" DllEntry="ComPlusInstallExecute" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> 66 <CustomAction Id="ComPlusInstallExecute" DllEntry="ComPlusInstallExecute" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" BinaryRef="ComPlusCA_x86" />
68 <CustomAction Id="ComPlusInstallExecuteCommit" BinaryKey="ComPlusCA_x86" DllEntry="ComPlusInstallExecuteCommit" Execute="commit" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> 67 <CustomAction Id="ComPlusInstallExecuteCommit" DllEntry="ComPlusInstallExecuteCommit" Execute="commit" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" BinaryRef="ComPlusCA_x86" />
69 <CustomAction Id="ComPlusRollbackInstallExecute" BinaryKey="ComPlusCA_x86" DllEntry="ComPlusRollbackInstallExecute" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> 68 <CustomAction Id="ComPlusRollbackInstallExecute" DllEntry="ComPlusRollbackInstallExecute" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" BinaryRef="ComPlusCA_x86" />
70 <CustomAction Id="ComPlusInstallCommit" BinaryKey="ComPlusCA_x86" DllEntry="ComPlusCleanup" Execute="commit" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> 69 <CustomAction Id="ComPlusInstallCommit" DllEntry="ComPlusCleanup" Execute="commit" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" BinaryRef="ComPlusCA_x86" />
71 <CustomAction Id="ComPlusUninstallPrepare" BinaryKey="ComPlusCA_x86" DllEntry="ComPlusPrepare" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> 70 <CustomAction Id="ComPlusUninstallPrepare" DllEntry="ComPlusPrepare" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" BinaryRef="ComPlusCA_x86" />
72 <CustomAction Id="ComPlusRollbackUninstallPrepare" BinaryKey="ComPlusCA_x86" DllEntry="ComPlusCleanup" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> 71 <CustomAction Id="ComPlusRollbackUninstallPrepare" DllEntry="ComPlusCleanup" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" BinaryRef="ComPlusCA_x86" />
73 <CustomAction Id="ComPlusUninstallExecute" BinaryKey="ComPlusCA_x86" DllEntry="ComPlusUninstallExecute" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> 72 <CustomAction Id="ComPlusUninstallExecute" DllEntry="ComPlusUninstallExecute" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" BinaryRef="ComPlusCA_x86" />
74 <CustomAction Id="ComPlusRollbackUninstallExecute" BinaryKey="ComPlusCA_x86" DllEntry="ComPlusInstallExecute" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> 73 <CustomAction Id="ComPlusRollbackUninstallExecute" DllEntry="ComPlusInstallExecute" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" BinaryRef="ComPlusCA_x86" />
75 <CustomAction Id="ComPlusUninstallCommit" BinaryKey="ComPlusCA_x86" DllEntry="ComPlusCleanup" Execute="commit" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> 74 <CustomAction Id="ComPlusUninstallCommit" DllEntry="ComPlusCleanup" Execute="commit" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" BinaryRef="ComPlusCA_x86" />
76 75
77 <Property Id="ComPlusInstallPrepare" Hidden="yes" SuppressModularization="yes" /> 76 <Property Id="ComPlusInstallPrepare" Hidden="yes" SuppressModularization="yes" />
78 <Property Id="ComPlusRollbackInstallPrepare" Hidden="yes" SuppressModularization="yes" /> 77 <Property Id="ComPlusRollbackInstallPrepare" Hidden="yes" SuppressModularization="yes" />
@@ -87,27 +86,27 @@
87 <Property Id="ComPlusUninstallCommit" Hidden="yes" SuppressModularization="yes" /> 86 <Property Id="ComPlusUninstallCommit" Hidden="yes" SuppressModularization="yes" />
88 87
89 <InstallExecuteSequence> 88 <InstallExecuteSequence>
90 <Custom Action="ConfigureComPlusUninstall" After="DeleteServices" Overridable="yes">VersionNT >= 500</Custom> 89 <Custom Action="ConfigureComPlusUninstall" After="DeleteServices" Overridable="yes" Condition="VersionNT &gt;= 500" />
91 <Custom Action="ConfigureComPlusInstall" Before="InstallServices" Overridable="yes">VersionNT >= 500</Custom> 90 <Custom Action="ConfigureComPlusInstall" Before="InstallServices" Overridable="yes" Condition="VersionNT &gt;= 500" />
92 </InstallExecuteSequence> 91 </InstallExecuteSequence>
93 </Fragment> 92 </Fragment>
94 93
95 <Fragment> 94 <Fragment>
96 <UIRef Id="ComPlusUI" /> 95 <UIRef Id="ComPlusUI" />
97 96
98 <CustomAction Id="ConfigureComPlusInstall_x64" BinaryKey="ComPlusCA_x64" DllEntry="ConfigureComPlusInstall" Execute="immediate" Return="check" SuppressModularization="yes" /> 97 <CustomAction Id="ConfigureComPlusInstall_x64" DllEntry="ConfigureComPlusInstall" Execute="immediate" Return="check" SuppressModularization="yes" BinaryRef="ComPlusCA_x64" />
99 <CustomAction Id="ConfigureComPlusUninstall_x64" BinaryKey="ComPlusCA_x64" DllEntry="ConfigureComPlusUninstall" Execute="immediate" Return="check" SuppressModularization="yes" /> 98 <CustomAction Id="ConfigureComPlusUninstall_x64" DllEntry="ConfigureComPlusUninstall" Execute="immediate" Return="check" SuppressModularization="yes" BinaryRef="ComPlusCA_x64" />
100 <CustomAction Id="ComPlusInstallPrepare_64" BinaryKey="ComPlusCA_x64" DllEntry="ComPlusPrepare" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> 99 <CustomAction Id="ComPlusInstallPrepare_64" DllEntry="ComPlusPrepare" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" BinaryRef="ComPlusCA_x64" />
101 <CustomAction Id="ComPlusRollbackInstallPrepare_64" BinaryKey="ComPlusCA_x64" DllEntry="ComPlusCleanup" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> 100 <CustomAction Id="ComPlusRollbackInstallPrepare_64" DllEntry="ComPlusCleanup" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" BinaryRef="ComPlusCA_x64" />
102 <CustomAction Id="ComPlusInstallExecute_64" BinaryKey="ComPlusCA_x64" DllEntry="ComPlusInstallExecute" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> 101 <CustomAction Id="ComPlusInstallExecute_64" DllEntry="ComPlusInstallExecute" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" BinaryRef="ComPlusCA_x64" />
103 <CustomAction Id="ComPlusInstallExecuteCommit_64" BinaryKey="ComPlusCA_x64" DllEntry="ComPlusInstallExecuteCommit" Execute="commit" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> 102 <CustomAction Id="ComPlusInstallExecuteCommit_64" DllEntry="ComPlusInstallExecuteCommit" Execute="commit" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" BinaryRef="ComPlusCA_x64" />
104 <CustomAction Id="ComPlusRollbackInstallExecute_64" BinaryKey="ComPlusCA_x64" DllEntry="ComPlusRollbackInstallExecute" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> 103 <CustomAction Id="ComPlusRollbackInstallExecute_64" DllEntry="ComPlusRollbackInstallExecute" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" BinaryRef="ComPlusCA_x64" />
105 <CustomAction Id="ComPlusInstallCommit_64" BinaryKey="ComPlusCA_x64" DllEntry="ComPlusCleanup" Execute="commit" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> 104 <CustomAction Id="ComPlusInstallCommit_64" DllEntry="ComPlusCleanup" Execute="commit" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" BinaryRef="ComPlusCA_x64" />
106 <CustomAction Id="ComPlusUninstallPrepare_64" BinaryKey="ComPlusCA_x64" DllEntry="ComPlusPrepare" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> 105 <CustomAction Id="ComPlusUninstallPrepare_64" DllEntry="ComPlusPrepare" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" BinaryRef="ComPlusCA_x64" />
107 <CustomAction Id="ComPlusRollbackUninstallPrepare_64" BinaryKey="ComPlusCA_x64" DllEntry="ComPlusCleanup" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> 106 <CustomAction Id="ComPlusRollbackUninstallPrepare_64" DllEntry="ComPlusCleanup" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" BinaryRef="ComPlusCA_x64" />
108 <CustomAction Id="ComPlusUninstallExecute_64" BinaryKey="ComPlusCA_x64" DllEntry="ComPlusUninstallExecute" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> 107 <CustomAction Id="ComPlusUninstallExecute_64" DllEntry="ComPlusUninstallExecute" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" BinaryRef="ComPlusCA_x64" />
109 <CustomAction Id="ComPlusRollbackUninstallExecute_64" BinaryKey="ComPlusCA_x64" DllEntry="ComPlusInstallExecute" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> 108 <CustomAction Id="ComPlusRollbackUninstallExecute_64" DllEntry="ComPlusInstallExecute" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" BinaryRef="ComPlusCA_x64" />
110 <CustomAction Id="ComPlusUninstallCommit_64" BinaryKey="ComPlusCA_x64" DllEntry="ComPlusCleanup" Execute="commit" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> 109 <CustomAction Id="ComPlusUninstallCommit_64" DllEntry="ComPlusCleanup" Execute="commit" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" BinaryRef="ComPlusCA_x64" />
111 110
112 <Property Id="ComPlusInstallPrepare_64" Hidden="yes" SuppressModularization="yes" /> 111 <Property Id="ComPlusInstallPrepare_64" Hidden="yes" SuppressModularization="yes" />
113 <Property Id="ComPlusRollbackInstallPrepare_64" Hidden="yes" SuppressModularization="yes" /> 112 <Property Id="ComPlusRollbackInstallPrepare_64" Hidden="yes" SuppressModularization="yes" />
@@ -122,16 +121,16 @@
122 <Property Id="ComPlusUninstallCommit_64" Hidden="yes" SuppressModularization="yes" /> 121 <Property Id="ComPlusUninstallCommit_64" Hidden="yes" SuppressModularization="yes" />
123 122
124 <InstallExecuteSequence> 123 <InstallExecuteSequence>
125 <Custom Action="ConfigureComPlusUninstall_x64" After="DeleteServices" Overridable="yes">VersionNT >= 500</Custom> 124 <Custom Action="ConfigureComPlusUninstall_x64" After="DeleteServices" Overridable="yes" Condition="VersionNT &gt;= 500" />
126 <Custom Action="ConfigureComPlusInstall_x64" Before="InstallServices" Overridable="yes">VersionNT >= 500</Custom> 125 <Custom Action="ConfigureComPlusInstall_x64" Before="InstallServices" Overridable="yes" Condition="VersionNT &gt;= 500" />
127 </InstallExecuteSequence> 126 </InstallExecuteSequence>
128 </Fragment> 127 </Fragment>
129 128
130 <Fragment> 129 <Fragment>
131 <Binary Id="ComPlusCA_x86" SourceFile="!(bindpath.x86)complusca.dll"/> 130 <Binary Id="ComPlusCA_x86" SourceFile="!(bindpath.x86)complusca.dll" />
132 </Fragment> 131 </Fragment>
133 132
134 <Fragment> 133 <Fragment>
135 <Binary Id="ComPlusCA_x64" SourceFile="!(bindpath.x64)complusca.dll"/> 134 <Binary Id="ComPlusCA_x64" SourceFile="!(bindpath.x64)complusca.dll" />
136 </Fragment> 135 </Fragment>
137</Wix> 136</Wix>
diff --git a/src/wixlib/caerr.wxi b/src/wixlib/caerr.wxi
index 141942f2..ff7ec121 100644
--- a/src/wixlib/caerr.wxi
+++ b/src/wixlib/caerr.wxi
@@ -1,4 +1,4 @@
1<Include> 1<Include xmlns="http://wixtoolset.org/schemas/v4/wxs">
2 <?define msierrSecureObjectsFailedCreateSD = 25520?> 2 <?define msierrSecureObjectsFailedCreateSD = 25520?>
3 <?define msierrSecureObjectsFailedSet = 25521?> 3 <?define msierrSecureObjectsFailedSet = 25521?>
4 <?define msierrSecureObjectsUnknownType = 25522?> 4 <?define msierrSecureObjectsUnknownType = 25522?>