diff options
author | Sean Hall <r.sean.hall@gmail.com> | 2019-02-04 20:06:58 -0600 |
---|---|---|
committer | Sean Hall <r.sean.hall@gmail.com> | 2019-02-04 20:11:32 -0600 |
commit | c239e0cc3a28a50c42c63b086ee62e17cf699104 (patch) | |
tree | 5ba3e85a9bb1aef22a9162629b248a8e27e2c43f | |
parent | cbc09b6cd6d0d0b8bf095a88d4d8333616637f71 (diff) | |
download | wix-c239e0cc3a28a50c42c63b086ee62e17cf699104.tar.gz wix-c239e0cc3a28a50c42c63b086ee62e17cf699104.tar.bz2 wix-c239e0cc3a28a50c42c63b086ee62e17cf699104.zip |
Integrate into latest v4.
80 files changed, 3717 insertions, 1047 deletions
diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 00000000..1d72e683 --- /dev/null +++ b/.editorconfig | |||
@@ -0,0 +1,37 @@ | |||
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 | # | ||
3 | # Do NOT modify this file. Update the canonical version in Home\repo-template\src\.editorconfig | ||
4 | # then update all of the repos. | ||
5 | |||
6 | root = true | ||
7 | |||
8 | [*] | ||
9 | charset = utf-8 | ||
10 | indent_style = space | ||
11 | indent_size = 4 | ||
12 | trim_trailing_whitespace = true | ||
13 | |||
14 | [*.{cs,vb}] | ||
15 | dotnet_sort_system_directives_first = true | ||
16 | |||
17 | [*.cs] | ||
18 | csharp_indent_case_contents = true : error | ||
19 | csharp_indent_switch_labels = true : error | ||
20 | csharp_new_line_before_open_brace = all | ||
21 | csharp_prefer_braces = true : error | ||
22 | csharp_style_expression_bodied_methods = when_on_single_line : suggestion | ||
23 | csharp_style_expression_bodied_constructors = when_on_single_line : suggestion | ||
24 | csharp_style_expression_bodied_operators = when_on_single_line : suggestion | ||
25 | csharp_style_expression_bodied_properties = when_on_single_line : suggestion | ||
26 | csharp_style_expression_bodied_indexers = when_on_single_line : suggestion | ||
27 | csharp_style_expression_bodied_accessors = when_on_single_line : suggestion | ||
28 | csharp_style_var_elsewhere = true : suggestion | ||
29 | csharp_style_var_for_built_in_types = true : suggestion | ||
30 | csharp_style_var_when_type_is_apparent = true : suggestion | ||
31 | dotnet_style_qualification_for_event = true : error | ||
32 | dotnet_style_qualification_for_field = true : error | ||
33 | dotnet_style_qualification_for_method = true : error | ||
34 | dotnet_style_qualification_for_property = true : error | ||
35 | |||
36 | [*.targets] | ||
37 | indent_size = 2 | ||
diff --git a/ComPlus.wixext.sln b/ComPlus.wixext.sln new file mode 100644 index 00000000..f117e399 --- /dev/null +++ b/ComPlus.wixext.sln | |||
@@ -0,0 +1,64 @@ | |||
1 | | ||
2 | Microsoft Visual Studio Solution File, Format Version 12.00 | ||
3 | # Visual Studio 15 | ||
4 | VisualStudioVersion = 15.0.28010.2016 | ||
5 | MinimumVisualStudioVersion = 10.0.40219.1 | ||
6 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "complusca", "src\ca\complusca.vcxproj", "{BDEF51ED-E242-4FA2-801A-01B127DF851A}" | ||
7 | EndProject | ||
8 | Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "complus", "src\wixlib\complus.wixproj", "{E191E61E-E098-4F71-888F-51A79F952022}" | ||
9 | ProjectSection(ProjectDependencies) = postProject | ||
10 | {BDEF51ED-E242-4FA2-801A-01B127DF851A} = {BDEF51ED-E242-4FA2-801A-01B127DF851A} | ||
11 | EndProjectSection | ||
12 | EndProject | ||
13 | Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WixToolset.ComPlus.wixext", "src\wixext\WixToolset.ComPlus.wixext.csproj", "{1497B777-330B-4CFE-927A-22850CD24D64}" | ||
14 | EndProject | ||
15 | Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WixToolsetTest.ComPlus", "src\test\WixToolsetTest.ComPlus\WixToolsetTest.ComPlus.csproj", "{2FC5F039-EACF-428B-BA87-8CDE1D25E121}" | ||
16 | EndProject | ||
17 | Global | ||
18 | GlobalSection(SolutionConfigurationPlatforms) = preSolution | ||
19 | Debug|Any CPU = Debug|Any CPU | ||
20 | Debug|x86 = Debug|x86 | ||
21 | Release|Any CPU = Release|Any CPU | ||
22 | Release|x86 = Release|x86 | ||
23 | EndGlobalSection | ||
24 | GlobalSection(ProjectConfigurationPlatforms) = postSolution | ||
25 | {BDEF51ED-E242-4FA2-801A-01B127DF851A}.Debug|Any CPU.ActiveCfg = Debug|Win32 | ||
26 | {BDEF51ED-E242-4FA2-801A-01B127DF851A}.Debug|Any CPU.Build.0 = Debug|Win32 | ||
27 | {BDEF51ED-E242-4FA2-801A-01B127DF851A}.Debug|x86.ActiveCfg = Debug|Win32 | ||
28 | {BDEF51ED-E242-4FA2-801A-01B127DF851A}.Debug|x86.Build.0 = Debug|Win32 | ||
29 | {BDEF51ED-E242-4FA2-801A-01B127DF851A}.Release|Any CPU.ActiveCfg = Release|Win32 | ||
30 | {BDEF51ED-E242-4FA2-801A-01B127DF851A}.Release|Any CPU.Build.0 = Release|Win32 | ||
31 | {BDEF51ED-E242-4FA2-801A-01B127DF851A}.Release|x86.ActiveCfg = Release|Win32 | ||
32 | {BDEF51ED-E242-4FA2-801A-01B127DF851A}.Release|x86.Build.0 = Release|Win32 | ||
33 | {E191E61E-E098-4F71-888F-51A79F952022}.Debug|Any CPU.ActiveCfg = Debug|x86 | ||
34 | {E191E61E-E098-4F71-888F-51A79F952022}.Debug|Any CPU.Build.0 = Debug|x86 | ||
35 | {E191E61E-E098-4F71-888F-51A79F952022}.Debug|x86.ActiveCfg = Debug|x86 | ||
36 | {E191E61E-E098-4F71-888F-51A79F952022}.Debug|x86.Build.0 = Debug|x86 | ||
37 | {E191E61E-E098-4F71-888F-51A79F952022}.Release|Any CPU.ActiveCfg = Release|x86 | ||
38 | {E191E61E-E098-4F71-888F-51A79F952022}.Release|Any CPU.Build.0 = Release|x86 | ||
39 | {E191E61E-E098-4F71-888F-51A79F952022}.Release|x86.ActiveCfg = Release|x86 | ||
40 | {E191E61E-E098-4F71-888F-51A79F952022}.Release|x86.Build.0 = Release|x86 | ||
41 | {1497B777-330B-4CFE-927A-22850CD24D64}.Debug|Any CPU.ActiveCfg = Debug|Any CPU | ||
42 | {1497B777-330B-4CFE-927A-22850CD24D64}.Debug|Any CPU.Build.0 = Debug|Any CPU | ||
43 | {1497B777-330B-4CFE-927A-22850CD24D64}.Debug|x86.ActiveCfg = Debug|Any CPU | ||
44 | {1497B777-330B-4CFE-927A-22850CD24D64}.Debug|x86.Build.0 = Debug|Any CPU | ||
45 | {1497B777-330B-4CFE-927A-22850CD24D64}.Release|Any CPU.ActiveCfg = Release|Any CPU | ||
46 | {1497B777-330B-4CFE-927A-22850CD24D64}.Release|Any CPU.Build.0 = Release|Any CPU | ||
47 | {1497B777-330B-4CFE-927A-22850CD24D64}.Release|x86.ActiveCfg = Release|Any CPU | ||
48 | {1497B777-330B-4CFE-927A-22850CD24D64}.Release|x86.Build.0 = Release|Any CPU | ||
49 | {2FC5F039-EACF-428B-BA87-8CDE1D25E121}.Debug|Any CPU.ActiveCfg = Debug|Any CPU | ||
50 | {2FC5F039-EACF-428B-BA87-8CDE1D25E121}.Debug|Any CPU.Build.0 = Debug|Any CPU | ||
51 | {2FC5F039-EACF-428B-BA87-8CDE1D25E121}.Debug|x86.ActiveCfg = Debug|Any CPU | ||
52 | {2FC5F039-EACF-428B-BA87-8CDE1D25E121}.Debug|x86.Build.0 = Debug|Any CPU | ||
53 | {2FC5F039-EACF-428B-BA87-8CDE1D25E121}.Release|Any CPU.ActiveCfg = Release|Any CPU | ||
54 | {2FC5F039-EACF-428B-BA87-8CDE1D25E121}.Release|Any CPU.Build.0 = Release|Any CPU | ||
55 | {2FC5F039-EACF-428B-BA87-8CDE1D25E121}.Release|x86.ActiveCfg = Release|Any CPU | ||
56 | {2FC5F039-EACF-428B-BA87-8CDE1D25E121}.Release|x86.Build.0 = Release|Any CPU | ||
57 | EndGlobalSection | ||
58 | GlobalSection(SolutionProperties) = preSolution | ||
59 | HideSolutionNode = FALSE | ||
60 | EndGlobalSection | ||
61 | GlobalSection(ExtensibilityGlobals) = postSolution | ||
62 | SolutionGuid = {3E1857C4-5EE1-4C9E-9390-9954E041546D} | ||
63 | EndGlobalSection | ||
64 | EndGlobal | ||
diff --git a/appveyor.cmd b/appveyor.cmd new file mode 100644 index 00000000..8a48fe2b --- /dev/null +++ b/appveyor.cmd | |||
@@ -0,0 +1,16 @@ | |||
1 | @setlocal | ||
2 | @pushd %~dp0 | ||
3 | |||
4 | nuget restore | ||
5 | |||
6 | msbuild -p:Configuration=Release -t:Restore | ||
7 | |||
8 | msbuild -p:Configuration=Release -p:Platform=Win32 src\ca\complusca.vcxproj | ||
9 | msbuild -p:Configuration=Release -p:Platform=x64 src\ca\complusca.vcxproj | ||
10 | |||
11 | msbuild -p:Configuration=Release src\test\WixToolsetTest.ComPlus\WixToolsetTest.ComPlus.csproj | ||
12 | |||
13 | msbuild -p:Configuration=Release -t:Pack src\wixext\WixToolset.ComPlus.wixext.csproj | ||
14 | |||
15 | @popd | ||
16 | @endlocal \ No newline at end of file | ||
diff --git a/appveyor.yml b/appveyor.yml new file mode 100644 index 00000000..8d80c6af --- /dev/null +++ b/appveyor.yml | |||
@@ -0,0 +1,42 @@ | |||
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 | # | ||
3 | # Do NOT modify this file. Update the canonical version in Home\repo-template\src\appveyor.yml | ||
4 | # then update all of the repos. | ||
5 | |||
6 | branches: | ||
7 | only: | ||
8 | - master | ||
9 | - develop | ||
10 | |||
11 | image: Visual Studio 2017 | ||
12 | |||
13 | version: 0.0.0.{build} | ||
14 | configuration: Release | ||
15 | |||
16 | environment: | ||
17 | DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true | ||
18 | DOTNET_CLI_TELEMETRY_OPTOUT: 1 | ||
19 | NUGET_XMLDOC_MODE: skip | ||
20 | |||
21 | build_script: | ||
22 | - appveyor.cmd | ||
23 | |||
24 | pull_requests: | ||
25 | do_not_increment_build_number: true | ||
26 | |||
27 | nuget: | ||
28 | disable_publish_on_pr: true | ||
29 | |||
30 | skip_branch_with_pr: true | ||
31 | skip_tags: true | ||
32 | |||
33 | artifacts: | ||
34 | - path: build\Release\**\*.nupkg | ||
35 | name: nuget | ||
36 | - path: build\Release\**\*.msi | ||
37 | name: msi | ||
38 | |||
39 | notifications: | ||
40 | - provider: Slack | ||
41 | incoming_webhook: | ||
42 | secure: p5xuu+4x2JHfwGDMDe5KcG1k7gZxqYc4jWVwvyNZv5cvkubPD2waJs5yXMAXZNN7Z63/3PWHb7q4KoY/99AjauYa1nZ4c5qYqRPFRBKTHfA= | ||
diff --git a/nuget.config b/nuget.config new file mode 100644 index 00000000..aaee3228 --- /dev/null +++ b/nuget.config | |||
@@ -0,0 +1,16 @@ | |||
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | <configuration> | ||
3 | <packageSources> | ||
4 | <clear /> | ||
5 | <add key="wixtoolset-data" value="https://ci.appveyor.com/nuget/wixtoolset-data" /> | ||
6 | <add key="wixtoolset-extensibility" value="https://ci.appveyor.com/nuget/wixtoolset-extensibility" /> | ||
7 | <add key="wixtoolset-core" value="https://ci.appveyor.com/nuget/wixtoolset-core" /> | ||
8 | <add key="wixtoolset-core-native" value="https://ci.appveyor.com/nuget/wixtoolset-core-native" /> | ||
9 | <add key="wixtoolset-dtf" value="https://ci.appveyor.com/nuget/wixtoolset-dtf" /> | ||
10 | <add key="wixtoolset-dutil" value="https://ci.appveyor.com/nuget/wixtoolset-dutil" /> | ||
11 | <add key="wixtoolset-wcautil" value="https://ci.appveyor.com/nuget/wixtoolset-wcautil" /> | ||
12 | <add key="wixtoolset-tools" value="https://ci.appveyor.com/nuget/wixtoolset-tools" /> | ||
13 | <add key="wixbuildtools" value="https://ci.appveyor.com/nuget/wixbuildtools" /> | ||
14 | <add key="api.nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" /> | ||
15 | </packageSources> | ||
16 | </configuration> \ No newline at end of file | ||
diff --git a/src/Cpp.Build.props b/src/Cpp.Build.props new file mode 100644 index 00000000..c6ced58e --- /dev/null +++ b/src/Cpp.Build.props | |||
@@ -0,0 +1,106 @@ | |||
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 | <Project> | ||
5 | <PropertyGroup> | ||
6 | <Platform Condition=" '$(Platform)' == '' OR '$(Platform)' == 'AnyCPU' OR '$(Platform)' == 'x86' ">Win32</Platform> | ||
7 | <NormalizedPlatform Condition=" '$(Platform)'=='Win32' ">x86</NormalizedPlatform> | ||
8 | <NormalizedPlatform Condition=" '$(NormalizedPlatform)'=='' ">$(Platform)</NormalizedPlatform> | ||
9 | <IntDir>$(BaseIntermediateOutputPath)$(Configuration)\$(NormalizedPlatform)\</IntDir> | ||
10 | <OutDir>$(OutputPath)$(NormalizedPlatform)\</OutDir> | ||
11 | </PropertyGroup> | ||
12 | |||
13 | <PropertyGroup Condition="'$(WindowsTargetPlatformVersion)'=='' AND '$(VisualStudioVersion)'=='15.0'"> | ||
14 | <WindowsTargetPlatformVersion>$([Microsoft.Build.Utilities.ToolLocationHelper]::GetLatestSDKTargetPlatformVersion('Windows', '10.0'))</WindowsTargetPlatformVersion> | ||
15 | </PropertyGroup> | ||
16 | |||
17 | <ItemDefinitionGroup> | ||
18 | <ClCompile> | ||
19 | <DisableSpecificWarnings>$(DisableSpecificCompilerWarnings)</DisableSpecificWarnings> | ||
20 | <WarningLevel>Level4</WarningLevel> | ||
21 | <AdditionalIncludeDirectories>$(ProjectDir)inc;$(MSBuildProjectDirectory);$(IntDir);$(SqlCESdkIncludePath);$(ProjectAdditionalIncludeDirectories);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | ||
22 | <PreprocessorDefinitions>WIN32;_WINDOWS;_WIN32_MSI=500;_WIN32_WINNT=0x0501;$(ArmPreprocessorDefinitions);$(UnicodePreprocessorDefinitions);_CRT_STDIO_LEGACY_WIDE_SPECIFIERS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | ||
23 | <PrecompiledHeader>Use</PrecompiledHeader> | ||
24 | <PrecompiledHeaderFile>precomp.h</PrecompiledHeaderFile> | ||
25 | <CallingConvention Condition="'$(Platform)'=='Win32'">StdCall</CallingConvention> | ||
26 | <TreatWarningAsError>true</TreatWarningAsError> | ||
27 | <ExceptionHandling>false</ExceptionHandling> | ||
28 | <AdditionalOptions>-YlprecompDefine</AdditionalOptions> | ||
29 | <AdditionalOptions Condition=" $(PlatformToolset.StartsWith('v14')) ">/Zc:threadSafeInit- %(AdditionalOptions)</AdditionalOptions> | ||
30 | <MultiProcessorCompilation Condition=" $(NUMBER_OF_PROCESSORS) > 4 ">true</MultiProcessorCompilation> | ||
31 | </ClCompile> | ||
32 | <ResourceCompile> | ||
33 | <PreprocessorDefinitions>$(ArmPreprocessorDefinitions);%(PreprocessorDefinitions)</PreprocessorDefinitions> | ||
34 | <AdditionalIncludeDirectories>$(ProjectAdditionalResourceIncludeDirectories);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | ||
35 | </ResourceCompile> | ||
36 | <Lib> | ||
37 | <AdditionalLibraryDirectories>$(OutDir);$(AdditionalMultiTargetLibraryPath);$(ProjectAdditionalLibraryDirectories);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories> | ||
38 | </Lib> | ||
39 | <Link> | ||
40 | <SubSystem>$(ProjectSubSystem)</SubSystem> | ||
41 | <ModuleDefinitionFile>$(ProjectModuleDefinitionFile)</ModuleDefinitionFile> | ||
42 | <NoEntryPoint>$(ResourceOnlyDll)</NoEntryPoint> | ||
43 | <GenerateDebugInformation>true</GenerateDebugInformation> | ||
44 | <AdditionalDependencies>$(ProjectAdditionalLinkLibraries);advapi32.lib;comdlg32.lib;user32.lib;oleaut32.lib;gdi32.lib;shell32.lib;ole32.lib;version.lib;%(AdditionalDependencies)</AdditionalDependencies> | ||
45 | <AdditionalLibraryDirectories>$(OutDir);$(AdditionalMultiTargetLibraryPath);$(ArmLibraryDirectories);$(ProjectAdditionalLinkLibraryDirectories);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories> | ||
46 | <AdditionalOptions Condition=" $(PlatformToolset.StartsWith('v14')) ">/IGNORE:4099 %(AdditionalOptions)</AdditionalOptions> | ||
47 | </Link> | ||
48 | </ItemDefinitionGroup> | ||
49 | |||
50 | <ItemDefinitionGroup Condition=" '$(Platform)'=='Win32' and '$(PlatformToolset)'!='v100'"> | ||
51 | <ClCompile> | ||
52 | <EnableEnhancedInstructionSet>NoExtensions</EnableEnhancedInstructionSet> | ||
53 | </ClCompile> | ||
54 | </ItemDefinitionGroup> | ||
55 | <ItemDefinitionGroup Condition=" '$(Platform)'=='arm' "> | ||
56 | <ClCompile> | ||
57 | <CallingConvention>CDecl</CallingConvention> | ||
58 | </ClCompile> | ||
59 | </ItemDefinitionGroup> | ||
60 | <ItemDefinitionGroup Condition=" '$(ConfigurationType)'=='StaticLibrary' "> | ||
61 | <ClCompile> | ||
62 | <DebugInformationFormat>OldStyle</DebugInformationFormat> | ||
63 | <OmitDefaultLibName>true</OmitDefaultLibName> | ||
64 | <IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries> | ||
65 | </ClCompile> | ||
66 | </ItemDefinitionGroup> | ||
67 | <ItemDefinitionGroup Condition=" '$(Configuration)'=='Debug' "> | ||
68 | <ClCompile> | ||
69 | <Optimization>Disabled</Optimization> | ||
70 | <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> | ||
71 | <PreprocessorDefinitions>_DEBUG;DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> | ||
72 | <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> | ||
73 | </ClCompile> | ||
74 | </ItemDefinitionGroup> | ||
75 | <ItemDefinitionGroup Condition=" '$(Configuration)'=='Debug' and '$(CLRSupport)'=='true' "> | ||
76 | <ClCompile> | ||
77 | <BasicRuntimeChecks></BasicRuntimeChecks> | ||
78 | <RuntimeLibrary>MultiThreadedDebugDll</RuntimeLibrary> | ||
79 | </ClCompile> | ||
80 | </ItemDefinitionGroup> | ||
81 | <ItemDefinitionGroup Condition=" '$(Configuration)'=='Release' "> | ||
82 | <ClCompile> | ||
83 | <Optimization>MinSpace</Optimization> | ||
84 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> | ||
85 | <FunctionLevelLinking>true</FunctionLevelLinking> | ||
86 | <IntrinsicFunctions>true</IntrinsicFunctions> | ||
87 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> | ||
88 | </ClCompile> | ||
89 | <Link> | ||
90 | <EnableCOMDATFolding>true</EnableCOMDATFolding> | ||
91 | <OptimizeReferences>true</OptimizeReferences> | ||
92 | </Link> | ||
93 | </ItemDefinitionGroup> | ||
94 | <ItemDefinitionGroup Condition=" '$(Configuration)'=='Release' and '$(CLRSupport)'=='true' "> | ||
95 | <ClCompile> | ||
96 | <BasicRuntimeChecks></BasicRuntimeChecks> | ||
97 | <RuntimeLibrary>MultiThreadedDll</RuntimeLibrary> | ||
98 | </ClCompile> | ||
99 | </ItemDefinitionGroup> | ||
100 | <ItemDefinitionGroup Condition=" '$(CLRSupport)'=='true' "> | ||
101 | <Link> | ||
102 | <KeyFile>$(LinkKeyFile)</KeyFile> | ||
103 | <DelaySign>$(LinkDelaySign)</DelaySign> | ||
104 | </Link> | ||
105 | </ItemDefinitionGroup> | ||
106 | </Project> | ||
diff --git a/src/Directory.Build.props b/src/Directory.Build.props new file mode 100644 index 00000000..a22f4470 --- /dev/null +++ b/src/Directory.Build.props | |||
@@ -0,0 +1,28 @@ | |||
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 | Do NOT modify this file. Update the canonical version in Home\repo-template\src\Directory.Build.props | ||
5 | then update all of the repos. | ||
6 | --> | ||
7 | <Project> | ||
8 | <PropertyGroup> | ||
9 | <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> | ||
10 | <EnableSourceLink Condition=" '$(NCrunch)' == '1' ">false</EnableSourceLink> | ||
11 | <MSBuildWarningsAsMessages>MSB3246</MSBuildWarningsAsMessages> | ||
12 | |||
13 | <ProjectName Condition=" '$(ProjectName)' == '' ">$(MSBuildProjectName)</ProjectName> | ||
14 | <BaseOutputPath>$([System.IO.Path]::GetFullPath($(MSBuildThisFileDirectory)..\build\))</BaseOutputPath> | ||
15 | <BaseIntermediateOutputPath>$(BaseOutputPath)obj\$(ProjectName)\</BaseIntermediateOutputPath> | ||
16 | <OutputPath>$(BaseOutputPath)$(Configuration)\</OutputPath> | ||
17 | |||
18 | <Authors>WiX Toolset Team</Authors> | ||
19 | <Company>WiX Toolset</Company> | ||
20 | <Copyright>Copyright (c) .NET Foundation and contributors. All rights reserved.</Copyright> | ||
21 | <PackageLicenseExpression>MS-RL</PackageLicenseExpression> | ||
22 | <Product>WiX Toolset</Product> | ||
23 | </PropertyGroup> | ||
24 | |||
25 | <Import Project="Cpp.Build.props" Condition=" Exists('Cpp.Build.props') And '$(MSBuildProjectExtension)'=='.vcxproj' " /> | ||
26 | <Import Project="Wix.Build.props" Condition=" Exists('Wix.Build.props') And '$(MSBuildProjectExtension)'=='.wixproj' " /> | ||
27 | <Import Project="Custom.Build.props" Condition=" Exists('Custom.Build.props') " /> | ||
28 | </Project> | ||
diff --git a/src/Directory.Build.targets b/src/Directory.Build.targets new file mode 100644 index 00000000..dac7452a --- /dev/null +++ b/src/Directory.Build.targets | |||
@@ -0,0 +1,48 @@ | |||
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 | Do NOT modify this file. Update the canonical version in Home\repo-template\src\Directory.Build.targets | ||
5 | then update all of the repos. | ||
6 | --> | ||
7 | <!-- | ||
8 | Replace PackageReferences with ProjectReferences when the projects can be found in .sln. | ||
9 | See the original here: https://github.com/dotnet/sdk/issues/1151#issuecomment-385133284 | ||
10 | --> | ||
11 | <Project> | ||
12 | <PropertyGroup> | ||
13 | <ReplacePackageReferences>true</ReplacePackageReferences> | ||
14 | <TheSolutionPath Condition=" '$(NCrunch)'=='' ">$(SolutionPath)</TheSolutionPath> | ||
15 | <TheSolutionPath Condition=" '$(NCrunch)'=='1' ">$(NCrunchOriginalSolutionPath)</TheSolutionPath> | ||
16 | </PropertyGroup> | ||
17 | |||
18 | <Choose> | ||
19 | <When Condition="$(ReplacePackageReferences) AND '$(TheSolutionPath)' != '' AND '$(TheSolutionPath)' != '*undefined*' AND Exists('$(TheSolutionPath)')"> | ||
20 | |||
21 | <PropertyGroup> | ||
22 | <SolutionFileContent>$([System.IO.File]::ReadAllText($(TheSolutionPath)))</SolutionFileContent> | ||
23 | <SmartSolutionDir>$([System.IO.Path]::GetDirectoryName( $(TheSolutionPath) ))</SmartSolutionDir> | ||
24 | <RegexPattern>(?<="[PackageName]", ")(.*)(?=", ")</RegexPattern> | ||
25 | </PropertyGroup> | ||
26 | |||
27 | <ItemGroup> | ||
28 | <!-- Keep the identity of the PackageReference --> | ||
29 | <SmartPackageReference Include="@(PackageReference)"> | ||
30 | <PackageName>%(Identity)</PackageName> | ||
31 | <InSolution>$(SolutionFileContent.Contains('\%(Identity).csproj'))</InSolution> | ||
32 | </SmartPackageReference> | ||
33 | |||
34 | <!-- Filter them by mapping them to another ItemGroup using the WithMetadataValue item function --> | ||
35 | <PackageInSolution Include="@(SmartPackageReference->WithMetadataValue('InSolution', True))"> | ||
36 | <Pattern>$(RegexPattern.Replace('[PackageName]','%(PackageName)') )</Pattern> | ||
37 | <SmartPath>$([System.Text.RegularExpressions.Regex]::Match('$(SolutionFileContent)', '%(Pattern)'))</SmartPath> | ||
38 | </PackageInSolution> | ||
39 | |||
40 | <ProjectReference Include="@(PackageInSolution->'$(SmartSolutionDir)\%(SmartPath)' )"/> | ||
41 | |||
42 | <!-- Remove the package references that are now referenced as projects --> | ||
43 | <PackageReference Remove="@(PackageInSolution->'%(PackageName)' )"/> | ||
44 | </ItemGroup> | ||
45 | |||
46 | </When> | ||
47 | </Choose> | ||
48 | </Project> | ||
diff --git a/src/FindLocalWix.props b/src/FindLocalWix.props new file mode 100644 index 00000000..a784e352 --- /dev/null +++ b/src/FindLocalWix.props | |||
@@ -0,0 +1,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. --> | ||
3 | |||
4 | <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> | ||
5 | <PropertyGroup> | ||
6 | <WixTargetsPath Condition=" '$(Configuration)' == 'Debug' And Exists('$(MSBuildThisFileDirectory)..\..\Tools\README.md') ">$(MSBuildThisFileDirectory)..\..\Tools\build\Debug\net461\wix.targets</WixTargetsPath> | ||
7 | </PropertyGroup> | ||
8 | </Project> | ||
diff --git a/src/Wix.Build.props b/src/Wix.Build.props new file mode 100644 index 00000000..a81c9615 --- /dev/null +++ b/src/Wix.Build.props | |||
@@ -0,0 +1,31 @@ | |||
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 | <Project> | ||
5 | <PropertyGroup> | ||
6 | <DefineConstants>$(DefineConstants);CompanyName=$(Company)</DefineConstants> | ||
7 | <OutputPath_x86>$(OutputPath)x86\</OutputPath_x86> | ||
8 | <OutputPath_x64>$(OutputPath)x64\</OutputPath_x64> | ||
9 | <OutputPath_arm>$(OutputPath)ARM\</OutputPath_arm> | ||
10 | <OutputPath_arm64>$(OutputPath)ARM64\</OutputPath_arm64> | ||
11 | <OutputPath_win32>$(OutputPath)Win32\</OutputPath_win32> | ||
12 | </PropertyGroup> | ||
13 | |||
14 | <ItemGroup> | ||
15 | <BindInputPaths Include="$(OutputPath_x86)"> | ||
16 | <BindName>x86</BindName> | ||
17 | </BindInputPaths> | ||
18 | <BindInputPaths Include="$(OutputPath_x64)"> | ||
19 | <BindName>x64</BindName> | ||
20 | </BindInputPaths> | ||
21 | <BindInputPaths Include="$(OutputPath_arm)"> | ||
22 | <BindName>arm</BindName> | ||
23 | </BindInputPaths> | ||
24 | <BindInputPaths Include="$(OutputPath_arm64)"> | ||
25 | <BindName>arm64</BindName> | ||
26 | </BindInputPaths> | ||
27 | <BindInputPaths Include="$(OutputPath_win32)"> | ||
28 | <BindName>win32</BindName> | ||
29 | </BindInputPaths> | ||
30 | </ItemGroup> | ||
31 | </Project> | ||
diff --git a/src/ca/cpexec.def b/src/ca/complusca.def index 1dad15c2..7c475759 100644 --- a/src/ca/cpexec.def +++ b/src/ca/complusca.def | |||
@@ -1,6 +1,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. | 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 | 2 | ||
3 | 3 | ||
4 | LIBRARY "complusca" | ||
5 | |||
4 | EXPORTS | 6 | EXPORTS |
5 | ComPlusPrepare | 7 | ComPlusPrepare |
6 | ComPlusCleanup | 8 | ComPlusCleanup |
@@ -9,3 +11,5 @@ EXPORTS | |||
9 | ComPlusRollbackInstallExecute | 11 | ComPlusRollbackInstallExecute |
10 | ComPlusUninstallExecute | 12 | ComPlusUninstallExecute |
11 | ComPlusRollbackUninstallExecute | 13 | ComPlusRollbackUninstallExecute |
14 | ConfigureComPlusInstall | ||
15 | ConfigureComPlusUninstall | ||
diff --git a/src/ca/complusca.vcxproj b/src/ca/complusca.vcxproj new file mode 100644 index 00000000..5085f61d --- /dev/null +++ b/src/ca/complusca.vcxproj | |||
@@ -0,0 +1,99 @@ | |||
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 | <Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> | ||
5 | <Import Project="..\..\packages\WixToolset.DUtil.4.0.16\build\WixToolset.DUtil.props" Condition="Exists('..\..\packages\WixToolset.DUtil.4.0.16\build\WixToolset.DUtil.props')" /> | ||
6 | <Import Project="..\..\packages\WixToolset.WcaUtil.4.0.2\build\WixToolset.WcaUtil.props" Condition="Exists('..\..\packages\WixToolset.WcaUtil.4.0.2\build\WixToolset.WcaUtil.props')" /> | ||
7 | |||
8 | <ItemGroup Label="ProjectConfigurations"> | ||
9 | <ProjectConfiguration Include="Debug|Win32"> | ||
10 | <Configuration>Debug</Configuration> | ||
11 | <Platform>Win32</Platform> | ||
12 | </ProjectConfiguration> | ||
13 | <ProjectConfiguration Include="Release|Win32"> | ||
14 | <Configuration>Release</Configuration> | ||
15 | <Platform>Win32</Platform> | ||
16 | </ProjectConfiguration> | ||
17 | <ProjectConfiguration Include="Debug|x64"> | ||
18 | <Configuration>Debug</Configuration> | ||
19 | <Platform>x64</Platform> | ||
20 | </ProjectConfiguration> | ||
21 | <ProjectConfiguration Include="Release|x64"> | ||
22 | <Configuration>Release</Configuration> | ||
23 | <Platform>x64</Platform> | ||
24 | </ProjectConfiguration> | ||
25 | </ItemGroup> | ||
26 | |||
27 | <PropertyGroup Label="Globals"> | ||
28 | <ProjectGuid>{BDEF51ED-E242-4FA2-801A-01B127DF851A}</ProjectGuid> | ||
29 | <ConfigurationType>DynamicLibrary</ConfigurationType> | ||
30 | <PlatformToolset>v141</PlatformToolset> | ||
31 | <CharacterSet>Unicode</CharacterSet> | ||
32 | <TargetName>complusca</TargetName> | ||
33 | <ProjectModuleDefinitionFile>complusca.def</ProjectModuleDefinitionFile> | ||
34 | <Description>WiX Toolset ComPlus CustomAction</Description> | ||
35 | </PropertyGroup> | ||
36 | |||
37 | <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> | ||
38 | <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> | ||
39 | |||
40 | <PropertyGroup> | ||
41 | <ProjectAdditionalLinkLibraries>msi.lib</ProjectAdditionalLinkLibraries> | ||
42 | </PropertyGroup> | ||
43 | |||
44 | <ItemGroup> | ||
45 | <ClCompile Include="cpappexec.cpp" /> | ||
46 | <ClCompile Include="cpapproleexec.cpp" /> | ||
47 | <ClCompile Include="cpapprolesched.cpp" /> | ||
48 | <ClCompile Include="cpappsched.cpp" /> | ||
49 | <ClCompile Include="cpasmexec.cpp" /> | ||
50 | <ClCompile Include="cpasmsched.cpp" /> | ||
51 | <ClCompile Include="cpexec.cpp" /> | ||
52 | <ClCompile Include="cppartexec.cpp" /> | ||
53 | <ClCompile Include="cppartroleexec.cpp" /> | ||
54 | <ClCompile Include="cppartrolesched.cpp" /> | ||
55 | <ClCompile Include="cppartsched.cpp" /> | ||
56 | <ClCompile Include="cpsched.cpp" /> | ||
57 | <ClCompile Include="cpsubsexec.cpp" /> | ||
58 | <ClCompile Include="cpsubssched.cpp" /> | ||
59 | <ClCompile Include="cputilexec.cpp" /> | ||
60 | <ClCompile Include="cputilsched.cpp" /> | ||
61 | <ClCompile Include="dllmain.cpp"> | ||
62 | <PrecompiledHeader>Create</PrecompiledHeader> | ||
63 | </ClCompile> | ||
64 | </ItemGroup> | ||
65 | |||
66 | <ItemGroup> | ||
67 | <ClInclude Include="cpappexec.h" /> | ||
68 | <ClInclude Include="cpapproleexec.h" /> | ||
69 | <ClInclude Include="cpapprolesched.h" /> | ||
70 | <ClInclude Include="cpappsched.h" /> | ||
71 | <ClInclude Include="cpasmexec.h" /> | ||
72 | <ClInclude Include="cpasmsched.h" /> | ||
73 | <ClInclude Include="cpcost.h" /> | ||
74 | <ClInclude Include="cppartexec.h" /> | ||
75 | <ClInclude Include="cppartroleexec.h" /> | ||
76 | <ClInclude Include="cppartrolesched.h" /> | ||
77 | <ClInclude Include="cppartsched.h" /> | ||
78 | <ClInclude Include="cpsubsexec.h" /> | ||
79 | <ClInclude Include="cpsubssched.h" /> | ||
80 | <ClInclude Include="cputilexec.h" /> | ||
81 | <ClInclude Include="cputilsched.h" /> | ||
82 | <ClInclude Include="precomp.h" /> | ||
83 | </ItemGroup> | ||
84 | |||
85 | <ItemGroup> | ||
86 | <None Include="packages.config" /> | ||
87 | <None Include="complusca.def" /> | ||
88 | </ItemGroup> | ||
89 | |||
90 | <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> | ||
91 | |||
92 | <Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild"> | ||
93 | <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> | ||
95 | </PropertyGroup> | ||
96 | <Error Condition="!Exists('..\..\packages\WixToolset.DUtil.4.0.16\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.DUtil.4.0.16\build\WixToolset.DUtil.props'))" /> | ||
97 | <Error Condition="!Exists('..\..\packages\WixToolset.WcaUtil.4.0.2\build\WixToolset.WcaUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.WcaUtil.4.0.2\build\WixToolset.WcaUtil.props'))" /> | ||
98 | </Target> | ||
99 | </Project> | ||
diff --git a/src/ca/cpappexec.cpp b/src/ca/cpappexec.cpp index 43d6cd6d..48948210 100644 --- a/src/ca/cpappexec.cpp +++ b/src/ca/cpappexec.cpp | |||
@@ -239,7 +239,7 @@ static HRESULT CreateApplication( | |||
239 | WcaLog(LOGMSG_VERBOSE, "Creating application, key: %S", pAttrs->pwzKey); | 239 | WcaLog(LOGMSG_VERBOSE, "Creating application, key: %S", pAttrs->pwzKey); |
240 | 240 | ||
241 | // get applications collection | 241 | // get applications collection |
242 | hr = CpiGetApplicationsCollection(pAttrs->pwzPartID, &piAppColl); | 242 | hr = CpiExecGetApplicationsCollection(pAttrs->pwzPartID, &piAppColl); |
243 | if (S_FALSE == hr) | 243 | if (S_FALSE == hr) |
244 | hr = HRESULT_FROM_WIN32(ERROR_NOT_FOUND); | 244 | hr = HRESULT_FROM_WIN32(ERROR_NOT_FOUND); |
245 | ExitOnFailure(hr, "Failed to get applications collection"); | 245 | ExitOnFailure(hr, "Failed to get applications collection"); |
@@ -304,7 +304,7 @@ static HRESULT RemoveApplication( | |||
304 | WcaLog(LOGMSG_VERBOSE, "Removing application, key: %S", pAttrs->pwzKey); | 304 | WcaLog(LOGMSG_VERBOSE, "Removing application, key: %S", pAttrs->pwzKey); |
305 | 305 | ||
306 | // get applications collection | 306 | // get applications collection |
307 | hr = CpiGetApplicationsCollection(pAttrs->pwzPartID, &piAppColl); | 307 | hr = CpiExecGetApplicationsCollection(pAttrs->pwzPartID, &piAppColl); |
308 | ExitOnFailure(hr, "Failed to get applications collection"); | 308 | ExitOnFailure(hr, "Failed to get applications collection"); |
309 | 309 | ||
310 | if (S_FALSE == hr) | 310 | if (S_FALSE == hr) |
diff --git a/src/ca/cpappsched.cpp b/src/ca/cpappsched.cpp index cec99794..1fb2203b 100644 --- a/src/ca/cpappsched.cpp +++ b/src/ca/cpappsched.cpp | |||
@@ -579,7 +579,7 @@ HRESULT CpiGetRolesCollForApplication( | |||
579 | if (pApp->pPartition) | 579 | if (pApp->pPartition) |
580 | hr = CpiGetApplicationsCollForPartition(pApp->pPartition, &piAppColl); | 580 | hr = CpiGetApplicationsCollForPartition(pApp->pPartition, &piAppColl); |
581 | else | 581 | else |
582 | hr = CpiGetApplicationsCollection(&piAppColl); | 582 | hr = CpiSchedGetApplicationsCollection(&piAppColl); |
583 | ExitOnFailure(hr, "Failed to get applications collection"); | 583 | ExitOnFailure(hr, "Failed to get applications collection"); |
584 | 584 | ||
585 | if (S_FALSE == hr) | 585 | if (S_FALSE == hr) |
@@ -593,7 +593,7 @@ HRESULT CpiGetRolesCollForApplication( | |||
593 | ExitFunction(); // exit with hr = S_FALSE | 593 | ExitFunction(); // exit with hr = S_FALSE |
594 | 594 | ||
595 | // get roles collection | 595 | // get roles collection |
596 | hr = CpiGetCatalogCollection(piAppColl, piAppObj, L"Roles", &pApp->piRolesColl); | 596 | hr = CpiSchedGetCatalogCollection(piAppColl, piAppObj, L"Roles", &pApp->piRolesColl); |
597 | ExitOnFailure(hr, "Failed to get roles collection"); | 597 | ExitOnFailure(hr, "Failed to get roles collection"); |
598 | } | 598 | } |
599 | 599 | ||
@@ -632,7 +632,7 @@ HRESULT CpiGetComponentsCollForApplication( | |||
632 | if (pApp->pPartition) | 632 | if (pApp->pPartition) |
633 | hr = CpiGetApplicationsCollForPartition(pApp->pPartition, &piAppColl); | 633 | hr = CpiGetApplicationsCollForPartition(pApp->pPartition, &piAppColl); |
634 | else | 634 | else |
635 | hr = CpiGetApplicationsCollection(&piAppColl); | 635 | hr = CpiSchedGetApplicationsCollection(&piAppColl); |
636 | ExitOnFailure(hr, "Failed to get applications collection"); | 636 | ExitOnFailure(hr, "Failed to get applications collection"); |
637 | 637 | ||
638 | if (S_FALSE == hr) | 638 | if (S_FALSE == hr) |
@@ -646,7 +646,7 @@ HRESULT CpiGetComponentsCollForApplication( | |||
646 | ExitFunction(); // exit with hr = S_FALSE | 646 | ExitFunction(); // exit with hr = S_FALSE |
647 | 647 | ||
648 | // get roles collection | 648 | // get roles collection |
649 | hr = CpiGetCatalogCollection(piAppColl, piAppObj, L"Components", &pApp->piCompsColl); | 649 | hr = CpiSchedGetCatalogCollection(piAppColl, piAppObj, L"Components", &pApp->piCompsColl); |
650 | ExitOnFailure(hr, "Failed to get components collection"); | 650 | ExitOnFailure(hr, "Failed to get components collection"); |
651 | } | 651 | } |
652 | 652 | ||
@@ -695,7 +695,7 @@ static HRESULT FindObjectForApplication( | |||
695 | if (pItm->pPartition) | 695 | if (pItm->pPartition) |
696 | hr = CpiGetApplicationsCollForPartition(pItm->pPartition, &piAppColl); | 696 | hr = CpiGetApplicationsCollForPartition(pItm->pPartition, &piAppColl); |
697 | else | 697 | else |
698 | hr = CpiGetApplicationsCollection(&piAppColl); | 698 | hr = CpiSchedGetApplicationsCollection(&piAppColl); |
699 | ExitOnFailure(hr, "Failed to get applications collection"); | 699 | ExitOnFailure(hr, "Failed to get applications collection"); |
700 | 700 | ||
701 | if (S_FALSE == hr) | 701 | if (S_FALSE == hr) |
diff --git a/src/ca/cpasmexec.cpp b/src/ca/cpasmexec.cpp index 339c08e1..3d140027 100644 --- a/src/ca/cpasmexec.cpp +++ b/src/ca/cpasmexec.cpp | |||
@@ -75,58 +75,47 @@ enum eInstallationFlags { | |||
75 | }; | 75 | }; |
76 | 76 | ||
77 | 77 | ||
78 | // private constants | ||
79 | |||
80 | enum eAssemblyAttributes | ||
81 | { | ||
82 | aaEventClass = (1 << 0), | ||
83 | aaDotNetAssembly = (1 << 1), | ||
84 | aaPathFromGAC = (1 << 2), | ||
85 | aaRunInCommit = (1 << 3) | ||
86 | }; | ||
87 | |||
88 | |||
89 | // private structs | 78 | // private structs |
90 | 79 | ||
91 | struct CPI_ROLE_ASSIGNMENT | 80 | struct CPIEXEC_ROLE_ASSIGNMENT |
92 | { | 81 | { |
93 | WCHAR wzKey[MAX_DARWIN_KEY + 1]; | 82 | WCHAR wzKey[MAX_DARWIN_KEY + 1]; |
94 | WCHAR wzRoleName[MAX_DARWIN_COLUMN + 1]; | 83 | WCHAR wzRoleName[MAX_DARWIN_COLUMN + 1]; |
95 | 84 | ||
96 | CPI_ROLE_ASSIGNMENT* pNext; | 85 | CPIEXEC_ROLE_ASSIGNMENT* pNext; |
97 | }; | 86 | }; |
98 | 87 | ||
99 | struct CPI_METHOD | 88 | struct CPIEXEC_METHOD |
100 | { | 89 | { |
101 | WCHAR wzIndex[11 + 1]; | 90 | WCHAR wzIndex[11 + 1]; |
102 | WCHAR wzName[MAX_DARWIN_COLUMN + 1]; | 91 | WCHAR wzName[MAX_DARWIN_COLUMN + 1]; |
103 | 92 | ||
104 | CPI_PROPERTY* pPropertyList; | 93 | CPI_PROPERTY* pPropertyList; |
105 | CPI_ROLE_ASSIGNMENT* pRoleAssignmentList; | 94 | CPIEXEC_ROLE_ASSIGNMENT* pRoleAssignmentList; |
106 | 95 | ||
107 | CPI_METHOD* pNext; | 96 | CPIEXEC_METHOD* pNext; |
108 | }; | 97 | }; |
109 | 98 | ||
110 | struct CPI_INTERFACE | 99 | struct CPIEXEC_INTERFACE |
111 | { | 100 | { |
112 | WCHAR wzIID[CPI_MAX_GUID + 1]; | 101 | WCHAR wzIID[CPI_MAX_GUID + 1]; |
113 | 102 | ||
114 | CPI_PROPERTY* pPropertyList; | 103 | CPI_PROPERTY* pPropertyList; |
115 | CPI_ROLE_ASSIGNMENT* pRoleAssignmentList; | 104 | CPIEXEC_ROLE_ASSIGNMENT* pRoleAssignmentList; |
116 | CPI_METHOD* pMethodList; | 105 | CPIEXEC_METHOD* pMethodList; |
117 | 106 | ||
118 | CPI_INTERFACE* pNext; | 107 | CPIEXEC_INTERFACE* pNext; |
119 | }; | 108 | }; |
120 | 109 | ||
121 | struct CPI_COMPONENT | 110 | struct CPIEXEC_COMPONENT |
122 | { | 111 | { |
123 | WCHAR wzCLSID[CPI_MAX_GUID + 1]; | 112 | WCHAR wzCLSID[CPI_MAX_GUID + 1]; |
124 | 113 | ||
125 | CPI_PROPERTY* pPropertyList; | 114 | CPI_PROPERTY* pPropertyList; |
126 | CPI_ROLE_ASSIGNMENT* pRoleAssignmentList; | 115 | CPIEXEC_ROLE_ASSIGNMENT* pRoleAssignmentList; |
127 | CPI_INTERFACE* pInterfaceList; | 116 | CPIEXEC_INTERFACE* pInterfaceList; |
128 | 117 | ||
129 | CPI_COMPONENT* pNext; | 118 | CPIEXEC_COMPONENT* pNext; |
130 | }; | 119 | }; |
131 | 120 | ||
132 | struct CPI_ASSEMBLY_ATTRIBUTES | 121 | struct CPI_ASSEMBLY_ATTRIBUTES |
@@ -141,7 +130,7 @@ struct CPI_ASSEMBLY_ATTRIBUTES | |||
141 | LPWSTR pwzAppID; | 130 | LPWSTR pwzAppID; |
142 | LPWSTR pwzPartID; | 131 | LPWSTR pwzPartID; |
143 | int iAttributes; | 132 | int iAttributes; |
144 | CPI_COMPONENT* pCompList; | 133 | CPIEXEC_COMPONENT* pCompList; |
145 | }; | 134 | }; |
146 | 135 | ||
147 | struct CPI_ROLE_ASSIGNMENTS_ATTRIBUTES | 136 | struct CPI_ROLE_ASSIGNMENTS_ATTRIBUTES |
@@ -152,7 +141,7 @@ struct CPI_ROLE_ASSIGNMENTS_ATTRIBUTES | |||
152 | LPWSTR pwzAppID; | 141 | LPWSTR pwzAppID; |
153 | LPWSTR pwzPartID; | 142 | LPWSTR pwzPartID; |
154 | int iRoleCount; | 143 | int iRoleCount; |
155 | CPI_COMPONENT* pCompList; | 144 | CPIEXEC_COMPONENT* pCompList; |
156 | }; | 145 | }; |
157 | 146 | ||
158 | 147 | ||
@@ -187,7 +176,7 @@ static HRESULT UnregisterDotNetAssembly( | |||
187 | ); | 176 | ); |
188 | static HRESULT RemoveComponents( | 177 | static HRESULT RemoveComponents( |
189 | ICatalogCollection* piCompColl, | 178 | ICatalogCollection* piCompColl, |
190 | CPI_COMPONENT* pCompList | 179 | CPIEXEC_COMPONENT* pCompList |
191 | ); | 180 | ); |
192 | static HRESULT ReadAssemblyAttributes( | 181 | static HRESULT ReadAssemblyAttributes( |
193 | LPWSTR* ppwzData, | 182 | LPWSTR* ppwzData, |
@@ -206,56 +195,56 @@ static void FreeRoleAssignmentsAttributes( | |||
206 | static HRESULT ConfigureComponents( | 195 | static HRESULT ConfigureComponents( |
207 | LPCWSTR pwzPartID, | 196 | LPCWSTR pwzPartID, |
208 | LPCWSTR pwzAppID, | 197 | LPCWSTR pwzAppID, |
209 | CPI_COMPONENT* pCompList, | 198 | CPIEXEC_COMPONENT* pCompList, |
210 | BOOL fCreate, | 199 | BOOL fCreate, |
211 | BOOL fProgress | 200 | BOOL fProgress |
212 | ); | 201 | ); |
213 | static HRESULT ConfigureInterfaces( | 202 | static HRESULT ConfigureInterfaces( |
214 | ICatalogCollection* piCompColl, | 203 | ICatalogCollection* piCompColl, |
215 | ICatalogObject* piCompObj, | 204 | ICatalogObject* piCompObj, |
216 | CPI_INTERFACE* pIntfList, | 205 | CPIEXEC_INTERFACE* pIntfList, |
217 | BOOL fCreate | 206 | BOOL fCreate |
218 | ); | 207 | ); |
219 | static HRESULT ConfigureMethods( | 208 | static HRESULT ConfigureMethods( |
220 | ICatalogCollection* piIntfColl, | 209 | ICatalogCollection* piIntfColl, |
221 | ICatalogObject* piIntfObj, | 210 | ICatalogObject* piIntfObj, |
222 | CPI_METHOD* pMethList, | 211 | CPIEXEC_METHOD* pMethList, |
223 | BOOL fCreate | 212 | BOOL fCreate |
224 | ); | 213 | ); |
225 | static HRESULT ConfigureRoleAssignments( | 214 | static HRESULT ConfigureRoleAssignments( |
226 | LPCWSTR pwzCollName, | 215 | LPCWSTR pwzCollName, |
227 | ICatalogCollection* piCompColl, | 216 | ICatalogCollection* piCompColl, |
228 | ICatalogObject* piCompObj, | 217 | ICatalogObject* piCompObj, |
229 | CPI_ROLE_ASSIGNMENT* pRoleList, | 218 | CPIEXEC_ROLE_ASSIGNMENT* pRoleList, |
230 | BOOL fCreate | 219 | BOOL fCreate |
231 | ); | 220 | ); |
232 | static HRESULT ReadComponentList( | 221 | static HRESULT ReadComponentList( |
233 | LPWSTR* ppwzData, | 222 | LPWSTR* ppwzData, |
234 | CPI_COMPONENT** ppCompList | 223 | CPIEXEC_COMPONENT** ppCompList |
235 | ); | 224 | ); |
236 | static HRESULT ReadInterfaceList( | 225 | static HRESULT ReadInterfaceList( |
237 | LPWSTR* ppwzData, | 226 | LPWSTR* ppwzData, |
238 | CPI_INTERFACE** ppIntfList | 227 | CPIEXEC_INTERFACE** ppIntfList |
239 | ); | 228 | ); |
240 | static HRESULT ReadMethodList( | 229 | static HRESULT ReadMethodList( |
241 | LPWSTR* ppwzData, | 230 | LPWSTR* ppwzData, |
242 | CPI_METHOD** ppMethList | 231 | CPIEXEC_METHOD** ppMethList |
243 | ); | 232 | ); |
244 | static HRESULT ReadRoleAssignmentList( | 233 | static HRESULT ReadRoleAssignmentList( |
245 | LPWSTR* ppwzData, | 234 | LPWSTR* ppwzData, |
246 | CPI_ROLE_ASSIGNMENT** ppRoleList | 235 | CPIEXEC_ROLE_ASSIGNMENT** ppRoleList |
247 | ); | 236 | ); |
248 | static void FreeComponentList( | 237 | static void FreeComponentList( |
249 | CPI_COMPONENT* pList | 238 | CPIEXEC_COMPONENT* pList |
250 | ); | 239 | ); |
251 | static void FreeInterfaceList( | 240 | static void FreeInterfaceList( |
252 | CPI_INTERFACE* pList | 241 | CPIEXEC_INTERFACE* pList |
253 | ); | 242 | ); |
254 | static void FreeMethodList( | 243 | static void FreeMethodList( |
255 | CPI_METHOD* pList | 244 | CPIEXEC_METHOD* pList |
256 | ); | 245 | ); |
257 | static void FreeRoleAssignmentList( | 246 | static void FreeRoleAssignmentList( |
258 | CPI_ROLE_ASSIGNMENT* pList | 247 | CPIEXEC_ROLE_ASSIGNMENT* pList |
259 | ); | 248 | ); |
260 | 249 | ||
261 | 250 | ||
@@ -648,7 +637,7 @@ static HRESULT UnregisterAssembly( | |||
648 | // TODO: handle rollbacks | 637 | // TODO: handle rollbacks |
649 | 638 | ||
650 | // get applications collection | 639 | // get applications collection |
651 | hr = CpiGetApplicationsCollection(pAttrs->pwzPartID, &piColl); | 640 | hr = CpiExecGetApplicationsCollection(pAttrs->pwzPartID, &piColl); |
652 | ExitOnFailure(hr, "Failed to get applications collection"); | 641 | ExitOnFailure(hr, "Failed to get applications collection"); |
653 | 642 | ||
654 | if (S_FALSE == hr) | 643 | if (S_FALSE == hr) |
@@ -993,7 +982,7 @@ static HRESULT RegisterNativeAssembly( | |||
993 | ExitOnNull(bstrPSDllPath, hr, E_OUTOFMEMORY, "Failed to allocate BSTR for tlb path"); | 982 | ExitOnNull(bstrPSDllPath, hr, E_OUTOFMEMORY, "Failed to allocate BSTR for tlb path"); |
994 | 983 | ||
995 | // get catalog | 984 | // get catalog |
996 | hr = CpiGetAdminCatalog(&piCatalog); | 985 | hr = CpiExecGetAdminCatalog(&piCatalog); |
997 | ExitOnFailure(hr, "Failed to get COM+ admin catalog"); | 986 | ExitOnFailure(hr, "Failed to get COM+ admin catalog"); |
998 | 987 | ||
999 | // get ICOMAdminCatalog2 interface | 988 | // get ICOMAdminCatalog2 interface |
@@ -1154,12 +1143,12 @@ LExit: | |||
1154 | 1143 | ||
1155 | static HRESULT RemoveComponents( | 1144 | static HRESULT RemoveComponents( |
1156 | ICatalogCollection* piCompColl, | 1145 | ICatalogCollection* piCompColl, |
1157 | CPI_COMPONENT* pCompList | 1146 | CPIEXEC_COMPONENT* pCompList |
1158 | ) | 1147 | ) |
1159 | { | 1148 | { |
1160 | HRESULT hr = S_OK; | 1149 | HRESULT hr = S_OK; |
1161 | 1150 | ||
1162 | for (CPI_COMPONENT* pItm = pCompList; pItm; pItm = pItm->pNext) | 1151 | for (CPIEXEC_COMPONENT* pItm = pCompList; pItm; pItm = pItm->pNext) |
1163 | { | 1152 | { |
1164 | // remove | 1153 | // remove |
1165 | hr = CpiRemoveCollectionObject(piCompColl, pItm->wzCLSID, NULL, FALSE); | 1154 | hr = CpiRemoveCollectionObject(piCompColl, pItm->wzCLSID, NULL, FALSE); |
@@ -1291,7 +1280,7 @@ static void FreeRoleAssignmentsAttributes( | |||
1291 | static HRESULT ConfigureComponents( | 1280 | static HRESULT ConfigureComponents( |
1292 | LPCWSTR pwzPartID, | 1281 | LPCWSTR pwzPartID, |
1293 | LPCWSTR pwzAppID, | 1282 | LPCWSTR pwzAppID, |
1294 | CPI_COMPONENT* pCompList, | 1283 | CPIEXEC_COMPONENT* pCompList, |
1295 | BOOL fCreate, | 1284 | BOOL fCreate, |
1296 | BOOL fProgress | 1285 | BOOL fProgress |
1297 | ) | 1286 | ) |
@@ -1313,7 +1302,7 @@ static HRESULT ConfigureComponents( | |||
1313 | ExitOnFailure(hr, "Failed to get components collection"); | 1302 | ExitOnFailure(hr, "Failed to get components collection"); |
1314 | 1303 | ||
1315 | // read components | 1304 | // read components |
1316 | for (CPI_COMPONENT* pItm = pCompList; pItm; pItm = pItm->pNext) | 1305 | for (CPIEXEC_COMPONENT* pItm = pCompList; pItm; pItm = pItm->pNext) |
1317 | { | 1306 | { |
1318 | // progress message | 1307 | // progress message |
1319 | if (fProgress) | 1308 | if (fProgress) |
@@ -1375,7 +1364,7 @@ LExit: | |||
1375 | static HRESULT ConfigureInterfaces( | 1364 | static HRESULT ConfigureInterfaces( |
1376 | ICatalogCollection* piCompColl, | 1365 | ICatalogCollection* piCompColl, |
1377 | ICatalogObject* piCompObj, | 1366 | ICatalogObject* piCompObj, |
1378 | CPI_INTERFACE* pIntfList, | 1367 | CPIEXEC_INTERFACE* pIntfList, |
1379 | BOOL fCreate | 1368 | BOOL fCreate |
1380 | ) | 1369 | ) |
1381 | { | 1370 | { |
@@ -1396,7 +1385,7 @@ static HRESULT ConfigureInterfaces( | |||
1396 | ExitOnFailure(hr, "Failed to get interfaces collection"); | 1385 | ExitOnFailure(hr, "Failed to get interfaces collection"); |
1397 | 1386 | ||
1398 | // read interfaces | 1387 | // read interfaces |
1399 | for (CPI_INTERFACE* pItm = pIntfList; pItm; pItm = pItm->pNext) | 1388 | for (CPIEXEC_INTERFACE* pItm = pIntfList; pItm; pItm = pItm->pNext) |
1400 | { | 1389 | { |
1401 | // find interface | 1390 | // find interface |
1402 | hr = CpiFindCollectionObjectByStringKey(piIntfColl, pItm->wzIID, &piIntfObj); | 1391 | hr = CpiFindCollectionObjectByStringKey(piIntfColl, pItm->wzIID, &piIntfObj); |
@@ -1448,7 +1437,7 @@ LExit: | |||
1448 | static HRESULT ConfigureMethods( | 1437 | static HRESULT ConfigureMethods( |
1449 | ICatalogCollection* piIntfColl, | 1438 | ICatalogCollection* piIntfColl, |
1450 | ICatalogObject* piIntfObj, | 1439 | ICatalogObject* piIntfObj, |
1451 | CPI_METHOD* pMethList, | 1440 | CPIEXEC_METHOD* pMethList, |
1452 | BOOL fCreate | 1441 | BOOL fCreate |
1453 | ) | 1442 | ) |
1454 | { | 1443 | { |
@@ -1469,7 +1458,7 @@ static HRESULT ConfigureMethods( | |||
1469 | ExitOnFailure(hr, "Failed to get methods collection"); | 1458 | ExitOnFailure(hr, "Failed to get methods collection"); |
1470 | 1459 | ||
1471 | // read methods | 1460 | // read methods |
1472 | for (CPI_METHOD* pItm = pMethList; pItm; pItm = pItm->pNext) | 1461 | for (CPIEXEC_METHOD* pItm = pMethList; pItm; pItm = pItm->pNext) |
1473 | { | 1462 | { |
1474 | // find method | 1463 | // find method |
1475 | if (*pItm->wzIndex) | 1464 | if (*pItm->wzIndex) |
@@ -1519,7 +1508,7 @@ static HRESULT ConfigureRoleAssignments( | |||
1519 | LPCWSTR pwzCollName, | 1508 | LPCWSTR pwzCollName, |
1520 | ICatalogCollection* piCompColl, | 1509 | ICatalogCollection* piCompColl, |
1521 | ICatalogObject* piCompObj, | 1510 | ICatalogObject* piCompObj, |
1522 | CPI_ROLE_ASSIGNMENT* pRoleList, | 1511 | CPIEXEC_ROLE_ASSIGNMENT* pRoleList, |
1523 | BOOL fCreate | 1512 | BOOL fCreate |
1524 | ) | 1513 | ) |
1525 | { | 1514 | { |
@@ -1531,7 +1520,7 @@ static HRESULT ConfigureRoleAssignments( | |||
1531 | long lChanges = 0; | 1520 | long lChanges = 0; |
1532 | 1521 | ||
1533 | // get roles collection | 1522 | // get roles collection |
1534 | hr = CpiGetCatalogCollection(piCompColl, piCompObj, pwzCollName, &piRoleColl); | 1523 | hr = CpiExecGetCatalogCollection(piCompColl, piCompObj, pwzCollName, &piRoleColl); |
1535 | if (S_FALSE == hr) | 1524 | if (S_FALSE == hr) |
1536 | if (fCreate) | 1525 | if (fCreate) |
1537 | hr = HRESULT_FROM_WIN32(ERROR_NOT_FOUND); | 1526 | hr = HRESULT_FROM_WIN32(ERROR_NOT_FOUND); |
@@ -1540,7 +1529,7 @@ static HRESULT ConfigureRoleAssignments( | |||
1540 | ExitOnFailure(hr, "Failed to get role assignments collection"); | 1529 | ExitOnFailure(hr, "Failed to get role assignments collection"); |
1541 | 1530 | ||
1542 | // read roles | 1531 | // read roles |
1543 | for (CPI_ROLE_ASSIGNMENT* pItm = pRoleList; pItm; pItm = pItm->pNext) | 1532 | for (CPIEXEC_ROLE_ASSIGNMENT* pItm = pRoleList; pItm; pItm = pItm->pNext) |
1544 | { | 1533 | { |
1545 | if (fCreate) | 1534 | if (fCreate) |
1546 | { | 1535 | { |
@@ -1588,14 +1577,14 @@ LExit: | |||
1588 | 1577 | ||
1589 | static HRESULT ReadComponentList( | 1578 | static HRESULT ReadComponentList( |
1590 | LPWSTR* ppwzData, | 1579 | LPWSTR* ppwzData, |
1591 | CPI_COMPONENT** ppCompList | 1580 | CPIEXEC_COMPONENT** ppCompList |
1592 | ) | 1581 | ) |
1593 | { | 1582 | { |
1594 | HRESULT hr = S_OK; | 1583 | HRESULT hr = S_OK; |
1595 | 1584 | ||
1596 | LPWSTR pwzData = NULL; | 1585 | LPWSTR pwzData = NULL; |
1597 | 1586 | ||
1598 | CPI_COMPONENT* pItm = NULL; | 1587 | CPIEXEC_COMPONENT* pItm = NULL; |
1599 | 1588 | ||
1600 | int iCnt = 0; | 1589 | int iCnt = 0; |
1601 | 1590 | ||
@@ -1606,7 +1595,7 @@ static HRESULT ReadComponentList( | |||
1606 | // read components | 1595 | // read components |
1607 | for (int i = 0; i < iCnt; i++) | 1596 | for (int i = 0; i < iCnt; i++) |
1608 | { | 1597 | { |
1609 | pItm = (CPI_COMPONENT*)::HeapAlloc(::GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(CPI_COMPONENT)); | 1598 | pItm = (CPIEXEC_COMPONENT*)::HeapAlloc(::GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(CPIEXEC_COMPONENT)); |
1610 | if (!pItm) | 1599 | if (!pItm) |
1611 | ExitFunction1(hr = E_OUTOFMEMORY); | 1600 | ExitFunction1(hr = E_OUTOFMEMORY); |
1612 | 1601 | ||
@@ -1648,14 +1637,14 @@ LExit: | |||
1648 | 1637 | ||
1649 | static HRESULT ReadInterfaceList( | 1638 | static HRESULT ReadInterfaceList( |
1650 | LPWSTR* ppwzData, | 1639 | LPWSTR* ppwzData, |
1651 | CPI_INTERFACE** ppIntfList | 1640 | CPIEXEC_INTERFACE** ppIntfList |
1652 | ) | 1641 | ) |
1653 | { | 1642 | { |
1654 | HRESULT hr = S_OK; | 1643 | HRESULT hr = S_OK; |
1655 | 1644 | ||
1656 | LPWSTR pwzData = NULL; | 1645 | LPWSTR pwzData = NULL; |
1657 | 1646 | ||
1658 | CPI_INTERFACE* pItm = NULL; | 1647 | CPIEXEC_INTERFACE* pItm = NULL; |
1659 | 1648 | ||
1660 | int iCnt = 0; | 1649 | int iCnt = 0; |
1661 | 1650 | ||
@@ -1666,7 +1655,7 @@ static HRESULT ReadInterfaceList( | |||
1666 | // read interfaces | 1655 | // read interfaces |
1667 | for (int i = 0; i < iCnt; i++) | 1656 | for (int i = 0; i < iCnt; i++) |
1668 | { | 1657 | { |
1669 | pItm = (CPI_INTERFACE*)::HeapAlloc(::GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(CPI_INTERFACE)); | 1658 | pItm = (CPIEXEC_INTERFACE*)::HeapAlloc(::GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(CPIEXEC_INTERFACE)); |
1670 | if (!pItm) | 1659 | if (!pItm) |
1671 | ExitFunction1(hr = E_OUTOFMEMORY); | 1660 | ExitFunction1(hr = E_OUTOFMEMORY); |
1672 | 1661 | ||
@@ -1708,14 +1697,14 @@ LExit: | |||
1708 | 1697 | ||
1709 | static HRESULT ReadMethodList( | 1698 | static HRESULT ReadMethodList( |
1710 | LPWSTR* ppwzData, | 1699 | LPWSTR* ppwzData, |
1711 | CPI_METHOD** ppMethList | 1700 | CPIEXEC_METHOD** ppMethList |
1712 | ) | 1701 | ) |
1713 | { | 1702 | { |
1714 | HRESULT hr = S_OK; | 1703 | HRESULT hr = S_OK; |
1715 | 1704 | ||
1716 | LPWSTR pwzData = NULL; | 1705 | LPWSTR pwzData = NULL; |
1717 | 1706 | ||
1718 | CPI_METHOD* pItm = NULL; | 1707 | CPIEXEC_METHOD* pItm = NULL; |
1719 | 1708 | ||
1720 | int iCnt = 0; | 1709 | int iCnt = 0; |
1721 | 1710 | ||
@@ -1726,7 +1715,7 @@ static HRESULT ReadMethodList( | |||
1726 | // read methods | 1715 | // read methods |
1727 | for (int i = 0; i < iCnt; i++) | 1716 | for (int i = 0; i < iCnt; i++) |
1728 | { | 1717 | { |
1729 | pItm = (CPI_METHOD*)::HeapAlloc(::GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(CPI_METHOD)); | 1718 | pItm = (CPIEXEC_METHOD*)::HeapAlloc(::GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(CPIEXEC_METHOD)); |
1730 | if (!pItm) | 1719 | if (!pItm) |
1731 | ExitFunction1(hr = E_OUTOFMEMORY); | 1720 | ExitFunction1(hr = E_OUTOFMEMORY); |
1732 | 1721 | ||
@@ -1769,14 +1758,14 @@ LExit: | |||
1769 | 1758 | ||
1770 | static HRESULT ReadRoleAssignmentList( | 1759 | static HRESULT ReadRoleAssignmentList( |
1771 | LPWSTR* ppwzData, | 1760 | LPWSTR* ppwzData, |
1772 | CPI_ROLE_ASSIGNMENT** ppRoleList | 1761 | CPIEXEC_ROLE_ASSIGNMENT** ppRoleList |
1773 | ) | 1762 | ) |
1774 | { | 1763 | { |
1775 | HRESULT hr = S_OK; | 1764 | HRESULT hr = S_OK; |
1776 | 1765 | ||
1777 | LPWSTR pwzData = NULL; | 1766 | LPWSTR pwzData = NULL; |
1778 | 1767 | ||
1779 | CPI_ROLE_ASSIGNMENT* pItm = NULL; | 1768 | CPIEXEC_ROLE_ASSIGNMENT* pItm = NULL; |
1780 | 1769 | ||
1781 | int iCnt = 0; | 1770 | int iCnt = 0; |
1782 | 1771 | ||
@@ -1787,7 +1776,7 @@ static HRESULT ReadRoleAssignmentList( | |||
1787 | // read roles | 1776 | // read roles |
1788 | for (int i = 0; i < iCnt; i++) | 1777 | for (int i = 0; i < iCnt; i++) |
1789 | { | 1778 | { |
1790 | pItm = (CPI_ROLE_ASSIGNMENT*)::HeapAlloc(::GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(CPI_ROLE_ASSIGNMENT)); | 1779 | pItm = (CPIEXEC_ROLE_ASSIGNMENT*)::HeapAlloc(::GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(CPIEXEC_ROLE_ASSIGNMENT)); |
1791 | if (!pItm) | 1780 | if (!pItm) |
1792 | ExitFunction1(hr = E_OUTOFMEMORY); | 1781 | ExitFunction1(hr = E_OUTOFMEMORY); |
1793 | 1782 | ||
@@ -1821,7 +1810,7 @@ LExit: | |||
1821 | } | 1810 | } |
1822 | 1811 | ||
1823 | static void FreeComponentList( | 1812 | static void FreeComponentList( |
1824 | CPI_COMPONENT* pList | 1813 | CPIEXEC_COMPONENT* pList |
1825 | ) | 1814 | ) |
1826 | { | 1815 | { |
1827 | while (pList) | 1816 | while (pList) |
@@ -1833,14 +1822,14 @@ static void FreeComponentList( | |||
1833 | if (pList->pInterfaceList) | 1822 | if (pList->pInterfaceList) |
1834 | FreeInterfaceList(pList->pInterfaceList); | 1823 | FreeInterfaceList(pList->pInterfaceList); |
1835 | 1824 | ||
1836 | CPI_COMPONENT* pDelete = pList; | 1825 | CPIEXEC_COMPONENT* pDelete = pList; |
1837 | pList = pList->pNext; | 1826 | pList = pList->pNext; |
1838 | ::HeapFree(::GetProcessHeap(), 0, pDelete); | 1827 | ::HeapFree(::GetProcessHeap(), 0, pDelete); |
1839 | } | 1828 | } |
1840 | } | 1829 | } |
1841 | 1830 | ||
1842 | static void FreeInterfaceList( | 1831 | static void FreeInterfaceList( |
1843 | CPI_INTERFACE* pList | 1832 | CPIEXEC_INTERFACE* pList |
1844 | ) | 1833 | ) |
1845 | { | 1834 | { |
1846 | while (pList) | 1835 | while (pList) |
@@ -1852,14 +1841,14 @@ static void FreeInterfaceList( | |||
1852 | if (pList->pMethodList) | 1841 | if (pList->pMethodList) |
1853 | FreeMethodList(pList->pMethodList); | 1842 | FreeMethodList(pList->pMethodList); |
1854 | 1843 | ||
1855 | CPI_INTERFACE* pDelete = pList; | 1844 | CPIEXEC_INTERFACE* pDelete = pList; |
1856 | pList = pList->pNext; | 1845 | pList = pList->pNext; |
1857 | ::HeapFree(::GetProcessHeap(), 0, pDelete); | 1846 | ::HeapFree(::GetProcessHeap(), 0, pDelete); |
1858 | } | 1847 | } |
1859 | } | 1848 | } |
1860 | 1849 | ||
1861 | static void FreeMethodList( | 1850 | static void FreeMethodList( |
1862 | CPI_METHOD* pList | 1851 | CPIEXEC_METHOD* pList |
1863 | ) | 1852 | ) |
1864 | { | 1853 | { |
1865 | while (pList) | 1854 | while (pList) |
@@ -1869,19 +1858,19 @@ static void FreeMethodList( | |||
1869 | if (pList->pRoleAssignmentList) | 1858 | if (pList->pRoleAssignmentList) |
1870 | FreeRoleAssignmentList(pList->pRoleAssignmentList); | 1859 | FreeRoleAssignmentList(pList->pRoleAssignmentList); |
1871 | 1860 | ||
1872 | CPI_METHOD* pDelete = pList; | 1861 | CPIEXEC_METHOD* pDelete = pList; |
1873 | pList = pList->pNext; | 1862 | pList = pList->pNext; |
1874 | ::HeapFree(::GetProcessHeap(), 0, pDelete); | 1863 | ::HeapFree(::GetProcessHeap(), 0, pDelete); |
1875 | } | 1864 | } |
1876 | } | 1865 | } |
1877 | 1866 | ||
1878 | static void FreeRoleAssignmentList( | 1867 | static void FreeRoleAssignmentList( |
1879 | CPI_ROLE_ASSIGNMENT* pList | 1868 | CPIEXEC_ROLE_ASSIGNMENT* pList |
1880 | ) | 1869 | ) |
1881 | { | 1870 | { |
1882 | while (pList) | 1871 | while (pList) |
1883 | { | 1872 | { |
1884 | CPI_ROLE_ASSIGNMENT* pDelete = pList; | 1873 | CPIEXEC_ROLE_ASSIGNMENT* pDelete = pList; |
1885 | pList = pList->pNext; | 1874 | pList = pList->pNext; |
1886 | ::HeapFree(::GetProcessHeap(), 0, pDelete); | 1875 | ::HeapFree(::GetProcessHeap(), 0, pDelete); |
1887 | } | 1876 | } |
diff --git a/src/ca/cpasmsched.cpp b/src/ca/cpasmsched.cpp index 97ecff61..2d0573a5 100644 --- a/src/ca/cpasmsched.cpp +++ b/src/ca/cpasmsched.cpp | |||
@@ -169,19 +169,19 @@ static HRESULT InterfacesRead( | |||
169 | LPCWSTR pwzCompKey, | 169 | LPCWSTR pwzCompKey, |
170 | CPI_APPLICATION_ROLE_LIST* pAppRoleList, | 170 | CPI_APPLICATION_ROLE_LIST* pAppRoleList, |
171 | CPI_ASSEMBLY* pAsm, | 171 | CPI_ASSEMBLY* pAsm, |
172 | CPI_COMPONENT* pComp | 172 | CPISCHED_COMPONENT* pComp |
173 | ); | 173 | ); |
174 | static HRESULT MethodsRead( | 174 | static HRESULT MethodsRead( |
175 | LPCWSTR pwzIntfKey, | 175 | LPCWSTR pwzIntfKey, |
176 | CPI_APPLICATION_ROLE_LIST* pAppRoleList, | 176 | CPI_APPLICATION_ROLE_LIST* pAppRoleList, |
177 | CPI_ASSEMBLY* pAsm, | 177 | CPI_ASSEMBLY* pAsm, |
178 | CPI_INTERFACE* pIntf | 178 | CPISCHED_INTERFACE* pIntf |
179 | ); | 179 | ); |
180 | static HRESULT RoleAssignmentsRead( | 180 | static HRESULT RoleAssignmentsRead( |
181 | LPCWSTR pwzQuery, | 181 | LPCWSTR pwzQuery, |
182 | LPCWSTR pwzKey, | 182 | LPCWSTR pwzKey, |
183 | CPI_APPLICATION_ROLE_LIST* pAppRoleList, | 183 | CPI_APPLICATION_ROLE_LIST* pAppRoleList, |
184 | CPI_ROLE_ASSIGNMENT** ppRoleList, | 184 | CPISCHED_ROLE_ASSIGNMENT** ppRoleList, |
185 | int* piInstallCount, | 185 | int* piInstallCount, |
186 | int* piUninstallCount | 186 | int* piUninstallCount |
187 | ); | 187 | ); |
@@ -238,21 +238,21 @@ static HRESULT AddRoleAssignmentsToActionData( | |||
238 | LPWSTR* ppwzActionData | 238 | LPWSTR* ppwzActionData |
239 | ); | 239 | ); |
240 | static HRESULT AddComponentToActionData( | 240 | static HRESULT AddComponentToActionData( |
241 | CPI_COMPONENT* pItm, | 241 | CPISCHED_COMPONENT* pItm, |
242 | BOOL fInstall, | 242 | BOOL fInstall, |
243 | BOOL fProps, | 243 | BOOL fProps, |
244 | BOOL fRoles, | 244 | BOOL fRoles, |
245 | LPWSTR* ppwzActionData | 245 | LPWSTR* ppwzActionData |
246 | ); | 246 | ); |
247 | static HRESULT AddInterfaceToActionData( | 247 | static HRESULT AddInterfaceToActionData( |
248 | CPI_INTERFACE* pItm, | 248 | CPISCHED_INTERFACE* pItm, |
249 | BOOL fInstall, | 249 | BOOL fInstall, |
250 | BOOL fProps, | 250 | BOOL fProps, |
251 | BOOL fRoles, | 251 | BOOL fRoles, |
252 | LPWSTR* ppwzActionData | 252 | LPWSTR* ppwzActionData |
253 | ); | 253 | ); |
254 | static HRESULT AddMethodToActionData( | 254 | static HRESULT AddMethodToActionData( |
255 | CPI_METHOD* pItm, | 255 | CPISCHED_METHOD* pItm, |
256 | BOOL fInstall, | 256 | BOOL fInstall, |
257 | BOOL fProps, | 257 | BOOL fProps, |
258 | BOOL fRoles, | 258 | BOOL fRoles, |
@@ -261,7 +261,7 @@ static HRESULT AddMethodToActionData( | |||
261 | static HRESULT AddRolesToActionData( | 261 | static HRESULT AddRolesToActionData( |
262 | int iRoleInstallCount, | 262 | int iRoleInstallCount, |
263 | int iRoleUninstallCount, | 263 | int iRoleUninstallCount, |
264 | CPI_ROLE_ASSIGNMENT* pRoleList, | 264 | CPISCHED_ROLE_ASSIGNMENT* pRoleList, |
265 | BOOL fInstall, | 265 | BOOL fInstall, |
266 | BOOL fRoles, | 266 | BOOL fRoles, |
267 | LPWSTR* ppwzActionData | 267 | LPWSTR* ppwzActionData |
@@ -284,16 +284,16 @@ static void ModuleFree( | |||
284 | CPI_MODULE* pItm | 284 | CPI_MODULE* pItm |
285 | ); | 285 | ); |
286 | static void ComponentsFreeList( | 286 | static void ComponentsFreeList( |
287 | CPI_COMPONENT* pList | 287 | CPISCHED_COMPONENT* pList |
288 | ); | 288 | ); |
289 | static void InterfacesFreeList( | 289 | static void InterfacesFreeList( |
290 | CPI_INTERFACE* pList | 290 | CPISCHED_INTERFACE* pList |
291 | ); | 291 | ); |
292 | static void MethodsFreeList( | 292 | static void MethodsFreeList( |
293 | CPI_METHOD* pList | 293 | CPISCHED_METHOD* pList |
294 | ); | 294 | ); |
295 | static void RoleAssignmentsFreeList( | 295 | static void RoleAssignmentsFreeList( |
296 | CPI_ROLE_ASSIGNMENT* pList | 296 | CPISCHED_ROLE_ASSIGNMENT* pList |
297 | ); | 297 | ); |
298 | 298 | ||
299 | 299 | ||
@@ -686,7 +686,7 @@ LExit: | |||
686 | 686 | ||
687 | HRESULT CpiGetSubscriptionsCollForComponent( | 687 | HRESULT CpiGetSubscriptionsCollForComponent( |
688 | CPI_ASSEMBLY* pAsm, | 688 | CPI_ASSEMBLY* pAsm, |
689 | CPI_COMPONENT* pComp, | 689 | CPISCHED_COMPONENT* pComp, |
690 | ICatalogCollection** ppiSubsColl | 690 | ICatalogCollection** ppiSubsColl |
691 | ) | 691 | ) |
692 | { | 692 | { |
@@ -713,7 +713,7 @@ HRESULT CpiGetSubscriptionsCollForComponent( | |||
713 | ExitFunction(); // exit with hr = S_FALSE | 713 | ExitFunction(); // exit with hr = S_FALSE |
714 | 714 | ||
715 | // get roles collection | 715 | // get roles collection |
716 | hr = CpiGetCatalogCollection(piCompColl, piCompObj, L"SubscriptionsForComponent", &pComp->piSubsColl); | 716 | hr = CpiSchedGetCatalogCollection(piCompColl, piCompObj, L"SubscriptionsForComponent", &pComp->piSubsColl); |
717 | ExitOnFailure(hr, "Failed to get subscriptions collection"); | 717 | ExitOnFailure(hr, "Failed to get subscriptions collection"); |
718 | } | 718 | } |
719 | 719 | ||
@@ -1372,7 +1372,7 @@ static HRESULT ComponentsRead( | |||
1372 | PMSIHANDLE hView; | 1372 | PMSIHANDLE hView; |
1373 | PMSIHANDLE hRec; | 1373 | PMSIHANDLE hRec; |
1374 | PMSIHANDLE hRecKey; | 1374 | PMSIHANDLE hRecKey; |
1375 | CPI_COMPONENT* pItm = NULL; | 1375 | CPISCHED_COMPONENT* pItm = NULL; |
1376 | LPWSTR pwzData = NULL; | 1376 | LPWSTR pwzData = NULL; |
1377 | 1377 | ||
1378 | // create parameter record | 1378 | // create parameter record |
@@ -1390,7 +1390,7 @@ static HRESULT ComponentsRead( | |||
1390 | while (S_OK == (hr = WcaFetchRecord(hView, &hRec))) | 1390 | while (S_OK == (hr = WcaFetchRecord(hView, &hRec))) |
1391 | { | 1391 | { |
1392 | // create entry | 1392 | // create entry |
1393 | pItm = (CPI_COMPONENT*)::HeapAlloc(::GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(CPI_COMPONENT)); | 1393 | pItm = (CPISCHED_COMPONENT*)::HeapAlloc(::GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(CPISCHED_COMPONENT)); |
1394 | if (!pItm) | 1394 | if (!pItm) |
1395 | ExitFunction1(hr = E_OUTOFMEMORY); | 1395 | ExitFunction1(hr = E_OUTOFMEMORY); |
1396 | 1396 | ||
@@ -1455,14 +1455,14 @@ static HRESULT InterfacesRead( | |||
1455 | LPCWSTR pwzCompKey, | 1455 | LPCWSTR pwzCompKey, |
1456 | CPI_APPLICATION_ROLE_LIST* pAppRoleList, | 1456 | CPI_APPLICATION_ROLE_LIST* pAppRoleList, |
1457 | CPI_ASSEMBLY* pAsm, | 1457 | CPI_ASSEMBLY* pAsm, |
1458 | CPI_COMPONENT* pComp | 1458 | CPISCHED_COMPONENT* pComp |
1459 | ) | 1459 | ) |
1460 | { | 1460 | { |
1461 | HRESULT hr = S_OK; | 1461 | HRESULT hr = S_OK; |
1462 | PMSIHANDLE hView; | 1462 | PMSIHANDLE hView; |
1463 | PMSIHANDLE hRec; | 1463 | PMSIHANDLE hRec; |
1464 | PMSIHANDLE hRecKey; | 1464 | PMSIHANDLE hRecKey; |
1465 | CPI_INTERFACE* pItm = NULL; | 1465 | CPISCHED_INTERFACE* pItm = NULL; |
1466 | LPWSTR pwzData = NULL; | 1466 | LPWSTR pwzData = NULL; |
1467 | 1467 | ||
1468 | // create parameter record | 1468 | // create parameter record |
@@ -1480,7 +1480,7 @@ static HRESULT InterfacesRead( | |||
1480 | while (S_OK == (hr = WcaFetchRecord(hView, &hRec))) | 1480 | while (S_OK == (hr = WcaFetchRecord(hView, &hRec))) |
1481 | { | 1481 | { |
1482 | // create entry | 1482 | // create entry |
1483 | pItm = (CPI_INTERFACE*)::HeapAlloc(::GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(CPI_INTERFACE)); | 1483 | pItm = (CPISCHED_INTERFACE*)::HeapAlloc(::GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(CPISCHED_INTERFACE)); |
1484 | if (!pItm) | 1484 | if (!pItm) |
1485 | ExitFunction1(hr = E_OUTOFMEMORY); | 1485 | ExitFunction1(hr = E_OUTOFMEMORY); |
1486 | 1486 | ||
@@ -1545,12 +1545,12 @@ static HRESULT MethodsRead( | |||
1545 | LPCWSTR pwzIntfKey, | 1545 | LPCWSTR pwzIntfKey, |
1546 | CPI_APPLICATION_ROLE_LIST* pAppRoleList, | 1546 | CPI_APPLICATION_ROLE_LIST* pAppRoleList, |
1547 | CPI_ASSEMBLY* pAsm, | 1547 | CPI_ASSEMBLY* pAsm, |
1548 | CPI_INTERFACE* pIntf | 1548 | CPISCHED_INTERFACE* pIntf |
1549 | ) | 1549 | ) |
1550 | { | 1550 | { |
1551 | HRESULT hr = S_OK; | 1551 | HRESULT hr = S_OK; |
1552 | PMSIHANDLE hView, hRec, hRecKey; | 1552 | PMSIHANDLE hView, hRec, hRecKey; |
1553 | CPI_METHOD* pItm = NULL; | 1553 | CPISCHED_METHOD* pItm = NULL; |
1554 | LPWSTR pwzData = NULL; | 1554 | LPWSTR pwzData = NULL; |
1555 | 1555 | ||
1556 | // create parameter record | 1556 | // create parameter record |
@@ -1568,7 +1568,7 @@ static HRESULT MethodsRead( | |||
1568 | while (S_OK == (hr = WcaFetchRecord(hView, &hRec))) | 1568 | while (S_OK == (hr = WcaFetchRecord(hView, &hRec))) |
1569 | { | 1569 | { |
1570 | // create entry | 1570 | // create entry |
1571 | pItm = (CPI_METHOD*)::HeapAlloc(::GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(CPI_METHOD)); | 1571 | pItm = (CPISCHED_METHOD*)::HeapAlloc(::GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(CPISCHED_METHOD)); |
1572 | if (!pItm) | 1572 | if (!pItm) |
1573 | ExitFunction1(hr = E_OUTOFMEMORY); | 1573 | ExitFunction1(hr = E_OUTOFMEMORY); |
1574 | 1574 | ||
@@ -1635,7 +1635,7 @@ static HRESULT RoleAssignmentsRead( | |||
1635 | LPCWSTR pwzQuery, | 1635 | LPCWSTR pwzQuery, |
1636 | LPCWSTR pwzKey, | 1636 | LPCWSTR pwzKey, |
1637 | CPI_APPLICATION_ROLE_LIST* pAppRoleList, | 1637 | CPI_APPLICATION_ROLE_LIST* pAppRoleList, |
1638 | CPI_ROLE_ASSIGNMENT** ppRoleList, | 1638 | CPISCHED_ROLE_ASSIGNMENT** ppRoleList, |
1639 | int* piInstallCount, | 1639 | int* piInstallCount, |
1640 | int* piUninstallCount | 1640 | int* piUninstallCount |
1641 | ) | 1641 | ) |
@@ -1645,7 +1645,7 @@ static HRESULT RoleAssignmentsRead( | |||
1645 | 1645 | ||
1646 | PMSIHANDLE hView, hRec, hRecKey; | 1646 | PMSIHANDLE hView, hRec, hRecKey; |
1647 | 1647 | ||
1648 | CPI_ROLE_ASSIGNMENT* pItm = NULL; | 1648 | CPISCHED_ROLE_ASSIGNMENT* pItm = NULL; |
1649 | LPWSTR pwzData = NULL; | 1649 | LPWSTR pwzData = NULL; |
1650 | BOOL fMatchingArchitecture = FALSE; | 1650 | BOOL fMatchingArchitecture = FALSE; |
1651 | 1651 | ||
@@ -1677,7 +1677,7 @@ static HRESULT RoleAssignmentsRead( | |||
1677 | } | 1677 | } |
1678 | 1678 | ||
1679 | // create entry | 1679 | // create entry |
1680 | pItm = (CPI_ROLE_ASSIGNMENT*)::HeapAlloc(::GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(CPI_ROLE_ASSIGNMENT)); | 1680 | pItm = (CPISCHED_ROLE_ASSIGNMENT*)::HeapAlloc(::GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(CPISCHED_ROLE_ASSIGNMENT)); |
1681 | if (!pItm) | 1681 | if (!pItm) |
1682 | ExitFunction1(hr = E_OUTOFMEMORY); | 1682 | ExitFunction1(hr = E_OUTOFMEMORY); |
1683 | 1683 | ||
@@ -1786,7 +1786,7 @@ static HRESULT AddAssemblyToActionData( | |||
1786 | 1786 | ||
1787 | if (iCompCount) | 1787 | if (iCompCount) |
1788 | { | 1788 | { |
1789 | for (CPI_COMPONENT* pComp = pItm->pComponents; pComp; pComp = pComp->pNext) | 1789 | for (CPISCHED_COMPONENT* pComp = pItm->pComponents; pComp; pComp = pComp->pNext) |
1790 | { | 1790 | { |
1791 | hr = AddComponentToActionData(pComp, fInstall, atCreate == iActionType, FALSE, ppwzActionData); | 1791 | hr = AddComponentToActionData(pComp, fInstall, atCreate == iActionType, FALSE, ppwzActionData); |
1792 | ExitOnFailure(hr, "Failed to add component to custom action data, component: %S", pComp->wzKey); | 1792 | ExitOnFailure(hr, "Failed to add component to custom action data, component: %S", pComp->wzKey); |
@@ -1834,7 +1834,7 @@ static HRESULT AddRoleAssignmentsToActionData( | |||
1834 | hr = WcaWriteIntegerToCaData(pItm->iComponentCount, ppwzActionData); | 1834 | hr = WcaWriteIntegerToCaData(pItm->iComponentCount, ppwzActionData); |
1835 | ExitOnFailure(hr, "Failed to add component count to custom action data"); | 1835 | ExitOnFailure(hr, "Failed to add component count to custom action data"); |
1836 | 1836 | ||
1837 | for (CPI_COMPONENT* pComp = pItm->pComponents; pComp; pComp = pComp->pNext) | 1837 | for (CPISCHED_COMPONENT* pComp = pItm->pComponents; pComp; pComp = pComp->pNext) |
1838 | { | 1838 | { |
1839 | hr = AddComponentToActionData(pComp, fInstall, FALSE, TRUE, ppwzActionData); | 1839 | hr = AddComponentToActionData(pComp, fInstall, FALSE, TRUE, ppwzActionData); |
1840 | ExitOnFailure(hr, "Failed to add component to custom action data, component: %S", pComp->wzKey); | 1840 | ExitOnFailure(hr, "Failed to add component to custom action data, component: %S", pComp->wzKey); |
@@ -1847,7 +1847,7 @@ LExit: | |||
1847 | } | 1847 | } |
1848 | 1848 | ||
1849 | static HRESULT AddComponentToActionData( | 1849 | static HRESULT AddComponentToActionData( |
1850 | CPI_COMPONENT* pItm, | 1850 | CPISCHED_COMPONENT* pItm, |
1851 | BOOL fInstall, | 1851 | BOOL fInstall, |
1852 | BOOL fProps, | 1852 | BOOL fProps, |
1853 | BOOL fRoles, | 1853 | BOOL fRoles, |
@@ -1875,7 +1875,7 @@ static HRESULT AddComponentToActionData( | |||
1875 | 1875 | ||
1876 | if (iIntfCount) | 1876 | if (iIntfCount) |
1877 | { | 1877 | { |
1878 | for (CPI_INTERFACE* pIntf = pItm->pInterfaces; pIntf; pIntf = pIntf->pNext) | 1878 | for (CPISCHED_INTERFACE* pIntf = pItm->pInterfaces; pIntf; pIntf = pIntf->pNext) |
1879 | { | 1879 | { |
1880 | hr = AddInterfaceToActionData(pIntf, fInstall, fProps, fRoles, ppwzActionData); | 1880 | hr = AddInterfaceToActionData(pIntf, fInstall, fProps, fRoles, ppwzActionData); |
1881 | ExitOnFailure(hr, "Failed to add interface custom action data, interface: %S", pIntf->wzKey); | 1881 | ExitOnFailure(hr, "Failed to add interface custom action data, interface: %S", pIntf->wzKey); |
@@ -1889,7 +1889,7 @@ LExit: | |||
1889 | } | 1889 | } |
1890 | 1890 | ||
1891 | static HRESULT AddInterfaceToActionData( | 1891 | static HRESULT AddInterfaceToActionData( |
1892 | CPI_INTERFACE* pItm, | 1892 | CPISCHED_INTERFACE* pItm, |
1893 | BOOL fInstall, | 1893 | BOOL fInstall, |
1894 | BOOL fProps, | 1894 | BOOL fProps, |
1895 | BOOL fRoles, | 1895 | BOOL fRoles, |
@@ -1914,7 +1914,7 @@ static HRESULT AddInterfaceToActionData( | |||
1914 | hr = WcaWriteIntegerToCaData(pItm->iMethodCount, ppwzActionData); | 1914 | hr = WcaWriteIntegerToCaData(pItm->iMethodCount, ppwzActionData); |
1915 | ExitOnFailure(hr, "Failed to add method count to custom action data"); | 1915 | ExitOnFailure(hr, "Failed to add method count to custom action data"); |
1916 | 1916 | ||
1917 | for (CPI_METHOD* pMeth = pItm->pMethods; pMeth; pMeth = pMeth->pNext) | 1917 | for (CPISCHED_METHOD* pMeth = pItm->pMethods; pMeth; pMeth = pMeth->pNext) |
1918 | { | 1918 | { |
1919 | hr = AddMethodToActionData(pMeth, fInstall, fProps, fRoles, ppwzActionData); | 1919 | hr = AddMethodToActionData(pMeth, fInstall, fProps, fRoles, ppwzActionData); |
1920 | ExitOnFailure(hr, "Failed to add method custom action data, method: %S", pMeth->wzKey); | 1920 | ExitOnFailure(hr, "Failed to add method custom action data, method: %S", pMeth->wzKey); |
@@ -1927,7 +1927,7 @@ LExit: | |||
1927 | } | 1927 | } |
1928 | 1928 | ||
1929 | static HRESULT AddMethodToActionData( | 1929 | static HRESULT AddMethodToActionData( |
1930 | CPI_METHOD* pItm, | 1930 | CPISCHED_METHOD* pItm, |
1931 | BOOL fInstall, | 1931 | BOOL fInstall, |
1932 | BOOL fProps, | 1932 | BOOL fProps, |
1933 | BOOL fRoles, | 1933 | BOOL fRoles, |
@@ -1960,7 +1960,7 @@ LExit: | |||
1960 | static HRESULT AddRolesToActionData( | 1960 | static HRESULT AddRolesToActionData( |
1961 | int iRoleInstallCount, | 1961 | int iRoleInstallCount, |
1962 | int iRoleUninstallCount, | 1962 | int iRoleUninstallCount, |
1963 | CPI_ROLE_ASSIGNMENT* pRoleList, | 1963 | CPISCHED_ROLE_ASSIGNMENT* pRoleList, |
1964 | BOOL fInstall, | 1964 | BOOL fInstall, |
1965 | BOOL fRoles, | 1965 | BOOL fRoles, |
1966 | LPWSTR* ppwzActionData | 1966 | LPWSTR* ppwzActionData |
@@ -1974,7 +1974,7 @@ static HRESULT AddRolesToActionData( | |||
1974 | 1974 | ||
1975 | if (iRoleCount) | 1975 | if (iRoleCount) |
1976 | { | 1976 | { |
1977 | for (CPI_ROLE_ASSIGNMENT* pRole = pRoleList; pRole; pRole = pRole->pNext) | 1977 | for (CPISCHED_ROLE_ASSIGNMENT* pRole = pRoleList; pRole; pRole = pRole->pNext) |
1978 | { | 1978 | { |
1979 | // make sure the install state matches the create flag | 1979 | // make sure the install state matches the create flag |
1980 | if (fInstall ? !WcaIsInstalling(pRole->isInstalled, pRole->isAction) : !WcaIsUninstalling(pRole->isInstalled, pRole->isAction)) | 1980 | if (fInstall ? !WcaIsInstalling(pRole->isInstalled, pRole->isAction) : !WcaIsUninstalling(pRole->isInstalled, pRole->isAction)) |
@@ -2061,7 +2061,7 @@ static void ModuleFree( | |||
2061 | } | 2061 | } |
2062 | 2062 | ||
2063 | static void ComponentsFreeList( | 2063 | static void ComponentsFreeList( |
2064 | CPI_COMPONENT* pList | 2064 | CPISCHED_COMPONENT* pList |
2065 | ) | 2065 | ) |
2066 | { | 2066 | { |
2067 | while (pList) | 2067 | while (pList) |
@@ -2077,14 +2077,14 @@ static void ComponentsFreeList( | |||
2077 | 2077 | ||
2078 | ReleaseObject(pList->piSubsColl); | 2078 | ReleaseObject(pList->piSubsColl); |
2079 | 2079 | ||
2080 | CPI_COMPONENT* pDelete = pList; | 2080 | CPISCHED_COMPONENT* pDelete = pList; |
2081 | pList = pList->pNext; | 2081 | pList = pList->pNext; |
2082 | ::HeapFree(::GetProcessHeap(), 0, pDelete); | 2082 | ::HeapFree(::GetProcessHeap(), 0, pDelete); |
2083 | } | 2083 | } |
2084 | } | 2084 | } |
2085 | 2085 | ||
2086 | static void InterfacesFreeList( | 2086 | static void InterfacesFreeList( |
2087 | CPI_INTERFACE* pList | 2087 | CPISCHED_INTERFACE* pList |
2088 | ) | 2088 | ) |
2089 | { | 2089 | { |
2090 | while (pList) | 2090 | while (pList) |
@@ -2098,14 +2098,14 @@ static void InterfacesFreeList( | |||
2098 | if (pList->pMethods) | 2098 | if (pList->pMethods) |
2099 | MethodsFreeList(pList->pMethods); | 2099 | MethodsFreeList(pList->pMethods); |
2100 | 2100 | ||
2101 | CPI_INTERFACE* pDelete = pList; | 2101 | CPISCHED_INTERFACE* pDelete = pList; |
2102 | pList = pList->pNext; | 2102 | pList = pList->pNext; |
2103 | ::HeapFree(::GetProcessHeap(), 0, pDelete); | 2103 | ::HeapFree(::GetProcessHeap(), 0, pDelete); |
2104 | } | 2104 | } |
2105 | } | 2105 | } |
2106 | 2106 | ||
2107 | static void MethodsFreeList( | 2107 | static void MethodsFreeList( |
2108 | CPI_METHOD* pList | 2108 | CPISCHED_METHOD* pList |
2109 | ) | 2109 | ) |
2110 | { | 2110 | { |
2111 | while (pList) | 2111 | while (pList) |
@@ -2116,19 +2116,19 @@ static void MethodsFreeList( | |||
2116 | if (pList->pRoles) | 2116 | if (pList->pRoles) |
2117 | RoleAssignmentsFreeList(pList->pRoles); | 2117 | RoleAssignmentsFreeList(pList->pRoles); |
2118 | 2118 | ||
2119 | CPI_METHOD* pDelete = pList; | 2119 | CPISCHED_METHOD* pDelete = pList; |
2120 | pList = pList->pNext; | 2120 | pList = pList->pNext; |
2121 | ::HeapFree(::GetProcessHeap(), 0, pDelete); | 2121 | ::HeapFree(::GetProcessHeap(), 0, pDelete); |
2122 | } | 2122 | } |
2123 | } | 2123 | } |
2124 | 2124 | ||
2125 | static void RoleAssignmentsFreeList( | 2125 | static void RoleAssignmentsFreeList( |
2126 | CPI_ROLE_ASSIGNMENT* pList | 2126 | CPISCHED_ROLE_ASSIGNMENT* pList |
2127 | ) | 2127 | ) |
2128 | { | 2128 | { |
2129 | while (pList) | 2129 | while (pList) |
2130 | { | 2130 | { |
2131 | CPI_ROLE_ASSIGNMENT* pDelete = pList; | 2131 | CPISCHED_ROLE_ASSIGNMENT* pDelete = pList; |
2132 | pList = pList->pNext; | 2132 | pList = pList->pNext; |
2133 | ::HeapFree(::GetProcessHeap(), 0, pDelete); | 2133 | ::HeapFree(::GetProcessHeap(), 0, pDelete); |
2134 | } | 2134 | } |
diff --git a/src/ca/cpasmsched.h b/src/ca/cpasmsched.h index b5a68d7e..ddf4b6c0 100644 --- a/src/ca/cpasmsched.h +++ b/src/ca/cpasmsched.h | |||
@@ -13,7 +13,7 @@ enum eAssemblyAttributes | |||
13 | 13 | ||
14 | // structs | 14 | // structs |
15 | 15 | ||
16 | struct CPI_ROLE_ASSIGNMENT | 16 | struct CPISCHED_ROLE_ASSIGNMENT |
17 | { | 17 | { |
18 | WCHAR wzKey[MAX_DARWIN_KEY + 1]; | 18 | WCHAR wzKey[MAX_DARWIN_KEY + 1]; |
19 | 19 | ||
@@ -21,10 +21,10 @@ struct CPI_ROLE_ASSIGNMENT | |||
21 | 21 | ||
22 | CPI_APPLICATION_ROLE* pApplicationRole; | 22 | CPI_APPLICATION_ROLE* pApplicationRole; |
23 | 23 | ||
24 | CPI_ROLE_ASSIGNMENT* pNext; | 24 | CPISCHED_ROLE_ASSIGNMENT* pNext; |
25 | }; | 25 | }; |
26 | 26 | ||
27 | struct CPI_METHOD | 27 | struct CPISCHED_METHOD |
28 | { | 28 | { |
29 | WCHAR wzKey[MAX_DARWIN_KEY + 1]; | 29 | WCHAR wzKey[MAX_DARWIN_KEY + 1]; |
30 | WCHAR wzIndex[11 + 1]; | 30 | WCHAR wzIndex[11 + 1]; |
@@ -35,12 +35,12 @@ struct CPI_METHOD | |||
35 | 35 | ||
36 | int iRoleInstallCount; | 36 | int iRoleInstallCount; |
37 | int iRoleUninstallCount; | 37 | int iRoleUninstallCount; |
38 | CPI_ROLE_ASSIGNMENT* pRoles; | 38 | CPISCHED_ROLE_ASSIGNMENT* pRoles; |
39 | 39 | ||
40 | CPI_METHOD* pNext; | 40 | CPISCHED_METHOD* pNext; |
41 | }; | 41 | }; |
42 | 42 | ||
43 | struct CPI_INTERFACE | 43 | struct CPISCHED_INTERFACE |
44 | { | 44 | { |
45 | WCHAR wzKey[MAX_DARWIN_KEY + 1]; | 45 | WCHAR wzKey[MAX_DARWIN_KEY + 1]; |
46 | WCHAR wzIID[CPI_MAX_GUID + 1]; | 46 | WCHAR wzIID[CPI_MAX_GUID + 1]; |
@@ -50,15 +50,15 @@ struct CPI_INTERFACE | |||
50 | 50 | ||
51 | int iRoleInstallCount; | 51 | int iRoleInstallCount; |
52 | int iRoleUninstallCount; | 52 | int iRoleUninstallCount; |
53 | CPI_ROLE_ASSIGNMENT* pRoles; | 53 | CPISCHED_ROLE_ASSIGNMENT* pRoles; |
54 | 54 | ||
55 | int iMethodCount; | 55 | int iMethodCount; |
56 | CPI_METHOD* pMethods; | 56 | CPISCHED_METHOD* pMethods; |
57 | 57 | ||
58 | CPI_INTERFACE* pNext; | 58 | CPISCHED_INTERFACE* pNext; |
59 | }; | 59 | }; |
60 | 60 | ||
61 | struct CPI_COMPONENT | 61 | struct CPISCHED_COMPONENT |
62 | { | 62 | { |
63 | WCHAR wzKey[MAX_DARWIN_KEY + 1]; | 63 | WCHAR wzKey[MAX_DARWIN_KEY + 1]; |
64 | WCHAR wzCLSID[CPI_MAX_GUID + 1]; | 64 | WCHAR wzCLSID[CPI_MAX_GUID + 1]; |
@@ -68,14 +68,14 @@ struct CPI_COMPONENT | |||
68 | 68 | ||
69 | int iRoleInstallCount; | 69 | int iRoleInstallCount; |
70 | int iRoleUninstallCount; | 70 | int iRoleUninstallCount; |
71 | CPI_ROLE_ASSIGNMENT* pRoles; | 71 | CPISCHED_ROLE_ASSIGNMENT* pRoles; |
72 | 72 | ||
73 | int iInterfaceCount; | 73 | int iInterfaceCount; |
74 | CPI_INTERFACE* pInterfaces; | 74 | CPISCHED_INTERFACE* pInterfaces; |
75 | 75 | ||
76 | ICatalogCollection* piSubsColl; | 76 | ICatalogCollection* piSubsColl; |
77 | 77 | ||
78 | CPI_COMPONENT* pNext; | 78 | CPISCHED_COMPONENT* pNext; |
79 | }; | 79 | }; |
80 | 80 | ||
81 | struct CPI_ASSEMBLY | 81 | struct CPI_ASSEMBLY |
@@ -89,7 +89,7 @@ struct CPI_ASSEMBLY | |||
89 | int iAttributes; | 89 | int iAttributes; |
90 | 90 | ||
91 | int iComponentCount; | 91 | int iComponentCount; |
92 | CPI_COMPONENT* pComponents; | 92 | CPISCHED_COMPONENT* pComponents; |
93 | 93 | ||
94 | BOOL fReferencedForInstall; | 94 | BOOL fReferencedForInstall; |
95 | BOOL fReferencedForUninstall; | 95 | BOOL fReferencedForUninstall; |
@@ -163,6 +163,6 @@ HRESULT CpiRoleAssignmentsUninstall( | |||
163 | ); | 163 | ); |
164 | HRESULT CpiGetSubscriptionsCollForComponent( | 164 | HRESULT CpiGetSubscriptionsCollForComponent( |
165 | CPI_ASSEMBLY* pAsm, | 165 | CPI_ASSEMBLY* pAsm, |
166 | CPI_COMPONENT* pComp, | 166 | CPISCHED_COMPONENT* pComp, |
167 | ICatalogCollection** ppiSubsColl | 167 | ICatalogCollection** ppiSubsColl |
168 | ); | 168 | ); |
diff --git a/src/ca/cpexec.cpp b/src/ca/cpexec.cpp index fa2446d8..9b1691fc 100644 --- a/src/ca/cpexec.cpp +++ b/src/ca/cpexec.cpp | |||
@@ -3,29 +3,6 @@ | |||
3 | #include "precomp.h" | 3 | #include "precomp.h" |
4 | 4 | ||
5 | /******************************************************************** | 5 | /******************************************************************** |
6 | DllMain - standard entry point for all WiX CustomActions | ||
7 | |||
8 | ********************************************************************/ | ||
9 | extern "C" BOOL WINAPI DllMain( | ||
10 | IN HINSTANCE hInst, | ||
11 | IN ULONG ulReason, | ||
12 | IN LPVOID) | ||
13 | { | ||
14 | switch(ulReason) | ||
15 | { | ||
16 | case DLL_PROCESS_ATTACH: | ||
17 | WcaGlobalInitialize(hInst); | ||
18 | break; | ||
19 | |||
20 | case DLL_PROCESS_DETACH: | ||
21 | WcaGlobalFinalize(); | ||
22 | break; | ||
23 | } | ||
24 | |||
25 | return TRUE; | ||
26 | } | ||
27 | |||
28 | /******************************************************************** | ||
29 | ComPlusPrepare - CUSTOM ACTION ENTRY POINT | 6 | ComPlusPrepare - CUSTOM ACTION ENTRY POINT |
30 | 7 | ||
31 | Input: deferred CustomActionData - ComPlusPrepare | 8 | Input: deferred CustomActionData - ComPlusPrepare |
@@ -133,7 +110,7 @@ extern "C" UINT __stdcall ComPlusInstallExecute(MSIHANDLE hInstall) | |||
133 | ExitOnFailure(hr, "Failed to initialize COM"); | 110 | ExitOnFailure(hr, "Failed to initialize COM"); |
134 | fInitializedCom = TRUE; | 111 | fInitializedCom = TRUE; |
135 | 112 | ||
136 | CpiInitialize(); | 113 | CpiExecInitialize(); |
137 | 114 | ||
138 | // get custom action data | 115 | // get custom action data |
139 | hr = WcaGetProperty(L"CustomActionData", &pwzCustomActionData); | 116 | hr = WcaGetProperty(L"CustomActionData", &pwzCustomActionData); |
@@ -204,7 +181,7 @@ LExit: | |||
204 | ::CloseHandle(hRollbackFile); | 181 | ::CloseHandle(hRollbackFile); |
205 | 182 | ||
206 | // unitialize | 183 | // unitialize |
207 | CpiFinalize(); | 184 | CpiExecFinalize(); |
208 | 185 | ||
209 | if (fInitializedCom) | 186 | if (fInitializedCom) |
210 | ::CoUninitialize(); | 187 | ::CoUninitialize(); |
@@ -239,7 +216,7 @@ extern "C" UINT __stdcall ComPlusInstallExecuteCommit(MSIHANDLE hInstall) | |||
239 | ExitOnFailure(hr, "Failed to initialize COM"); | 216 | ExitOnFailure(hr, "Failed to initialize COM"); |
240 | fInitializedCom = TRUE; | 217 | fInitializedCom = TRUE; |
241 | 218 | ||
242 | CpiInitialize(); | 219 | CpiExecInitialize(); |
243 | 220 | ||
244 | // get custom action data | 221 | // get custom action data |
245 | hr = WcaGetProperty(L"CustomActionData", &pwzCustomActionData); | 222 | hr = WcaGetProperty(L"CustomActionData", &pwzCustomActionData); |
@@ -282,7 +259,7 @@ LExit: | |||
282 | ::CloseHandle(hRollbackFile); | 259 | ::CloseHandle(hRollbackFile); |
283 | 260 | ||
284 | // unitialize | 261 | // unitialize |
285 | CpiFinalize(); | 262 | CpiExecFinalize(); |
286 | 263 | ||
287 | if (fInitializedCom) | 264 | if (fInitializedCom) |
288 | ::CoUninitialize(); | 265 | ::CoUninitialize(); |
@@ -327,7 +304,7 @@ extern "C" UINT __stdcall ComPlusRollbackInstallExecute(MSIHANDLE hInstall) | |||
327 | ExitOnFailure(hr, "Failed to initialize COM"); | 304 | ExitOnFailure(hr, "Failed to initialize COM"); |
328 | fInitializedCom = TRUE; | 305 | fInitializedCom = TRUE; |
329 | 306 | ||
330 | CpiInitialize(); | 307 | CpiExecInitialize(); |
331 | 308 | ||
332 | // get custom action data | 309 | // get custom action data |
333 | hr = WcaGetProperty(L"CustomActionData", &pwzCustomActionData); | 310 | hr = WcaGetProperty(L"CustomActionData", &pwzCustomActionData); |
@@ -439,7 +416,7 @@ LExit: | |||
439 | CpiFreeRollbackDataList(prdSubscriptions); | 416 | CpiFreeRollbackDataList(prdSubscriptions); |
440 | 417 | ||
441 | // unitialize | 418 | // unitialize |
442 | CpiFinalize(); | 419 | CpiExecFinalize(); |
443 | 420 | ||
444 | if (fInitializedCom) | 421 | if (fInitializedCom) |
445 | ::CoUninitialize(); | 422 | ::CoUninitialize(); |
@@ -474,7 +451,7 @@ extern "C" UINT __stdcall ComPlusUninstallExecute(MSIHANDLE hInstall) | |||
474 | ExitOnFailure(hr, "Failed to initialize COM"); | 451 | ExitOnFailure(hr, "Failed to initialize COM"); |
475 | fInitializedCom = TRUE; | 452 | fInitializedCom = TRUE; |
476 | 453 | ||
477 | CpiInitialize(); | 454 | CpiExecInitialize(); |
478 | 455 | ||
479 | // get custom action data | 456 | // get custom action data |
480 | hr = WcaGetProperty(L"CustomActionData", &pwzCustomActionData); | 457 | hr = WcaGetProperty(L"CustomActionData", &pwzCustomActionData); |
@@ -545,7 +522,7 @@ LExit: | |||
545 | ::CloseHandle(hRollbackFile); | 522 | ::CloseHandle(hRollbackFile); |
546 | 523 | ||
547 | // unitialize | 524 | // unitialize |
548 | CpiFinalize(); | 525 | CpiExecFinalize(); |
549 | 526 | ||
550 | if (fInitializedCom) | 527 | if (fInitializedCom) |
551 | ::CoUninitialize(); | 528 | ::CoUninitialize(); |
@@ -590,7 +567,7 @@ extern "C" UINT __stdcall ComPlusRollbackUninstallExecute(MSIHANDLE hInstall) | |||
590 | ExitOnFailure(hr, "Failed to initialize COM"); | 567 | ExitOnFailure(hr, "Failed to initialize COM"); |
591 | fInitializedCom = TRUE; | 568 | fInitializedCom = TRUE; |
592 | 569 | ||
593 | CpiInitialize(); | 570 | CpiExecInitialize(); |
594 | 571 | ||
595 | // get custom action data | 572 | // get custom action data |
596 | hr = WcaGetProperty(L"CustomActionData", &pwzCustomActionData); | 573 | hr = WcaGetProperty(L"CustomActionData", &pwzCustomActionData); |
@@ -694,7 +671,7 @@ LExit: | |||
694 | CpiFreeRollbackDataList(prdSubscriptions); | 671 | CpiFreeRollbackDataList(prdSubscriptions); |
695 | 672 | ||
696 | // unitialize | 673 | // unitialize |
697 | CpiFinalize(); | 674 | CpiExecFinalize(); |
698 | 675 | ||
699 | if (fInitializedCom) | 676 | if (fInitializedCom) |
700 | ::CoUninitialize(); | 677 | ::CoUninitialize(); |
diff --git a/src/ca/cppartexec.cpp b/src/ca/cppartexec.cpp index d8c30c6a..673bdaf9 100644 --- a/src/ca/cppartexec.cpp +++ b/src/ca/cppartexec.cpp | |||
@@ -399,7 +399,7 @@ static HRESULT CreatePartition( | |||
399 | WcaLog(LOGMSG_VERBOSE, "Creating partition, key: %S", pAttrs->pwzKey); | 399 | WcaLog(LOGMSG_VERBOSE, "Creating partition, key: %S", pAttrs->pwzKey); |
400 | 400 | ||
401 | // get partitions collection | 401 | // get partitions collection |
402 | hr = CpiGetPartitionsCollection(&piPartColl); | 402 | hr = CpiExecGetPartitionsCollection(&piPartColl); |
403 | ExitOnFailure(hr, "Failed to get partitions collection"); | 403 | ExitOnFailure(hr, "Failed to get partitions collection"); |
404 | 404 | ||
405 | // check if partition exists | 405 | // check if partition exists |
@@ -456,7 +456,7 @@ static HRESULT RemovePartition( | |||
456 | WcaLog(LOGMSG_VERBOSE, "Removing partition, key: %S", pAttrs->pwzKey); | 456 | WcaLog(LOGMSG_VERBOSE, "Removing partition, key: %S", pAttrs->pwzKey); |
457 | 457 | ||
458 | // get partitions collection | 458 | // get partitions collection |
459 | hr = CpiGetPartitionsCollection(&piPartColl); | 459 | hr = CpiExecGetPartitionsCollection(&piPartColl); |
460 | ExitOnFailure(hr, "Failed to get partitions collection"); | 460 | ExitOnFailure(hr, "Failed to get partitions collection"); |
461 | 461 | ||
462 | // remove | 462 | // remove |
diff --git a/src/ca/cppartsched.cpp b/src/ca/cppartsched.cpp index 6643a50b..7cd98791 100644 --- a/src/ca/cppartsched.cpp +++ b/src/ca/cppartsched.cpp | |||
@@ -199,7 +199,7 @@ HRESULT CpiPartitionsVerifyInstall( | |||
199 | // get partitions collection | 199 | // get partitions collection |
200 | if (!piPartColl) | 200 | if (!piPartColl) |
201 | { | 201 | { |
202 | hr = CpiGetPartitionsCollection(&piPartColl); | 202 | hr = CpiSchedGetPartitionsCollection(&piPartColl); |
203 | ExitOnFailure(hr, "Failed to get partitions collection"); | 203 | ExitOnFailure(hr, "Failed to get partitions collection"); |
204 | } | 204 | } |
205 | 205 | ||
@@ -336,7 +336,7 @@ HRESULT CpiPartitionsVerifyUninstall( | |||
336 | // get partitions collection | 336 | // get partitions collection |
337 | if (!piPartColl) | 337 | if (!piPartColl) |
338 | { | 338 | { |
339 | hr = CpiGetPartitionsCollection(&piPartColl); | 339 | hr = CpiSchedGetPartitionsCollection(&piPartColl); |
340 | ExitOnFailure(hr, "Failed to get partitions collection"); | 340 | ExitOnFailure(hr, "Failed to get partitions collection"); |
341 | } | 341 | } |
342 | 342 | ||
@@ -526,7 +526,7 @@ HRESULT CpiGetApplicationsCollForPartition( | |||
526 | if (!pPart->piApplicationsColl) | 526 | if (!pPart->piApplicationsColl) |
527 | { | 527 | { |
528 | // get partitions collection from catalog | 528 | // get partitions collection from catalog |
529 | hr = CpiGetPartitionsCollection(&piPartColl); | 529 | hr = CpiSchedGetPartitionsCollection(&piPartColl); |
530 | ExitOnFailure(hr, "Failed to get partitions collection"); | 530 | ExitOnFailure(hr, "Failed to get partitions collection"); |
531 | 531 | ||
532 | // find application object | 532 | // find application object |
@@ -540,7 +540,7 @@ HRESULT CpiGetApplicationsCollForPartition( | |||
540 | } | 540 | } |
541 | 541 | ||
542 | // get roles collection | 542 | // get roles collection |
543 | hr = CpiGetCatalogCollection(piPartColl, piPartObj, L"Applications", &pPart->piApplicationsColl); | 543 | hr = CpiSchedGetCatalogCollection(piPartColl, piPartObj, L"Applications", &pPart->piApplicationsColl); |
544 | ExitOnFailure(hr, "Failed to get applications collection"); | 544 | ExitOnFailure(hr, "Failed to get applications collection"); |
545 | } | 545 | } |
546 | 546 | ||
@@ -576,7 +576,7 @@ HRESULT CpiGetRolesCollForPartition( | |||
576 | if (!pPart->piRolesColl) | 576 | if (!pPart->piRolesColl) |
577 | { | 577 | { |
578 | // get partitions collection from catalog | 578 | // get partitions collection from catalog |
579 | hr = CpiGetPartitionsCollection(&piPartColl); | 579 | hr = CpiSchedGetPartitionsCollection(&piPartColl); |
580 | ExitOnFailure(hr, "Failed to get partitions collection"); | 580 | ExitOnFailure(hr, "Failed to get partitions collection"); |
581 | 581 | ||
582 | // find partition object | 582 | // find partition object |
@@ -587,7 +587,7 @@ HRESULT CpiGetRolesCollForPartition( | |||
587 | ExitFunction(); // exit with hr = S_FALSE | 587 | ExitFunction(); // exit with hr = S_FALSE |
588 | 588 | ||
589 | // get roles collection | 589 | // get roles collection |
590 | hr = CpiGetCatalogCollection(piPartColl, piPartObj, L"RolesForPartition", &pPart->piRolesColl); | 590 | hr = CpiSchedGetCatalogCollection(piPartColl, piPartObj, L"RolesForPartition", &pPart->piRolesColl); |
591 | ExitOnFailure(hr, "Failed to get roles collection"); | 591 | ExitOnFailure(hr, "Failed to get roles collection"); |
592 | } | 592 | } |
593 | 593 | ||
diff --git a/src/ca/cpsched.cpp b/src/ca/cpsched.cpp index ac0dda59..ebc547ae 100644 --- a/src/ca/cpsched.cpp +++ b/src/ca/cpsched.cpp | |||
@@ -29,30 +29,6 @@ | |||
29 | #define CP_COMPLUSINSTALLCOMMIT L"ComPlusInstallCommit" | 29 | #define CP_COMPLUSINSTALLCOMMIT L"ComPlusInstallCommit" |
30 | #endif | 30 | #endif |
31 | 31 | ||
32 | |||
33 | /******************************************************************** | ||
34 | DllMain - standard entry point for all WiX CustomActions | ||
35 | |||
36 | ********************************************************************/ | ||
37 | extern "C" BOOL WINAPI DllMain( | ||
38 | IN HINSTANCE hInst, | ||
39 | IN ULONG ulReason, | ||
40 | IN LPVOID) | ||
41 | { | ||
42 | switch(ulReason) | ||
43 | { | ||
44 | case DLL_PROCESS_ATTACH: | ||
45 | WcaGlobalInitialize(hInst); | ||
46 | break; | ||
47 | |||
48 | case DLL_PROCESS_DETACH: | ||
49 | WcaGlobalFinalize(); | ||
50 | break; | ||
51 | } | ||
52 | |||
53 | return TRUE; | ||
54 | } | ||
55 | |||
56 | /******************************************************************** | 32 | /******************************************************************** |
57 | ConfigureComPlusInstall - CUSTOM ACTION ENTRY POINT for installing COM+ components | 33 | ConfigureComPlusInstall - CUSTOM ACTION ENTRY POINT for installing COM+ components |
58 | 34 | ||
@@ -103,7 +79,7 @@ extern "C" UINT __stdcall ConfigureComPlusInstall(MSIHANDLE hInstall) | |||
103 | ExitOnFailure(hr, "Failed to initialize COM"); | 79 | ExitOnFailure(hr, "Failed to initialize COM"); |
104 | fInitializedCom = TRUE; | 80 | fInitializedCom = TRUE; |
105 | 81 | ||
106 | CpiInitialize(); | 82 | CpiSchedInitialize(); |
107 | 83 | ||
108 | // check for the prerequsite tables | 84 | // check for the prerequsite tables |
109 | if (!CpiTableExists(cptComPlusPartition) && !CpiTableExists(cptComPlusApplication) && !CpiTableExists(cptComPlusAssembly)) | 85 | if (!CpiTableExists(cptComPlusPartition) && !CpiTableExists(cptComPlusApplication) && !CpiTableExists(cptComPlusAssembly)) |
@@ -114,7 +90,7 @@ extern "C" UINT __stdcall ConfigureComPlusInstall(MSIHANDLE hInstall) | |||
114 | 90 | ||
115 | // make sure we can access the COM+ admin catalog | 91 | // make sure we can access the COM+ admin catalog |
116 | do { | 92 | do { |
117 | hr = CpiGetAdminCatalog(&piCatalog); | 93 | hr = CpiSchedGetAdminCatalog(&piCatalog); |
118 | if (FAILED(hr)) | 94 | if (FAILED(hr)) |
119 | { | 95 | { |
120 | WcaLog(LOGMSG_STANDARD, "Failed to get COM+ admin catalog"); | 96 | WcaLog(LOGMSG_STANDARD, "Failed to get COM+ admin catalog"); |
@@ -320,7 +296,7 @@ LExit: | |||
320 | CpiSubscriptionListFree(&subList); | 296 | CpiSubscriptionListFree(&subList); |
321 | 297 | ||
322 | // unitialize | 298 | // unitialize |
323 | CpiFinalize(); | 299 | CpiSchedFinalize(); |
324 | 300 | ||
325 | if (fInitializedCom) | 301 | if (fInitializedCom) |
326 | ::CoUninitialize(); | 302 | ::CoUninitialize(); |
@@ -378,7 +354,7 @@ extern "C" UINT __stdcall ConfigureComPlusUninstall(MSIHANDLE hInstall) | |||
378 | ExitOnFailure(hr, "Failed to initialize COM"); | 354 | ExitOnFailure(hr, "Failed to initialize COM"); |
379 | fInitializedCom = TRUE; | 355 | fInitializedCom = TRUE; |
380 | 356 | ||
381 | CpiInitialize(); | 357 | CpiSchedInitialize(); |
382 | 358 | ||
383 | // check for the prerequsite tables | 359 | // check for the prerequsite tables |
384 | if (!CpiTableExists(cptComPlusPartition) && !CpiTableExists(cptComPlusApplication) && !CpiTableExists(cptComPlusAssembly)) | 360 | if (!CpiTableExists(cptComPlusPartition) && !CpiTableExists(cptComPlusApplication) && !CpiTableExists(cptComPlusAssembly)) |
@@ -389,7 +365,7 @@ extern "C" UINT __stdcall ConfigureComPlusUninstall(MSIHANDLE hInstall) | |||
389 | 365 | ||
390 | // make sure we can access the COM+ admin catalog | 366 | // make sure we can access the COM+ admin catalog |
391 | do { | 367 | do { |
392 | hr = CpiGetAdminCatalog(&piCatalog); | 368 | hr = CpiSchedGetAdminCatalog(&piCatalog); |
393 | if (FAILED(hr)) | 369 | if (FAILED(hr)) |
394 | { | 370 | { |
395 | WcaLog(LOGMSG_STANDARD, "Failed to get COM+ admin catalog"); | 371 | WcaLog(LOGMSG_STANDARD, "Failed to get COM+ admin catalog"); |
@@ -580,7 +556,7 @@ LExit: | |||
580 | CpiSubscriptionListFree(&subList); | 556 | CpiSubscriptionListFree(&subList); |
581 | 557 | ||
582 | // unitialize | 558 | // unitialize |
583 | CpiFinalize(); | 559 | CpiSchedFinalize(); |
584 | 560 | ||
585 | if (fInitializedCom) | 561 | if (fInitializedCom) |
586 | ::CoUninitialize(); | 562 | ::CoUninitialize(); |
diff --git a/src/ca/cpsubssched.cpp b/src/ca/cpsubssched.cpp index 73fd4f6d..df15fd03 100644 --- a/src/ca/cpsubssched.cpp +++ b/src/ca/cpsubssched.cpp | |||
@@ -53,7 +53,7 @@ static HRESULT ComponentFindByKey( | |||
53 | CPI_ASSEMBLY_LIST* pAsmList, | 53 | CPI_ASSEMBLY_LIST* pAsmList, |
54 | LPCWSTR pwzKey, | 54 | LPCWSTR pwzKey, |
55 | CPI_ASSEMBLY** ppAsmItm, | 55 | CPI_ASSEMBLY** ppAsmItm, |
56 | CPI_COMPONENT** ppCompItm | 56 | CPISCHED_COMPONENT** ppCompItm |
57 | ); | 57 | ); |
58 | 58 | ||
59 | 59 | ||
@@ -586,12 +586,12 @@ static HRESULT ComponentFindByKey( | |||
586 | CPI_ASSEMBLY_LIST* pAsmList, | 586 | CPI_ASSEMBLY_LIST* pAsmList, |
587 | LPCWSTR pwzKey, | 587 | LPCWSTR pwzKey, |
588 | CPI_ASSEMBLY** ppAsmItm, | 588 | CPI_ASSEMBLY** ppAsmItm, |
589 | CPI_COMPONENT** ppCompItm | 589 | CPISCHED_COMPONENT** ppCompItm |
590 | ) | 590 | ) |
591 | { | 591 | { |
592 | for (CPI_ASSEMBLY* pAsmItm = pAsmList->pFirst; pAsmItm; pAsmItm = pAsmItm->pNext) | 592 | for (CPI_ASSEMBLY* pAsmItm = pAsmList->pFirst; pAsmItm; pAsmItm = pAsmItm->pNext) |
593 | { | 593 | { |
594 | for (CPI_COMPONENT* pCompItm = pAsmItm->pComponents; pCompItm; pCompItm = pCompItm->pNext) | 594 | for (CPISCHED_COMPONENT* pCompItm = pAsmItm->pComponents; pCompItm; pCompItm = pCompItm->pNext) |
595 | { | 595 | { |
596 | if (0 == lstrcmpW(pCompItm->wzKey, pwzKey)) | 596 | if (0 == lstrcmpW(pCompItm->wzKey, pwzKey)) |
597 | { | 597 | { |
diff --git a/src/ca/cpsubssched.h b/src/ca/cpsubssched.h index 3fc18478..83ff1af8 100644 --- a/src/ca/cpsubssched.h +++ b/src/ca/cpsubssched.h | |||
@@ -18,7 +18,7 @@ struct CPI_SUBSCRIPTION | |||
18 | INSTALLSTATE isInstalled, isAction; | 18 | INSTALLSTATE isInstalled, isAction; |
19 | 19 | ||
20 | CPI_ASSEMBLY* pAssembly; | 20 | CPI_ASSEMBLY* pAssembly; |
21 | CPI_COMPONENT* pComponent; | 21 | CPISCHED_COMPONENT* pComponent; |
22 | 22 | ||
23 | CPI_SUBSCRIPTION* pNext; | 23 | CPI_SUBSCRIPTION* pNext; |
24 | }; | 24 | }; |
diff --git a/src/ca/cputilexec.cpp b/src/ca/cputilexec.cpp index e081678b..1c2c8b93 100644 --- a/src/ca/cputilexec.cpp +++ b/src/ca/cputilexec.cpp | |||
@@ -69,13 +69,13 @@ static ICOMAdminCatalog* gpiCatalog; | |||
69 | 69 | ||
70 | // function definitions | 70 | // function definitions |
71 | 71 | ||
72 | void CpiInitialize() | 72 | void CpiExecInitialize() |
73 | { | 73 | { |
74 | // collections | 74 | // collections |
75 | gpiCatalog = NULL; | 75 | gpiCatalog = NULL; |
76 | } | 76 | } |
77 | 77 | ||
78 | void CpiFinalize() | 78 | void CpiExecFinalize() |
79 | { | 79 | { |
80 | // collections | 80 | // collections |
81 | ReleaseObject(gpiCatalog); | 81 | ReleaseObject(gpiCatalog); |
@@ -187,7 +187,7 @@ LExit: | |||
187 | return hr; | 187 | return hr; |
188 | } | 188 | } |
189 | 189 | ||
190 | HRESULT CpiGetAdminCatalog( | 190 | HRESULT CpiExecGetAdminCatalog( |
191 | ICOMAdminCatalog** ppiCatalog | 191 | ICOMAdminCatalog** ppiCatalog |
192 | ) | 192 | ) |
193 | { | 193 | { |
@@ -225,11 +225,11 @@ HRESULT CpiLogCatalogErrorInfo() | |||
225 | LPWSTR pwzMinorRef = NULL; | 225 | LPWSTR pwzMinorRef = NULL; |
226 | 226 | ||
227 | // get catalog | 227 | // get catalog |
228 | hr = CpiGetAdminCatalog(&piCatalog); | 228 | hr = CpiExecGetAdminCatalog(&piCatalog); |
229 | ExitOnFailure(hr, "Failed to get COM+ admin catalog"); | 229 | ExitOnFailure(hr, "Failed to get COM+ admin catalog"); |
230 | 230 | ||
231 | // get error info collection | 231 | // get error info collection |
232 | hr = CpiGetCatalogCollection(L"ErrorInfo", &piErrColl); | 232 | hr = CpiExecGetCatalogCollection(L"ErrorInfo", &piErrColl); |
233 | ExitOnFailure(hr, "Failed to get error info collection"); | 233 | ExitOnFailure(hr, "Failed to get error info collection"); |
234 | 234 | ||
235 | // loop objects | 235 | // loop objects |
@@ -282,7 +282,7 @@ LExit: | |||
282 | return hr; | 282 | return hr; |
283 | } | 283 | } |
284 | 284 | ||
285 | HRESULT CpiGetCatalogCollection( | 285 | HRESULT CpiExecGetCatalogCollection( |
286 | LPCWSTR pwzName, | 286 | LPCWSTR pwzName, |
287 | ICatalogCollection** ppiColl | 287 | ICatalogCollection** ppiColl |
288 | ) | 288 | ) |
@@ -299,7 +299,7 @@ HRESULT CpiGetCatalogCollection( | |||
299 | ExitOnNull(bstrName, hr, E_OUTOFMEMORY, "Failed to allocate BSTR for collection name"); | 299 | ExitOnNull(bstrName, hr, E_OUTOFMEMORY, "Failed to allocate BSTR for collection name"); |
300 | 300 | ||
301 | // get catalog | 301 | // get catalog |
302 | hr = CpiGetAdminCatalog(&piCatalog); | 302 | hr = CpiExecGetAdminCatalog(&piCatalog); |
303 | ExitOnFailure(hr, "Failed to get COM+ admin catalog"); | 303 | ExitOnFailure(hr, "Failed to get COM+ admin catalog"); |
304 | 304 | ||
305 | // get collecton from catalog | 305 | // get collecton from catalog |
@@ -326,7 +326,7 @@ LExit: | |||
326 | return hr; | 326 | return hr; |
327 | } | 327 | } |
328 | 328 | ||
329 | HRESULT CpiGetCatalogCollection( | 329 | HRESULT CpiExecGetCatalogCollection( |
330 | ICatalogCollection* piColl, | 330 | ICatalogCollection* piColl, |
331 | ICatalogObject* piObj, | 331 | ICatalogObject* piObj, |
332 | LPCWSTR pwzName, | 332 | LPCWSTR pwzName, |
@@ -348,7 +348,7 @@ HRESULT CpiGetCatalogCollection( | |||
348 | ExitOnNull(bstrName, hr, E_OUTOFMEMORY, "Failed to allocate BSTR for collection name"); | 348 | ExitOnNull(bstrName, hr, E_OUTOFMEMORY, "Failed to allocate BSTR for collection name"); |
349 | 349 | ||
350 | // get catalog | 350 | // get catalog |
351 | hr = CpiGetAdminCatalog(&piCatalog); | 351 | hr = CpiExecGetAdminCatalog(&piCatalog); |
352 | ExitOnFailure(hr, "Failed to get COM+ admin catalog"); | 352 | ExitOnFailure(hr, "Failed to get COM+ admin catalog"); |
353 | 353 | ||
354 | // get key | 354 | // get key |
@@ -894,14 +894,14 @@ LExit: | |||
894 | return hr; | 894 | return hr; |
895 | } | 895 | } |
896 | 896 | ||
897 | HRESULT CpiGetPartitionsCollection( | 897 | HRESULT CpiExecGetPartitionsCollection( |
898 | ICatalogCollection** ppiPartColl | 898 | ICatalogCollection** ppiPartColl |
899 | ) | 899 | ) |
900 | { | 900 | { |
901 | HRESULT hr = S_OK; | 901 | HRESULT hr = S_OK; |
902 | 902 | ||
903 | // get collection | 903 | // get collection |
904 | hr = CpiGetCatalogCollection(L"Partitions", ppiPartColl); | 904 | hr = CpiExecGetCatalogCollection(L"Partitions", ppiPartColl); |
905 | ExitOnFailure(hr, "Failed to get catalog collection"); | 905 | ExitOnFailure(hr, "Failed to get catalog collection"); |
906 | 906 | ||
907 | hr = S_OK; | 907 | hr = S_OK; |
@@ -921,7 +921,7 @@ HRESULT CpiGetPartitionRolesCollection( | |||
921 | ICatalogObject* piPartObj = NULL; | 921 | ICatalogObject* piPartObj = NULL; |
922 | 922 | ||
923 | // get partitions collection | 923 | // get partitions collection |
924 | hr = CpiGetPartitionsCollection(&piPartColl); | 924 | hr = CpiExecGetPartitionsCollection(&piPartColl); |
925 | ExitOnFailure(hr, "Failed to get partitions collection"); | 925 | ExitOnFailure(hr, "Failed to get partitions collection"); |
926 | 926 | ||
927 | if (S_FALSE == hr) | 927 | if (S_FALSE == hr) |
@@ -935,7 +935,7 @@ HRESULT CpiGetPartitionRolesCollection( | |||
935 | ExitFunction(); // partition not found, exit with hr = S_FALSE | 935 | ExitFunction(); // partition not found, exit with hr = S_FALSE |
936 | 936 | ||
937 | // get roles collection | 937 | // get roles collection |
938 | hr = CpiGetCatalogCollection(piPartColl, piPartObj, L"RolesForPartition", ppiRolesColl); | 938 | hr = CpiExecGetCatalogCollection(piPartColl, piPartObj, L"RolesForPartition", ppiRolesColl); |
939 | ExitOnFailure(hr, "Failed to get catalog collection"); | 939 | ExitOnFailure(hr, "Failed to get catalog collection"); |
940 | 940 | ||
941 | hr = S_OK; | 941 | hr = S_OK; |
@@ -974,7 +974,7 @@ HRESULT CpiGetUsersInPartitionRoleCollection( | |||
974 | ExitFunction(); // user not found, exit with hr = S_FALSE | 974 | ExitFunction(); // user not found, exit with hr = S_FALSE |
975 | 975 | ||
976 | // get roles collection | 976 | // get roles collection |
977 | hr = CpiGetCatalogCollection(piRoleColl, piRoleObj, L"UsersInPartitionRole", ppiUsrInRoleColl); | 977 | hr = CpiExecGetCatalogCollection(piRoleColl, piRoleObj, L"UsersInPartitionRole", ppiUsrInRoleColl); |
978 | ExitOnFailure(hr, "Failed to get catalog collection"); | 978 | ExitOnFailure(hr, "Failed to get catalog collection"); |
979 | 979 | ||
980 | hr = S_OK; | 980 | hr = S_OK; |
@@ -994,7 +994,7 @@ HRESULT CpiGetPartitionUsersCollection( | |||
994 | HRESULT hr = S_OK; | 994 | HRESULT hr = S_OK; |
995 | 995 | ||
996 | // get roles collection | 996 | // get roles collection |
997 | hr = CpiGetCatalogCollection(L"PartitionUsers", ppiUserColl); | 997 | hr = CpiExecGetCatalogCollection(L"PartitionUsers", ppiUserColl); |
998 | ExitOnFailure(hr, "Failed to get catalog collection"); | 998 | ExitOnFailure(hr, "Failed to get catalog collection"); |
999 | 999 | ||
1000 | hr = S_OK; | 1000 | hr = S_OK; |
@@ -1003,7 +1003,7 @@ LExit: | |||
1003 | return hr; | 1003 | return hr; |
1004 | } | 1004 | } |
1005 | 1005 | ||
1006 | HRESULT CpiGetApplicationsCollection( | 1006 | HRESULT CpiExecGetApplicationsCollection( |
1007 | LPCWSTR pwzPartID, | 1007 | LPCWSTR pwzPartID, |
1008 | ICatalogCollection** ppiAppColl | 1008 | ICatalogCollection** ppiAppColl |
1009 | ) | 1009 | ) |
@@ -1018,7 +1018,7 @@ HRESULT CpiGetApplicationsCollection( | |||
1018 | ICatalogObject* piPartObj = NULL; | 1018 | ICatalogObject* piPartObj = NULL; |
1019 | 1019 | ||
1020 | // get catalog | 1020 | // get catalog |
1021 | hr = CpiGetAdminCatalog(&piCatalog); | 1021 | hr = CpiExecGetAdminCatalog(&piCatalog); |
1022 | ExitOnFailure(hr, "Failed to get COM+ admin catalog"); | 1022 | ExitOnFailure(hr, "Failed to get COM+ admin catalog"); |
1023 | 1023 | ||
1024 | // get ICOMAdminCatalog2 interface | 1024 | // get ICOMAdminCatalog2 interface |
@@ -1038,7 +1038,7 @@ HRESULT CpiGetApplicationsCollection( | |||
1038 | } | 1038 | } |
1039 | 1039 | ||
1040 | // get partitions collection | 1040 | // get partitions collection |
1041 | hr = CpiGetPartitionsCollection(&piPartColl); | 1041 | hr = CpiExecGetPartitionsCollection(&piPartColl); |
1042 | ExitOnFailure(hr, "Failed to get partitions collection"); | 1042 | ExitOnFailure(hr, "Failed to get partitions collection"); |
1043 | 1043 | ||
1044 | // find object | 1044 | // find object |
@@ -1049,7 +1049,7 @@ HRESULT CpiGetApplicationsCollection( | |||
1049 | ExitFunction(); // partition not found, exit with hr = S_FALSE | 1049 | ExitFunction(); // partition not found, exit with hr = S_FALSE |
1050 | 1050 | ||
1051 | // get applications collection | 1051 | // get applications collection |
1052 | hr = CpiGetCatalogCollection(piPartColl, piPartObj, L"Applications", ppiAppColl); | 1052 | hr = CpiExecGetCatalogCollection(piPartColl, piPartObj, L"Applications", ppiAppColl); |
1053 | ExitOnFailure(hr, "Failed to get catalog collection for partition"); | 1053 | ExitOnFailure(hr, "Failed to get catalog collection for partition"); |
1054 | } | 1054 | } |
1055 | 1055 | ||
@@ -1061,7 +1061,7 @@ HRESULT CpiGetApplicationsCollection( | |||
1061 | ExitOnFailure(hr = E_FAIL, "Partitions are not supported by this version of COM+"); | 1061 | ExitOnFailure(hr = E_FAIL, "Partitions are not supported by this version of COM+"); |
1062 | 1062 | ||
1063 | // get applications collection | 1063 | // get applications collection |
1064 | hr = CpiGetCatalogCollection(L"Applications", ppiAppColl); | 1064 | hr = CpiExecGetCatalogCollection(L"Applications", ppiAppColl); |
1065 | ExitOnFailure(hr, "Failed to get catalog collection"); | 1065 | ExitOnFailure(hr, "Failed to get catalog collection"); |
1066 | } | 1066 | } |
1067 | 1067 | ||
@@ -1091,7 +1091,7 @@ HRESULT CpiGetRolesCollection( | |||
1091 | ICatalogObject* piAppObj = NULL; | 1091 | ICatalogObject* piAppObj = NULL; |
1092 | 1092 | ||
1093 | // get applications collection | 1093 | // get applications collection |
1094 | hr = CpiGetApplicationsCollection(pwzPartID, &piAppColl); | 1094 | hr = CpiExecGetApplicationsCollection(pwzPartID, &piAppColl); |
1095 | ExitOnFailure(hr, "Failed to get applications collection"); | 1095 | ExitOnFailure(hr, "Failed to get applications collection"); |
1096 | 1096 | ||
1097 | if (S_FALSE == hr) | 1097 | if (S_FALSE == hr) |
@@ -1105,7 +1105,7 @@ HRESULT CpiGetRolesCollection( | |||
1105 | ExitFunction(); // application not found, exit with hr = S_FALSE | 1105 | ExitFunction(); // application not found, exit with hr = S_FALSE |
1106 | 1106 | ||
1107 | // get roles collection | 1107 | // get roles collection |
1108 | hr = CpiGetCatalogCollection(piAppColl, piAppObj, L"Roles", ppiRolesColl); | 1108 | hr = CpiExecGetCatalogCollection(piAppColl, piAppObj, L"Roles", ppiRolesColl); |
1109 | ExitOnFailure(hr, "Failed to catalog collection"); | 1109 | ExitOnFailure(hr, "Failed to catalog collection"); |
1110 | 1110 | ||
1111 | hr = S_OK; | 1111 | hr = S_OK; |
@@ -1145,7 +1145,7 @@ HRESULT CpiGetUsersInRoleCollection( | |||
1145 | ExitFunction(); // role not found, exit with hr = S_FALSE | 1145 | ExitFunction(); // role not found, exit with hr = S_FALSE |
1146 | 1146 | ||
1147 | // get roles collection | 1147 | // get roles collection |
1148 | hr = CpiGetCatalogCollection(piRoleColl, piRoleObj, L"UsersInRole", ppiUsrInRoleColl); | 1148 | hr = CpiExecGetCatalogCollection(piRoleColl, piRoleObj, L"UsersInRole", ppiUsrInRoleColl); |
1149 | ExitOnFailure(hr, "Failed to get catalog collection"); | 1149 | ExitOnFailure(hr, "Failed to get catalog collection"); |
1150 | 1150 | ||
1151 | hr = S_OK; | 1151 | hr = S_OK; |
@@ -1170,7 +1170,7 @@ HRESULT CpiGetComponentsCollection( | |||
1170 | ICatalogObject* piAppObj = NULL; | 1170 | ICatalogObject* piAppObj = NULL; |
1171 | 1171 | ||
1172 | // get applications collection | 1172 | // get applications collection |
1173 | hr = CpiGetApplicationsCollection(pwzPartID, &piAppColl); | 1173 | hr = CpiExecGetApplicationsCollection(pwzPartID, &piAppColl); |
1174 | ExitOnFailure(hr, "Failed to get applications collection"); | 1174 | ExitOnFailure(hr, "Failed to get applications collection"); |
1175 | 1175 | ||
1176 | if (S_FALSE == hr) | 1176 | if (S_FALSE == hr) |
@@ -1184,7 +1184,7 @@ HRESULT CpiGetComponentsCollection( | |||
1184 | ExitFunction(); // application not found, exit with hr = S_FALSE | 1184 | ExitFunction(); // application not found, exit with hr = S_FALSE |
1185 | 1185 | ||
1186 | // get components collection | 1186 | // get components collection |
1187 | hr = CpiGetCatalogCollection(piAppColl, piAppObj, L"Components", ppiCompsColl); | 1187 | hr = CpiExecGetCatalogCollection(piAppColl, piAppObj, L"Components", ppiCompsColl); |
1188 | ExitOnFailure(hr, "Failed to get catalog collection"); | 1188 | ExitOnFailure(hr, "Failed to get catalog collection"); |
1189 | 1189 | ||
1190 | hr = S_OK; | 1190 | hr = S_OK; |
@@ -1206,7 +1206,7 @@ HRESULT CpiGetInterfacesCollection( | |||
1206 | HRESULT hr = S_OK; | 1206 | HRESULT hr = S_OK; |
1207 | 1207 | ||
1208 | // get interfaces collection | 1208 | // get interfaces collection |
1209 | hr = CpiGetCatalogCollection(piCompColl, piCompObj, L"InterfacesForComponent", ppiIntfColl); | 1209 | hr = CpiExecGetCatalogCollection(piCompColl, piCompObj, L"InterfacesForComponent", ppiIntfColl); |
1210 | ExitOnFailure(hr, "Failed to get catalog collection"); | 1210 | ExitOnFailure(hr, "Failed to get catalog collection"); |
1211 | 1211 | ||
1212 | hr = S_OK; | 1212 | hr = S_OK; |
@@ -1224,7 +1224,7 @@ HRESULT CpiGetMethodsCollection( | |||
1224 | HRESULT hr = S_OK; | 1224 | HRESULT hr = S_OK; |
1225 | 1225 | ||
1226 | // get interfaces collection | 1226 | // get interfaces collection |
1227 | hr = CpiGetCatalogCollection(piIntfColl, piIntfObj, L"MethodsForInterface", ppiMethColl); | 1227 | hr = CpiExecGetCatalogCollection(piIntfColl, piIntfObj, L"MethodsForInterface", ppiMethColl); |
1228 | ExitOnFailure(hr, "Failed to get catalog collection"); | 1228 | ExitOnFailure(hr, "Failed to get catalog collection"); |
1229 | 1229 | ||
1230 | hr = S_OK; | 1230 | hr = S_OK; |
@@ -1260,7 +1260,7 @@ HRESULT CpiGetSubscriptionsCollection( | |||
1260 | ExitFunction(); // component not found, exit with hr = S_FALSE | 1260 | ExitFunction(); // component not found, exit with hr = S_FALSE |
1261 | 1261 | ||
1262 | // get subscriptions collection | 1262 | // get subscriptions collection |
1263 | hr = CpiGetCatalogCollection(piCompColl, piCompObj, L"SubscriptionsForComponent", ppiSubsColl); | 1263 | hr = CpiExecGetCatalogCollection(piCompColl, piCompObj, L"SubscriptionsForComponent", ppiSubsColl); |
1264 | ExitOnFailure(hr, "Failed to get catalog collection"); | 1264 | ExitOnFailure(hr, "Failed to get catalog collection"); |
1265 | 1265 | ||
1266 | hr = S_OK; | 1266 | hr = S_OK; |
diff --git a/src/ca/cputilexec.h b/src/ca/cputilexec.h index 51b47583..b900883d 100644 --- a/src/ca/cputilexec.h +++ b/src/ca/cputilexec.h | |||
@@ -28,8 +28,8 @@ struct CPI_ROLLBACK_DATA | |||
28 | 28 | ||
29 | // function prototypes | 29 | // function prototypes |
30 | 30 | ||
31 | void CpiInitialize(); | 31 | void CpiExecInitialize(); |
32 | void CpiFinalize(); | 32 | void CpiExecFinalize(); |
33 | HRESULT CpiActionStartMessage( | 33 | HRESULT CpiActionStartMessage( |
34 | LPWSTR* ppwzActionData, | 34 | LPWSTR* ppwzActionData, |
35 | BOOL fSuppress | 35 | BOOL fSuppress |
@@ -38,15 +38,15 @@ HRESULT CpiActionDataMessage( | |||
38 | DWORD cArgs, | 38 | DWORD cArgs, |
39 | ... | 39 | ... |
40 | ); | 40 | ); |
41 | HRESULT CpiGetAdminCatalog( | 41 | HRESULT CpiExecGetAdminCatalog( |
42 | ICOMAdminCatalog** ppiCatalog | 42 | ICOMAdminCatalog** ppiCatalog |
43 | ); | 43 | ); |
44 | HRESULT CpiLogCatalogErrorInfo(); | 44 | HRESULT CpiLogCatalogErrorInfo(); |
45 | HRESULT CpiGetCatalogCollection( | 45 | HRESULT CpiExecGetCatalogCollection( |
46 | LPCWSTR pwzName, | 46 | LPCWSTR pwzName, |
47 | ICatalogCollection** ppiColl | 47 | ICatalogCollection** ppiColl |
48 | ); | 48 | ); |
49 | HRESULT CpiGetCatalogCollection( | 49 | HRESULT CpiExecGetCatalogCollection( |
50 | ICatalogCollection* piColl, | 50 | ICatalogCollection* piColl, |
51 | ICatalogObject* piObj, | 51 | ICatalogObject* piObj, |
52 | LPCWSTR pwzName, | 52 | LPCWSTR pwzName, |
@@ -105,7 +105,7 @@ HRESULT CpiFindUserCollectionObject( | |||
105 | PSID pSid, | 105 | PSID pSid, |
106 | ICatalogObject** ppiObj | 106 | ICatalogObject** ppiObj |
107 | ); | 107 | ); |
108 | HRESULT CpiGetPartitionsCollection( | 108 | HRESULT CpiExecGetPartitionsCollection( |
109 | ICatalogCollection** ppiPartColl | 109 | ICatalogCollection** ppiPartColl |
110 | ); | 110 | ); |
111 | HRESULT CpiGetPartitionRolesCollection( | 111 | HRESULT CpiGetPartitionRolesCollection( |
@@ -120,7 +120,7 @@ HRESULT CpiGetUsersInPartitionRoleCollection( | |||
120 | HRESULT CpiGetPartitionUsersCollection( | 120 | HRESULT CpiGetPartitionUsersCollection( |
121 | ICatalogCollection** ppiUserColl | 121 | ICatalogCollection** ppiUserColl |
122 | ); | 122 | ); |
123 | HRESULT CpiGetApplicationsCollection( | 123 | HRESULT CpiExecGetApplicationsCollection( |
124 | LPCWSTR pwzPartID, | 124 | LPCWSTR pwzPartID, |
125 | ICatalogCollection** ppiAppColl | 125 | ICatalogCollection** ppiAppColl |
126 | ); | 126 | ); |
diff --git a/src/ca/cputilsched.cpp b/src/ca/cputilsched.cpp index 9dbe21ec..1a958c56 100644 --- a/src/ca/cputilsched.cpp +++ b/src/ca/cputilsched.cpp | |||
@@ -43,7 +43,7 @@ static int giTables; | |||
43 | 43 | ||
44 | // function definitions | 44 | // function definitions |
45 | 45 | ||
46 | void CpiInitialize() | 46 | void CpiSchedInitialize() |
47 | { | 47 | { |
48 | // collections | 48 | // collections |
49 | gpiCatalog = NULL; | 49 | gpiCatalog = NULL; |
@@ -80,7 +80,7 @@ void CpiInitialize() | |||
80 | if (S_OK == WcaTableExists(L"ComPlusSubscriptionProperty")) giTables |= cptComPlusSubscriptionProperty; | 80 | if (S_OK == WcaTableExists(L"ComPlusSubscriptionProperty")) giTables |= cptComPlusSubscriptionProperty; |
81 | } | 81 | } |
82 | 82 | ||
83 | void CpiFinalize() | 83 | void CpiSchedFinalize() |
84 | { | 84 | { |
85 | // collections | 85 | // collections |
86 | ReleaseObject(gpiCatalog); | 86 | ReleaseObject(gpiCatalog); |
@@ -95,7 +95,7 @@ BOOL CpiTableExists( | |||
95 | return (giTables & iTable) == iTable; | 95 | return (giTables & iTable) == iTable; |
96 | } | 96 | } |
97 | 97 | ||
98 | HRESULT CpiGetAdminCatalog( | 98 | HRESULT CpiSchedGetAdminCatalog( |
99 | ICOMAdminCatalog** ppiCatalog | 99 | ICOMAdminCatalog** ppiCatalog |
100 | ) | 100 | ) |
101 | { | 101 | { |
@@ -118,7 +118,7 @@ LExit: | |||
118 | return hr; | 118 | return hr; |
119 | } | 119 | } |
120 | 120 | ||
121 | HRESULT CpiGetCatalogCollection( | 121 | HRESULT CpiSchedGetCatalogCollection( |
122 | LPCWSTR pwzName, | 122 | LPCWSTR pwzName, |
123 | ICatalogCollection** ppiColl | 123 | ICatalogCollection** ppiColl |
124 | ) | 124 | ) |
@@ -134,7 +134,7 @@ HRESULT CpiGetCatalogCollection( | |||
134 | ExitOnNull(bstrName, hr, E_OUTOFMEMORY, "Failed to allocate BSTR for collection name"); | 134 | ExitOnNull(bstrName, hr, E_OUTOFMEMORY, "Failed to allocate BSTR for collection name"); |
135 | 135 | ||
136 | // get catalog | 136 | // get catalog |
137 | hr = CpiGetAdminCatalog(&piCatalog); | 137 | hr = CpiSchedGetAdminCatalog(&piCatalog); |
138 | ExitOnFailure(hr, "Failed to get COM+ admin catalog"); | 138 | ExitOnFailure(hr, "Failed to get COM+ admin catalog"); |
139 | 139 | ||
140 | // get collecton from catalog | 140 | // get collecton from catalog |
@@ -159,7 +159,7 @@ LExit: | |||
159 | return hr; | 159 | return hr; |
160 | } | 160 | } |
161 | 161 | ||
162 | HRESULT CpiGetCatalogCollection( | 162 | HRESULT CpiSchedGetCatalogCollection( |
163 | ICatalogCollection* piColl, | 163 | ICatalogCollection* piColl, |
164 | ICatalogObject* piObj, | 164 | ICatalogObject* piObj, |
165 | LPCWSTR pwzName, | 165 | LPCWSTR pwzName, |
@@ -180,7 +180,7 @@ HRESULT CpiGetCatalogCollection( | |||
180 | ExitOnNull(bstrName, hr, E_OUTOFMEMORY, "Failed to allocate BSTR for collection name"); | 180 | ExitOnNull(bstrName, hr, E_OUTOFMEMORY, "Failed to allocate BSTR for collection name"); |
181 | 181 | ||
182 | // get catalog | 182 | // get catalog |
183 | hr = CpiGetAdminCatalog(&piCatalog); | 183 | hr = CpiSchedGetAdminCatalog(&piCatalog); |
184 | ExitOnFailure(hr, "Failed to get COM+ admin catalog"); | 184 | ExitOnFailure(hr, "Failed to get COM+ admin catalog"); |
185 | 185 | ||
186 | // get key | 186 | // get key |
@@ -331,7 +331,7 @@ LExit: | |||
331 | return hr; | 331 | return hr; |
332 | } | 332 | } |
333 | 333 | ||
334 | HRESULT CpiGetPartitionsCollection( | 334 | HRESULT CpiSchedGetPartitionsCollection( |
335 | ICatalogCollection** ppiPartColl | 335 | ICatalogCollection** ppiPartColl |
336 | ) | 336 | ) |
337 | { | 337 | { |
@@ -340,7 +340,7 @@ HRESULT CpiGetPartitionsCollection( | |||
340 | if (!gpiPartColl) | 340 | if (!gpiPartColl) |
341 | { | 341 | { |
342 | // get collection | 342 | // get collection |
343 | hr = CpiGetCatalogCollection(L"Partitions", &gpiPartColl); | 343 | hr = CpiSchedGetCatalogCollection(L"Partitions", &gpiPartColl); |
344 | ExitOnFailure(hr, "Failed to get partitions collection"); | 344 | ExitOnFailure(hr, "Failed to get partitions collection"); |
345 | } | 345 | } |
346 | 346 | ||
@@ -354,7 +354,7 @@ LExit: | |||
354 | return hr; | 354 | return hr; |
355 | } | 355 | } |
356 | 356 | ||
357 | HRESULT CpiGetApplicationsCollection( | 357 | HRESULT CpiSchedGetApplicationsCollection( |
358 | ICatalogCollection** ppiAppColl | 358 | ICatalogCollection** ppiAppColl |
359 | ) | 359 | ) |
360 | { | 360 | { |
@@ -369,7 +369,7 @@ HRESULT CpiGetApplicationsCollection( | |||
369 | if (!gpiAppColl) | 369 | if (!gpiAppColl) |
370 | { | 370 | { |
371 | // get catalog | 371 | // get catalog |
372 | hr = CpiGetAdminCatalog(&piCatalog); | 372 | hr = CpiSchedGetAdminCatalog(&piCatalog); |
373 | ExitOnFailure(hr, "Failed to get COM+ admin catalog"); | 373 | ExitOnFailure(hr, "Failed to get COM+ admin catalog"); |
374 | 374 | ||
375 | // get ICOMAdminCatalog2 interface | 375 | // get ICOMAdminCatalog2 interface |
@@ -385,7 +385,7 @@ HRESULT CpiGetApplicationsCollection( | |||
385 | ExitOnFailure(hr, "Failed to get global partition id"); | 385 | ExitOnFailure(hr, "Failed to get global partition id"); |
386 | 386 | ||
387 | // get partitions collection | 387 | // get partitions collection |
388 | hr = CpiGetPartitionsCollection(&piPartColl); | 388 | hr = CpiSchedGetPartitionsCollection(&piPartColl); |
389 | ExitOnFailure(hr, "Failed to get partitions collection"); | 389 | ExitOnFailure(hr, "Failed to get partitions collection"); |
390 | 390 | ||
391 | // find object | 391 | // find object |
@@ -396,7 +396,7 @@ HRESULT CpiGetApplicationsCollection( | |||
396 | ExitFunction(); // partition not found, exit with hr = S_FALSE | 396 | ExitFunction(); // partition not found, exit with hr = S_FALSE |
397 | 397 | ||
398 | // get applications collection | 398 | // get applications collection |
399 | hr = CpiGetCatalogCollection(piPartColl, piPartObj, L"Applications", &gpiAppColl); | 399 | hr = CpiSchedGetCatalogCollection(piPartColl, piPartObj, L"Applications", &gpiAppColl); |
400 | ExitOnFailure(hr, "Failed to get applications collection"); | 400 | ExitOnFailure(hr, "Failed to get applications collection"); |
401 | } | 401 | } |
402 | 402 | ||
@@ -404,7 +404,7 @@ HRESULT CpiGetApplicationsCollection( | |||
404 | else | 404 | else |
405 | { | 405 | { |
406 | // get applications collection | 406 | // get applications collection |
407 | hr = CpiGetCatalogCollection(L"Applications", &gpiAppColl); | 407 | hr = CpiSchedGetCatalogCollection(L"Applications", &gpiAppColl); |
408 | ExitOnFailure(hr, "Failed to get applications collection"); | 408 | ExitOnFailure(hr, "Failed to get applications collection"); |
409 | } | 409 | } |
410 | } | 410 | } |
diff --git a/src/ca/cputilsched.h b/src/ca/cputilsched.h index 61aaab84..1f315576 100644 --- a/src/ca/cputilsched.h +++ b/src/ca/cputilsched.h | |||
@@ -2,12 +2,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 | 3 | ||
4 | 4 | ||
5 | #define CPI_MAX_GUID 38 | ||
6 | |||
7 | enum eRunMode { rmDeferred = 1, rmCommit, rmRollback }; | 5 | enum eRunMode { rmDeferred = 1, rmCommit, rmRollback }; |
8 | 6 | ||
9 | enum eActionType { atNoOp = 0, atCreate, atRemove }; | ||
10 | |||
11 | enum eComPlusPropertyType { cpptNone = 0, cpptBoolean, cpptInteger, cpptString, cpptUser }; | 7 | enum eComPlusPropertyType { cpptNone = 0, cpptBoolean, cpptInteger, cpptString, cpptUser }; |
12 | 8 | ||
13 | enum eComPlusTables | 9 | enum eComPlusTables |
@@ -42,14 +38,6 @@ enum eComPlusTables | |||
42 | 38 | ||
43 | // structs | 39 | // structs |
44 | 40 | ||
45 | struct CPI_PROPERTY | ||
46 | { | ||
47 | WCHAR wzName[MAX_DARWIN_KEY + 1]; | ||
48 | LPWSTR pwzValue; | ||
49 | |||
50 | CPI_PROPERTY* pNext; | ||
51 | }; | ||
52 | |||
53 | struct CPI_PROPERTY_DEFINITION | 41 | struct CPI_PROPERTY_DEFINITION |
54 | { | 42 | { |
55 | LPCWSTR pwzName; | 43 | LPCWSTR pwzName; |
@@ -60,19 +48,19 @@ struct CPI_PROPERTY_DEFINITION | |||
60 | 48 | ||
61 | // function prototypes | 49 | // function prototypes |
62 | 50 | ||
63 | void CpiInitialize(); | 51 | void CpiSchedInitialize(); |
64 | void CpiFinalize(); | 52 | void CpiSchedFinalize(); |
65 | BOOL CpiTableExists( | 53 | BOOL CpiTableExists( |
66 | int iTable | 54 | int iTable |
67 | ); | 55 | ); |
68 | HRESULT CpiGetAdminCatalog( | 56 | HRESULT CpiSchedGetAdminCatalog( |
69 | ICOMAdminCatalog** ppiCatalog | 57 | ICOMAdminCatalog** ppiCatalog |
70 | ); | 58 | ); |
71 | HRESULT CpiGetCatalogCollection( | 59 | HRESULT CpiSchedGetCatalogCollection( |
72 | LPCWSTR pwzName, | 60 | LPCWSTR pwzName, |
73 | ICatalogCollection** ppiColl | 61 | ICatalogCollection** ppiColl |
74 | ); | 62 | ); |
75 | HRESULT CpiGetCatalogCollection( | 63 | HRESULT CpiSchedGetCatalogCollection( |
76 | ICatalogCollection* piColl, | 64 | ICatalogCollection* piColl, |
77 | ICatalogObject* piObj, | 65 | ICatalogObject* piObj, |
78 | LPCWSTR pwzName, | 66 | LPCWSTR pwzName, |
@@ -89,10 +77,10 @@ HRESULT CpiFindCollectionObject( | |||
89 | LPCWSTR pwzName, | 77 | LPCWSTR pwzName, |
90 | ICatalogObject** ppiObj | 78 | ICatalogObject** ppiObj |
91 | ); | 79 | ); |
92 | HRESULT CpiGetPartitionsCollection( | 80 | HRESULT CpiSchedGetPartitionsCollection( |
93 | ICatalogCollection** ppiPartColl | 81 | ICatalogCollection** ppiPartColl |
94 | ); | 82 | ); |
95 | HRESULT CpiGetApplicationsCollection( | 83 | HRESULT CpiSchedGetApplicationsCollection( |
96 | ICatalogCollection** ppiAppColl | 84 | ICatalogCollection** ppiAppColl |
97 | ); | 85 | ); |
98 | HRESULT CpiAddActionTextToActionData( | 86 | HRESULT CpiAddActionTextToActionData( |
diff --git a/src/ca/custommsierrors.h b/src/ca/custommsierrors.h new file mode 100644 index 00000000..219df698 --- /dev/null +++ b/src/ca/custommsierrors.h | |||
@@ -0,0 +1,29 @@ | |||
1 | #pragma once | ||
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 | #define msierrComPlusCannotConnect 28001 | ||
6 | #define msierrComPlusPartitionReadFailed 28002 | ||
7 | #define msierrComPlusPartitionRoleReadFailed 28003 | ||
8 | #define msierrComPlusUserInPartitionRoleReadFailed 28004 | ||
9 | #define msierrComPlusPartitionUserReadFailed 28005 | ||
10 | #define msierrComPlusApplicationReadFailed 28006 | ||
11 | #define msierrComPlusApplicationRoleReadFailed 28007 | ||
12 | #define msierrComPlusUserInApplicationRoleReadFailed 28008 | ||
13 | #define msierrComPlusAssembliesReadFailed 28009 | ||
14 | #define msierrComPlusSubscriptionReadFailed 28010 | ||
15 | #define msierrComPlusPartitionDependency 28011 | ||
16 | #define msierrComPlusPartitionNotFound 28012 | ||
17 | #define msierrComPlusPartitionIdConflict 28013 | ||
18 | #define msierrComPlusPartitionNameConflict 28014 | ||
19 | #define msierrComPlusApplicationDependency 28015 | ||
20 | #define msierrComPlusApplicationNotFound 28016 | ||
21 | #define msierrComPlusApplicationIdConflict 28017 | ||
22 | #define msierrComPlusApplicationNameConflict 28018 | ||
23 | #define msierrComPlusApplicationRoleDependency 28019 | ||
24 | #define msierrComPlusApplicationRoleNotFound 28020 | ||
25 | #define msierrComPlusApplicationRoleConflict 28021 | ||
26 | #define msierrComPlusAssemblyDependency 28022 | ||
27 | #define msierrComPlusSubscriptionIdConflict 28023 | ||
28 | #define msierrComPlusSubscriptionNameConflict 28024 | ||
29 | #define msierrComPlusFailedLookupNames 28025 | ||
diff --git a/src/ca/dllmain.cpp b/src/ca/dllmain.cpp new file mode 100644 index 00000000..7d299feb --- /dev/null +++ b/src/ca/dllmain.cpp | |||
@@ -0,0 +1,27 @@ | |||
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 | |||
3 | #include "precomp.h" | ||
4 | |||
5 | /******************************************************************** | ||
6 | DllMain - standard entry point for all WiX custom actions. | ||
7 | |||
8 | ********************************************************************/ | ||
9 | extern "C" BOOL WINAPI DllMain( | ||
10 | IN HINSTANCE hInstance, | ||
11 | IN ULONG ulReason, | ||
12 | IN LPVOID) | ||
13 | { | ||
14 | switch(ulReason) | ||
15 | { | ||
16 | case DLL_PROCESS_ATTACH: | ||
17 | WcaGlobalInitialize(hInstance); | ||
18 | ::DisableThreadLibraryCalls(hInstance); | ||
19 | break; | ||
20 | |||
21 | case DLL_PROCESS_DETACH: | ||
22 | WcaGlobalFinalize(); | ||
23 | break; | ||
24 | } | ||
25 | |||
26 | return TRUE; | ||
27 | } | ||
diff --git a/src/ca/packages.config b/src/ca/packages.config new file mode 100644 index 00000000..ab964d2c --- /dev/null +++ b/src/ca/packages.config | |||
@@ -0,0 +1,5 @@ | |||
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | <packages> | ||
3 | <package id="WixToolset.DUtil" version="4.0.16" targetFramework="native" /> | ||
4 | <package id="WixToolset.WcaUtil" version="4.0.2" targetFramework="native" /> | ||
5 | </packages> \ No newline at end of file | ||
diff --git a/src/ca/precomp.h b/src/ca/precomp.h new file mode 100644 index 00000000..74c328d2 --- /dev/null +++ b/src/ca/precomp.h | |||
@@ -0,0 +1,33 @@ | |||
1 | #pragma once | ||
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 | #include <windows.h> | ||
6 | #include <msiquery.h> | ||
7 | #include <strsafe.h> | ||
8 | #include <comadmin.h> | ||
9 | #include <ntsecapi.h> | ||
10 | #include <aclapi.h> | ||
11 | |||
12 | #include "wcautil.h" | ||
13 | #include "memutil.h" | ||
14 | #include "strutil.h" | ||
15 | #include "wiutil.h" | ||
16 | |||
17 | #include "CustomMsiErrors.h" | ||
18 | |||
19 | #include "cpcost.h" | ||
20 | #include "cputilexec.h" | ||
21 | #include "cppartexec.h" | ||
22 | #include "cppartroleexec.h" | ||
23 | #include "cpappexec.h" | ||
24 | #include "cpapproleexec.h" | ||
25 | #include "cpasmexec.h" | ||
26 | #include "cpsubsexec.h" | ||
27 | #include "cputilsched.h" | ||
28 | #include "cppartsched.h" | ||
29 | #include "cppartrolesched.h" | ||
30 | #include "cpappsched.h" | ||
31 | #include "cpapprolesched.h" | ||
32 | #include "cpasmsched.h" | ||
33 | #include "cpsubssched.h" | ||
diff --git a/src/test/WixToolsetTest.ComPlus/ComPlusExtensionFixture.cs b/src/test/WixToolsetTest.ComPlus/ComPlusExtensionFixture.cs new file mode 100644 index 00000000..4ff3b5f0 --- /dev/null +++ b/src/test/WixToolsetTest.ComPlus/ComPlusExtensionFixture.cs | |||
@@ -0,0 +1,32 @@ | |||
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 | |||
3 | namespace WixToolsetTest.ComPlus | ||
4 | { | ||
5 | using System.Linq; | ||
6 | using WixBuildTools.TestSupport; | ||
7 | using WixToolset.Core.TestPackage; | ||
8 | using WixToolset.ComPlus; | ||
9 | using Xunit; | ||
10 | |||
11 | public class ComPlusExtensionFixture | ||
12 | { | ||
13 | [Fact] | ||
14 | public void CanBuildUsingComPlusPartition() | ||
15 | { | ||
16 | var folder = TestData.Get(@"TestData\UsingComPlusPartition"); | ||
17 | var build = new Builder(folder, typeof(ComPlusExtensionFactory), new[] { folder }); | ||
18 | |||
19 | var results = build.BuildAndQuery(Build, "ComPlusPartition"); | ||
20 | Assert.Equal(new[] | ||
21 | { | ||
22 | "ComPlusPartition:", | ||
23 | }, results.OrderBy(s => s).ToArray()); | ||
24 | } | ||
25 | |||
26 | private static void Build(string[] args) | ||
27 | { | ||
28 | var result = WixRunner.Execute(args) | ||
29 | .AssertSuccess(); | ||
30 | } | ||
31 | } | ||
32 | } | ||
diff --git a/src/test/WixToolsetTest.ComPlus/TestData/UsingComPlusPartition/Package.en-us.wxl b/src/test/WixToolsetTest.ComPlus/TestData/UsingComPlusPartition/Package.en-us.wxl new file mode 100644 index 00000000..38c12ac1 --- /dev/null +++ b/src/test/WixToolsetTest.ComPlus/TestData/UsingComPlusPartition/Package.en-us.wxl | |||
@@ -0,0 +1,11 @@ | |||
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | |||
3 | <!-- | ||
4 | This file contains the declaration of all the localizable strings. | ||
5 | --> | ||
6 | <WixLocalization xmlns="http://wixtoolset.org/schemas/v4/wxl" Culture="en-US"> | ||
7 | |||
8 | <String Id="DowngradeError">A newer version of [ProductName] is already installed.</String> | ||
9 | <String Id="FeatureTitle">MsiPackage</String> | ||
10 | |||
11 | </WixLocalization> | ||
diff --git a/src/test/WixToolsetTest.ComPlus/TestData/UsingComPlusPartition/Package.wxs b/src/test/WixToolsetTest.ComPlus/TestData/UsingComPlusPartition/Package.wxs new file mode 100644 index 00000000..68ff98fd --- /dev/null +++ b/src/test/WixToolsetTest.ComPlus/TestData/UsingComPlusPartition/Package.wxs | |||
@@ -0,0 +1,22 @@ | |||
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | <Wix xmlns="http://wixtoolset.org/schemas/v4/wxs"> | ||
3 | <Product Id="*" Name="MsiPackage" Language="1033" Version="1.0.0.0" Manufacturer="Example Corporation" UpgradeCode="047730a5-30fe-4a62-a520-da9381b8226a"> | ||
4 | <Package InstallerVersion="200" Compressed="no" InstallScope="perMachine" /> | ||
5 | |||
6 | <MajorUpgrade DowngradeErrorMessage="!(loc.DowngradeError)" /> | ||
7 | <MediaTemplate /> | ||
8 | |||
9 | <Feature Id="ProductFeature" Title="!(loc.FeatureTitle)"> | ||
10 | <ComponentGroupRef Id="ProductComponents" /> | ||
11 | </Feature> | ||
12 | |||
13 | </Product> | ||
14 | |||
15 | <Fragment> | ||
16 | <Directory Id="TARGETDIR" Name="SourceDir"> | ||
17 | <Directory Id="ProgramFilesFolder"> | ||
18 | <Directory Id="INSTALLFOLDER" Name="MsiPackage" /> | ||
19 | </Directory> | ||
20 | </Directory> | ||
21 | </Fragment> | ||
22 | </Wix> | ||
diff --git a/src/test/WixToolsetTest.ComPlus/TestData/UsingComPlusPartition/PackageComponents.wxs b/src/test/WixToolsetTest.ComPlus/TestData/UsingComPlusPartition/PackageComponents.wxs new file mode 100644 index 00000000..f61eedd6 --- /dev/null +++ b/src/test/WixToolsetTest.ComPlus/TestData/UsingComPlusPartition/PackageComponents.wxs | |||
@@ -0,0 +1,12 @@ | |||
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | <Wix xmlns="http://wixtoolset.org/schemas/v4/wxs" | ||
3 | xmlns:complus="http://wixtoolset.org/schemas/v4/wxs/complus"> | ||
4 | <Fragment> | ||
5 | <ComponentGroup Id="ProductComponents" Directory="INSTALLFOLDER"> | ||
6 | <Component> | ||
7 | <File Source="example.txt" /> | ||
8 | <complus:ComPlusPartition Id="MyPartition" Name="MyPartition" PartitionId="MyPartitionId" /> | ||
9 | </Component> | ||
10 | </ComponentGroup> | ||
11 | </Fragment> | ||
12 | </Wix> | ||
diff --git a/src/test/WixToolsetTest.ComPlus/TestData/UsingComPlusPartition/example.txt b/src/test/WixToolsetTest.ComPlus/TestData/UsingComPlusPartition/example.txt new file mode 100644 index 00000000..1b4ffe8a --- /dev/null +++ b/src/test/WixToolsetTest.ComPlus/TestData/UsingComPlusPartition/example.txt | |||
@@ -0,0 +1 @@ | |||
This is example.txt. \ No newline at end of file | |||
diff --git a/src/test/WixToolsetTest.ComPlus/WixToolsetTest.ComPlus.csproj b/src/test/WixToolsetTest.ComPlus/WixToolsetTest.ComPlus.csproj new file mode 100644 index 00000000..801f5ca2 --- /dev/null +++ b/src/test/WixToolsetTest.ComPlus/WixToolsetTest.ComPlus.csproj | |||
@@ -0,0 +1,38 @@ | |||
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 | <Project Sdk="Microsoft.NET.Sdk"> | ||
5 | <PropertyGroup> | ||
6 | <TargetFramework>netcoreapp2.1</TargetFramework> | ||
7 | <IsPackable>false</IsPackable> | ||
8 | </PropertyGroup> | ||
9 | |||
10 | <PropertyGroup> | ||
11 | <NoWarn>NU1701</NoWarn> | ||
12 | </PropertyGroup> | ||
13 | |||
14 | <ItemGroup> | ||
15 | <Content Include="TestData\UsingComPlusPartition\example.txt" CopyToOutputDirectory="PreserveNewest" /> | ||
16 | <Content Include="TestData\UsingComPlusPartition\Package.en-us.wxl" CopyToOutputDirectory="PreserveNewest" /> | ||
17 | <Content Include="TestData\UsingComPlusPartition\Package.wxs" CopyToOutputDirectory="PreserveNewest" /> | ||
18 | <Content Include="TestData\UsingComPlusPartition\PackageComponents.wxs" CopyToOutputDirectory="PreserveNewest" /> | ||
19 | </ItemGroup> | ||
20 | |||
21 | <ItemGroup> | ||
22 | <ProjectReference Include="..\..\wixext\WixToolset.ComPlus.wixext.csproj" /> | ||
23 | </ItemGroup> | ||
24 | |||
25 | <ItemGroup> | ||
26 | <PackageReference Include="WixToolset.Core.TestPackage" Version="4.0.*" PrivateAssets="all" /> | ||
27 | </ItemGroup> | ||
28 | |||
29 | <ItemGroup> | ||
30 | <PackageReference Include="WixBuildTools.TestSupport" Version="4.0.*" /> | ||
31 | </ItemGroup> | ||
32 | |||
33 | <ItemGroup> | ||
34 | <PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.8.0" /> | ||
35 | <PackageReference Include="xunit" Version="2.4.0" /> | ||
36 | <PackageReference Include="xunit.runner.visualstudio" Version="2.4.0" /> | ||
37 | </ItemGroup> | ||
38 | </Project> | ||
diff --git a/src/wixext/ComPlusCompiler.cs b/src/wixext/ComPlusCompiler.cs index 7f22c56b..4709eba9 100644 --- a/src/wixext/ComPlusCompiler.cs +++ b/src/wixext/ComPlusCompiler.cs | |||
@@ -1,32 +1,23 @@ | |||
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. | 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 | 2 | ||
3 | namespace WixToolset.Extensions | 3 | namespace WixToolset.ComPlus |
4 | { | 4 | { |
5 | using System; | 5 | using System; |
6 | using System.Collections; | 6 | using System.Collections; |
7 | using System.Collections.Generic; | 7 | using System.Collections.Generic; |
8 | using System.Globalization; | 8 | using System.Globalization; |
9 | using System.Reflection; | 9 | using System.Text; |
10 | using System.Xml; | ||
11 | using System.Xml.Linq; | 10 | using System.Xml.Linq; |
12 | using System.Xml.Schema; | ||
13 | using WixToolset.Data; | 11 | using WixToolset.Data; |
14 | using WixToolset.Extensibility; | 12 | using WixToolset.Extensibility; |
13 | using WixToolset.Extensibility.Data; | ||
15 | 14 | ||
16 | /// <summary> | 15 | /// <summary> |
17 | /// The compiler for the WiX Toolset Internet Information Services Extension. | 16 | /// The compiler for the WiX Toolset COM+ Extension. |
18 | /// </summary> | 17 | /// </summary> |
19 | public sealed class ComPlusCompiler : CompilerExtension | 18 | public sealed class ComPlusCompiler : BaseCompilerExtension |
20 | { | 19 | { |
21 | /// <summary> | 20 | /// <summary> |
22 | /// Instantiate a new ComPlusCompiler. | ||
23 | /// </summary> | ||
24 | public ComPlusCompiler() | ||
25 | { | ||
26 | this.Namespace = "http://wixtoolset.org/schemas/v4/wxs/complus"; | ||
27 | } | ||
28 | |||
29 | /// <summary> | ||
30 | /// </summary> | 21 | /// </summary> |
31 | /// <remarks></remarks> | 22 | /// <remarks></remarks> |
32 | public enum CpiAssemblyAttributes | 23 | public enum CpiAssemblyAttributes |
@@ -37,6 +28,8 @@ namespace WixToolset.Extensions | |||
37 | RegisterInCommit = (1 << 3) | 28 | RegisterInCommit = (1 << 3) |
38 | } | 29 | } |
39 | 30 | ||
31 | public override XNamespace Namespace => "http://wixtoolset.org/schemas/v4/wxs/complus"; | ||
32 | |||
40 | /// <summary> | 33 | /// <summary> |
41 | /// Processes an element for the Compiler. | 34 | /// Processes an element for the Compiler. |
42 | /// </summary> | 35 | /// </summary> |
@@ -44,7 +37,7 @@ namespace WixToolset.Extensions | |||
44 | /// <param name="parentElement">Parent element of element to process.</param> | 37 | /// <param name="parentElement">Parent element of element to process.</param> |
45 | /// <param name="element">Element to process.</param> | 38 | /// <param name="element">Element to process.</param> |
46 | /// <param name="contextValues">Extra information about the context in which this element is being parsed.</param> | 39 | /// <param name="contextValues">Extra information about the context in which this element is being parsed.</param> |
47 | public override void ParseElement(XElement parentElement, XElement element, IDictionary<string, string> context) | 40 | public override void ParseElement(Intermediate intermediate, IntermediateSection section, XElement parentElement, XElement element, IDictionary<string, string> context) |
48 | { | 41 | { |
49 | switch (parentElement.Name.LocalName) | 42 | switch (parentElement.Name.LocalName) |
50 | { | 43 | { |
@@ -56,49 +49,49 @@ namespace WixToolset.Extensions | |||
56 | switch (element.Name.LocalName) | 49 | switch (element.Name.LocalName) |
57 | { | 50 | { |
58 | case "ComPlusPartition": | 51 | case "ComPlusPartition": |
59 | this.ParseComPlusPartitionElement(element, componentId, win64); | 52 | this.ParseComPlusPartitionElement(intermediate, section, element, componentId, win64); |
60 | break; | 53 | break; |
61 | case "ComPlusPartitionRole": | 54 | case "ComPlusPartitionRole": |
62 | this.ParseComPlusPartitionRoleElement(element, componentId, null); | 55 | this.ParseComPlusPartitionRoleElement(intermediate, section, element, componentId, null); |
63 | break; | 56 | break; |
64 | case "ComPlusUserInPartitionRole": | 57 | case "ComPlusUserInPartitionRole": |
65 | this.ParseComPlusUserInPartitionRoleElement(element, componentId, null); | 58 | this.ParseComPlusUserInPartitionRoleElement(intermediate, section, element, componentId, null); |
66 | break; | 59 | break; |
67 | case "ComPlusGroupInPartitionRole": | 60 | case "ComPlusGroupInPartitionRole": |
68 | this.ParseComPlusGroupInPartitionRoleElement(element, componentId, null); | 61 | this.ParseComPlusGroupInPartitionRoleElement(intermediate, section, element, componentId, null); |
69 | break; | 62 | break; |
70 | case "ComPlusPartitionUser": | 63 | case "ComPlusPartitionUser": |
71 | this.ParseComPlusPartitionUserElement(element, componentId, null); | 64 | this.ParseComPlusPartitionUserElement(intermediate, section, element, componentId, null); |
72 | break; | 65 | break; |
73 | case "ComPlusApplication": | 66 | case "ComPlusApplication": |
74 | this.ParseComPlusApplicationElement(element, componentId, win64, null); | 67 | this.ParseComPlusApplicationElement(intermediate, section, element, componentId, win64, null); |
75 | break; | 68 | break; |
76 | case "ComPlusApplicationRole": | 69 | case "ComPlusApplicationRole": |
77 | this.ParseComPlusApplicationRoleElement(element, componentId, null); | 70 | this.ParseComPlusApplicationRoleElement(intermediate, section, element, componentId, null); |
78 | break; | 71 | break; |
79 | case "ComPlusUserInApplicationRole": | 72 | case "ComPlusUserInApplicationRole": |
80 | this.ParseComPlusUserInApplicationRoleElement(element, componentId, null); | 73 | this.ParseComPlusUserInApplicationRoleElement(intermediate, section, element, componentId, null); |
81 | break; | 74 | break; |
82 | case "ComPlusGroupInApplicationRole": | 75 | case "ComPlusGroupInApplicationRole": |
83 | this.ParseComPlusGroupInApplicationRoleElement(element, componentId, null); | 76 | this.ParseComPlusGroupInApplicationRoleElement(intermediate, section, element, componentId, null); |
84 | break; | 77 | break; |
85 | case "ComPlusAssembly": | 78 | case "ComPlusAssembly": |
86 | this.ParseComPlusAssemblyElement(element, componentId, win64, null); | 79 | this.ParseComPlusAssemblyElement(intermediate, section, element, componentId, win64, null); |
87 | break; | 80 | break; |
88 | case "ComPlusRoleForComponent": | 81 | case "ComPlusRoleForComponent": |
89 | this.ParseComPlusRoleForComponentElement(element, componentId, null); | 82 | this.ParseComPlusRoleForComponentElement(intermediate, section, element, componentId, null); |
90 | break; | 83 | break; |
91 | case "ComPlusRoleForInterface": | 84 | case "ComPlusRoleForInterface": |
92 | this.ParseComPlusRoleForInterfaceElement(element, componentId, null); | 85 | this.ParseComPlusRoleForInterfaceElement(intermediate, section, element, componentId, null); |
93 | break; | 86 | break; |
94 | case "ComPlusRoleForMethod": | 87 | case "ComPlusRoleForMethod": |
95 | this.ParseComPlusRoleForMethodElement(element, componentId, null); | 88 | this.ParseComPlusRoleForMethodElement(intermediate, section, element, componentId, null); |
96 | break; | 89 | break; |
97 | case "ComPlusSubscription": | 90 | case "ComPlusSubscription": |
98 | this.ParseComPlusSubscriptionElement(element, componentId, null); | 91 | this.ParseComPlusSubscriptionElement(intermediate, section, element, componentId, null); |
99 | break; | 92 | break; |
100 | default: | 93 | default: |
101 | this.Core.UnexpectedElement(parentElement, element); | 94 | this.ParseHelper.UnexpectedElement(parentElement, element); |
102 | break; | 95 | break; |
103 | } | 96 | } |
104 | break; | 97 | break; |
@@ -108,24 +101,24 @@ namespace WixToolset.Extensions | |||
108 | switch (element.Name.LocalName) | 101 | switch (element.Name.LocalName) |
109 | { | 102 | { |
110 | case "ComPlusPartition": | 103 | case "ComPlusPartition": |
111 | this.ParseComPlusPartitionElement(element, null, false); | 104 | this.ParseComPlusPartitionElement(intermediate, section, element, null, false); |
112 | break; | 105 | break; |
113 | case "ComPlusPartitionRole": | 106 | case "ComPlusPartitionRole": |
114 | this.ParseComPlusPartitionRoleElement(element, null, null); | 107 | this.ParseComPlusPartitionRoleElement(intermediate, section, element, null, null); |
115 | break; | 108 | break; |
116 | case "ComPlusApplication": | 109 | case "ComPlusApplication": |
117 | this.ParseComPlusApplicationElement(element, null, false, null); | 110 | this.ParseComPlusApplicationElement(intermediate, section, element, null, false, null); |
118 | break; | 111 | break; |
119 | case "ComPlusApplicationRole": | 112 | case "ComPlusApplicationRole": |
120 | this.ParseComPlusApplicationRoleElement(element, null, null); | 113 | this.ParseComPlusApplicationRoleElement(intermediate, section, element, null, null); |
121 | break; | 114 | break; |
122 | default: | 115 | default: |
123 | this.Core.UnexpectedElement(parentElement, element); | 116 | this.ParseHelper.UnexpectedElement(parentElement, element); |
124 | break; | 117 | break; |
125 | } | 118 | } |
126 | break; | 119 | break; |
127 | default: | 120 | default: |
128 | this.Core.UnexpectedElement(parentElement, element); | 121 | this.ParseHelper.UnexpectedElement(parentElement, element); |
129 | break; | 122 | break; |
130 | } | 123 | } |
131 | } | 124 | } |
@@ -135,9 +128,9 @@ namespace WixToolset.Extensions | |||
135 | /// </summary> | 128 | /// </summary> |
136 | /// <param name="node">Element to parse.</param> | 129 | /// <param name="node">Element to parse.</param> |
137 | /// <param name="componentKey">Identifier of parent component.</param> | 130 | /// <param name="componentKey">Identifier of parent component.</param> |
138 | private void ParseComPlusPartitionElement(XElement node, string componentKey, bool win64) | 131 | private void ParseComPlusPartitionElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, bool win64) |
139 | { | 132 | { |
140 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 133 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
141 | 134 | ||
142 | string key = null; | 135 | string key = null; |
143 | string id = null; | 136 | string id = null; |
@@ -152,49 +145,49 @@ namespace WixToolset.Extensions | |||
152 | switch (attrib.Name.LocalName) | 145 | switch (attrib.Name.LocalName) |
153 | { | 146 | { |
154 | case "Id": | 147 | case "Id": |
155 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 148 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
156 | break; | 149 | break; |
157 | case "PartitionId": | 150 | case "PartitionId": |
158 | id = TryFormatGuidValue(this.Core.GetAttributeValue(sourceLineNumbers, attrib)); | 151 | id = this.TryFormatGuidValue(this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib)); |
159 | break; | 152 | break; |
160 | case "Name": | 153 | case "Name": |
161 | name = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 154 | name = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
162 | break; | 155 | break; |
163 | case "Changeable": | 156 | case "Changeable": |
164 | this.Core.OnMessage(WixWarnings.DeprecatedAttribute(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 157 | this.Messaging.Write(WarningMessages.DeprecatedAttribute(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
165 | break; | 158 | break; |
166 | case "Deleteable": | 159 | case "Deleteable": |
167 | if (null == componentKey) | 160 | if (null == componentKey) |
168 | { | 161 | { |
169 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 162 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
170 | } | 163 | } |
171 | properties["Deleteable"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 164 | properties["Deleteable"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
172 | break; | 165 | break; |
173 | case "Description": | 166 | case "Description": |
174 | if (null == componentKey) | 167 | if (null == componentKey) |
175 | { | 168 | { |
176 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 169 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
177 | } | 170 | } |
178 | properties["Description"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 171 | properties["Description"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
179 | break; | 172 | break; |
180 | default: | 173 | default: |
181 | this.Core.UnexpectedAttribute(node, attrib); | 174 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
182 | break; | 175 | break; |
183 | } | 176 | } |
184 | } | 177 | } |
185 | else | 178 | else |
186 | { | 179 | { |
187 | this.Core.ParseExtensionAttribute(node, attrib); | 180 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
188 | } | 181 | } |
189 | } | 182 | } |
190 | 183 | ||
191 | if (null != componentKey && null == name) | 184 | if (null != componentKey && null == name) |
192 | { | 185 | { |
193 | this.Core.OnMessage(ComPlusErrors.RequiredAttributeUnderComponent(sourceLineNumbers, node.Name.LocalName, "Name")); | 186 | this.Messaging.Write(ComPlusErrors.RequiredAttributeUnderComponent(sourceLineNumbers, node.Name.LocalName, "Name")); |
194 | } | 187 | } |
195 | if (null == componentKey && null == id && null == name) | 188 | if (null == componentKey && null == id && null == name) |
196 | { | 189 | { |
197 | this.Core.OnMessage(ComPlusErrors.RequiredAttributeNotUnderComponent(sourceLineNumbers, node.Name.LocalName, "Id", "Name")); | 190 | this.Messaging.Write(ComPlusErrors.RequiredAttributeNotUnderComponent(sourceLineNumbers, node.Name.LocalName, "Id", "Name")); |
198 | } | 191 | } |
199 | 192 | ||
200 | foreach (XElement child in node.Elements()) | 193 | foreach (XElement child in node.Elements()) |
@@ -204,58 +197,58 @@ namespace WixToolset.Extensions | |||
204 | switch (child.Name.LocalName) | 197 | switch (child.Name.LocalName) |
205 | { | 198 | { |
206 | case "ComPlusPartitionRole": | 199 | case "ComPlusPartitionRole": |
207 | this.ParseComPlusPartitionRoleElement(child, componentKey, key); | 200 | this.ParseComPlusPartitionRoleElement(intermediate, section, child, componentKey, key); |
208 | break; | 201 | break; |
209 | case "ComPlusPartitionUser": | 202 | case "ComPlusPartitionUser": |
210 | this.ParseComPlusPartitionUserElement(child, componentKey, key); | 203 | this.ParseComPlusPartitionUserElement(intermediate, section, child, componentKey, key); |
211 | break; | 204 | break; |
212 | case "ComPlusApplication": | 205 | case "ComPlusApplication": |
213 | this.ParseComPlusApplicationElement(child, componentKey, win64, key); | 206 | this.ParseComPlusApplicationElement(intermediate, section, child, componentKey, win64, key); |
214 | break; | 207 | break; |
215 | default: | 208 | default: |
216 | this.Core.UnexpectedElement(node, child); | 209 | this.ParseHelper.UnexpectedElement(node, child); |
217 | break; | 210 | break; |
218 | } | 211 | } |
219 | } | 212 | } |
220 | else | 213 | else |
221 | { | 214 | { |
222 | this.Core.ParseExtensionElement(node, child); | 215 | this.ParseHelper.ParseExtensionElement(this.Context.Extensions, intermediate, section, node, child); |
223 | } | 216 | } |
224 | } | 217 | } |
225 | 218 | ||
226 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusPartition"); | 219 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusPartition"); |
227 | row[0] = key; | 220 | row.Set(0, key); |
228 | row[1] = componentKey; | 221 | row.Set(1, componentKey); |
229 | row[2] = id; | 222 | row.Set(2, id); |
230 | row[3] = name; | 223 | row.Set(3, name); |
231 | 224 | ||
232 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); | 225 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); |
233 | while (propertiesEnumerator.MoveNext()) | 226 | while (propertiesEnumerator.MoveNext()) |
234 | { | 227 | { |
235 | Row propertyRow = this.Core.CreateRow(sourceLineNumbers, "ComPlusPartitionProperty"); | 228 | var propertyRow = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusPartitionProperty"); |
236 | propertyRow[0] = key; | 229 | propertyRow.Set(0, key); |
237 | propertyRow[1] = (string)propertiesEnumerator.Key; | 230 | propertyRow.Set(1, (string)propertiesEnumerator.Key); |
238 | propertyRow[2] = (string)propertiesEnumerator.Value; | 231 | propertyRow.Set(2, (string)propertiesEnumerator.Value); |
239 | } | 232 | } |
240 | 233 | ||
241 | if (componentKey != null) | 234 | if (componentKey != null) |
242 | { | 235 | { |
243 | if (win64) | 236 | if (win64) |
244 | { | 237 | { |
245 | if (this.Core.CurrentPlatform == Platform.IA64) | 238 | if (this.Context.Platform == Platform.IA64) |
246 | { | 239 | { |
247 | this.Core.OnMessage(WixErrors.UnsupportedPlatformForElement(sourceLineNumbers, "ia64", node.Name.LocalName)); | 240 | this.Messaging.Write(ErrorMessages.UnsupportedPlatformForElement(sourceLineNumbers, "ia64", node.Name.LocalName)); |
248 | } | 241 | } |
249 | else | 242 | else |
250 | { | 243 | { |
251 | this.Core.CreateSimpleReference(sourceLineNumbers, "CustomAction", "ConfigureComPlusInstall_x64"); | 244 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureComPlusInstall_x64"); |
252 | this.Core.CreateSimpleReference(sourceLineNumbers, "CustomAction", "ConfigureComPlusUninstall_x64"); | 245 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureComPlusUninstall_x64"); |
253 | } | 246 | } |
254 | } | 247 | } |
255 | else | 248 | else |
256 | { | 249 | { |
257 | this.Core.CreateSimpleReference(sourceLineNumbers, "CustomAction", "ConfigureComPlusInstall"); | 250 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureComPlusInstall"); |
258 | this.Core.CreateSimpleReference(sourceLineNumbers, "CustomAction", "ConfigureComPlusUninstall"); | 251 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureComPlusUninstall"); |
259 | } | 252 | } |
260 | } | 253 | } |
261 | } | 254 | } |
@@ -266,9 +259,9 @@ namespace WixToolset.Extensions | |||
266 | /// <param name="node">Element to parse.</param> | 259 | /// <param name="node">Element to parse.</param> |
267 | /// <param name="componentKey">Identifier of parent component.</param> | 260 | /// <param name="componentKey">Identifier of parent component.</param> |
268 | /// <param name="applicationKey">Optional identifier of parent application.</param> | 261 | /// <param name="applicationKey">Optional identifier of parent application.</param> |
269 | private void ParseComPlusPartitionRoleElement(XElement node, string componentKey, string partitionKey) | 262 | private void ParseComPlusPartitionRoleElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string partitionKey) |
270 | { | 263 | { |
271 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 264 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
272 | 265 | ||
273 | string key = null; | 266 | string key = null; |
274 | string name = null; | 267 | string name = null; |
@@ -280,33 +273,33 @@ namespace WixToolset.Extensions | |||
280 | switch (attrib.Name.LocalName) | 273 | switch (attrib.Name.LocalName) |
281 | { | 274 | { |
282 | case "Id": | 275 | case "Id": |
283 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 276 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
284 | break; | 277 | break; |
285 | case "Partition": | 278 | case "Partition": |
286 | if (null != partitionKey) | 279 | if (null != partitionKey) |
287 | { | 280 | { |
288 | this.Core.OnMessage(WixErrors.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); | 281 | this.Messaging.Write(ErrorMessages.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); |
289 | } | 282 | } |
290 | partitionKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 283 | partitionKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
291 | this.Core.CreateSimpleReference(sourceLineNumbers, "ComPlusPartition", partitionKey); | 284 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "ComPlusPartition", partitionKey); |
292 | break; | 285 | break; |
293 | case "Name": | 286 | case "Name": |
294 | name = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 287 | name = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
295 | break; | 288 | break; |
296 | default: | 289 | default: |
297 | this.Core.UnexpectedAttribute(node, attrib); | 290 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
298 | break; | 291 | break; |
299 | } | 292 | } |
300 | } | 293 | } |
301 | else | 294 | else |
302 | { | 295 | { |
303 | this.Core.ParseExtensionAttribute(node, attrib); | 296 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
304 | } | 297 | } |
305 | } | 298 | } |
306 | 299 | ||
307 | if (null == partitionKey) | 300 | if (null == partitionKey) |
308 | { | 301 | { |
309 | this.Core.OnMessage(WixErrors.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Partition")); | 302 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Partition")); |
310 | } | 303 | } |
311 | 304 | ||
312 | foreach (XElement child in node.Elements()) | 305 | foreach (XElement child in node.Elements()) |
@@ -316,27 +309,27 @@ namespace WixToolset.Extensions | |||
316 | switch (child.Name.LocalName) | 309 | switch (child.Name.LocalName) |
317 | { | 310 | { |
318 | case "ComPlusUserInPartitionRole": | 311 | case "ComPlusUserInPartitionRole": |
319 | this.ParseComPlusUserInPartitionRoleElement(child, componentKey, key); | 312 | this.ParseComPlusUserInPartitionRoleElement(intermediate, section, child, componentKey, key); |
320 | break; | 313 | break; |
321 | case "ComPlusGroupInPartitionRole": | 314 | case "ComPlusGroupInPartitionRole": |
322 | this.ParseComPlusGroupInPartitionRoleElement(child, componentKey, key); | 315 | this.ParseComPlusGroupInPartitionRoleElement(intermediate, section, child, componentKey, key); |
323 | break; | 316 | break; |
324 | default: | 317 | default: |
325 | this.Core.UnexpectedElement(node, child); | 318 | this.ParseHelper.UnexpectedElement(node, child); |
326 | break; | 319 | break; |
327 | } | 320 | } |
328 | } | 321 | } |
329 | else | 322 | else |
330 | { | 323 | { |
331 | this.Core.ParseExtensionElement(node, child); | 324 | this.ParseHelper.ParseExtensionElement(this.Context.Extensions, intermediate, section, node, child); |
332 | } | 325 | } |
333 | } | 326 | } |
334 | 327 | ||
335 | // add table row | 328 | // add table row |
336 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusPartitionRole"); | 329 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusPartitionRole"); |
337 | row[0] = key; | 330 | row.Set(0, key); |
338 | row[1] = partitionKey; | 331 | row.Set(1, partitionKey); |
339 | row[3] = name; | 332 | row.Set(3, name); |
340 | } | 333 | } |
341 | 334 | ||
342 | /// <summary> | 335 | /// <summary> |
@@ -345,9 +338,9 @@ namespace WixToolset.Extensions | |||
345 | /// <param name="node">Element to parse.</param> | 338 | /// <param name="node">Element to parse.</param> |
346 | /// <param name="componentKey">Identifier of parent component.</param> | 339 | /// <param name="componentKey">Identifier of parent component.</param> |
347 | /// <param name="applicationKey">Optional identifier of parent application role.</param> | 340 | /// <param name="applicationKey">Optional identifier of parent application role.</param> |
348 | private void ParseComPlusUserInPartitionRoleElement(XElement node, string componentKey, string partitionRoleKey) | 341 | private void ParseComPlusUserInPartitionRoleElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string partitionRoleKey) |
349 | { | 342 | { |
350 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 343 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
351 | 344 | ||
352 | string key = null; | 345 | string key = null; |
353 | string user = null; | 346 | string user = null; |
@@ -359,41 +352,41 @@ namespace WixToolset.Extensions | |||
359 | switch (attrib.Name.LocalName) | 352 | switch (attrib.Name.LocalName) |
360 | { | 353 | { |
361 | case "Id": | 354 | case "Id": |
362 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 355 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
363 | break; | 356 | break; |
364 | case "PartitionRole": | 357 | case "PartitionRole": |
365 | if (null != partitionRoleKey) | 358 | if (null != partitionRoleKey) |
366 | { | 359 | { |
367 | this.Core.OnMessage(WixErrors.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); | 360 | this.Messaging.Write(ErrorMessages.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); |
368 | } | 361 | } |
369 | partitionRoleKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 362 | partitionRoleKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
370 | this.Core.CreateSimpleReference(sourceLineNumbers, "ComPlusPartitionRole", partitionRoleKey); | 363 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "ComPlusPartitionRole", partitionRoleKey); |
371 | break; | 364 | break; |
372 | case "User": | 365 | case "User": |
373 | user = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 366 | user = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
374 | this.Core.CreateSimpleReference(sourceLineNumbers, "User", user); | 367 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "User", user); |
375 | break; | 368 | break; |
376 | default: | 369 | default: |
377 | this.Core.UnexpectedAttribute(node, attrib); | 370 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
378 | break; | 371 | break; |
379 | } | 372 | } |
380 | } | 373 | } |
381 | else | 374 | else |
382 | { | 375 | { |
383 | this.Core.ParseExtensionAttribute(node, attrib); | 376 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
384 | } | 377 | } |
385 | } | 378 | } |
386 | 379 | ||
387 | if (null == partitionRoleKey) | 380 | if (null == partitionRoleKey) |
388 | { | 381 | { |
389 | this.Core.OnMessage(WixErrors.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "PartitionRole")); | 382 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "PartitionRole")); |
390 | } | 383 | } |
391 | 384 | ||
392 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusUserInPartitionRole"); | 385 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusUserInPartitionRole"); |
393 | row[0] = key; | 386 | row.Set(0, key); |
394 | row[1] = partitionRoleKey; | 387 | row.Set(1, partitionRoleKey); |
395 | row[2] = componentKey; | 388 | row.Set(2, componentKey); |
396 | row[3] = user; | 389 | row.Set(3, user); |
397 | } | 390 | } |
398 | 391 | ||
399 | /// <summary> | 392 | /// <summary> |
@@ -402,9 +395,9 @@ namespace WixToolset.Extensions | |||
402 | /// <param name="node">Element to parse.</param> | 395 | /// <param name="node">Element to parse.</param> |
403 | /// <param name="componentKey">Identifier of parent component.</param> | 396 | /// <param name="componentKey">Identifier of parent component.</param> |
404 | /// <param name="applicationKey">Optional identifier of parent application role.</param> | 397 | /// <param name="applicationKey">Optional identifier of parent application role.</param> |
405 | private void ParseComPlusGroupInPartitionRoleElement(XElement node, string componentKey, string partitionRoleKey) | 398 | private void ParseComPlusGroupInPartitionRoleElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string partitionRoleKey) |
406 | { | 399 | { |
407 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 400 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
408 | 401 | ||
409 | string key = null; | 402 | string key = null; |
410 | string group = null; | 403 | string group = null; |
@@ -416,41 +409,41 @@ namespace WixToolset.Extensions | |||
416 | switch (attrib.Name.LocalName) | 409 | switch (attrib.Name.LocalName) |
417 | { | 410 | { |
418 | case "Id": | 411 | case "Id": |
419 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 412 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
420 | break; | 413 | break; |
421 | case "PartitionRole": | 414 | case "PartitionRole": |
422 | if (null != partitionRoleKey) | 415 | if (null != partitionRoleKey) |
423 | { | 416 | { |
424 | this.Core.OnMessage(WixErrors.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); | 417 | this.Messaging.Write(ErrorMessages.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); |
425 | } | 418 | } |
426 | partitionRoleKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 419 | partitionRoleKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
427 | this.Core.CreateSimpleReference(sourceLineNumbers, "ComPlusPartitionRole", partitionRoleKey); | 420 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "ComPlusPartitionRole", partitionRoleKey); |
428 | break; | 421 | break; |
429 | case "Group": | 422 | case "Group": |
430 | group = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 423 | group = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
431 | this.Core.CreateSimpleReference(sourceLineNumbers, "Group", group); | 424 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "Group", group); |
432 | break; | 425 | break; |
433 | default: | 426 | default: |
434 | this.Core.UnexpectedAttribute(node, attrib); | 427 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
435 | break; | 428 | break; |
436 | } | 429 | } |
437 | } | 430 | } |
438 | else | 431 | else |
439 | { | 432 | { |
440 | this.Core.ParseExtensionAttribute(node, attrib); | 433 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
441 | } | 434 | } |
442 | } | 435 | } |
443 | 436 | ||
444 | if (null == partitionRoleKey) | 437 | if (null == partitionRoleKey) |
445 | { | 438 | { |
446 | this.Core.OnMessage(WixErrors.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "PartitionRole")); | 439 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "PartitionRole")); |
447 | } | 440 | } |
448 | 441 | ||
449 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusGroupInPartitionRole"); | 442 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusGroupInPartitionRole"); |
450 | row[0] = key; | 443 | row.Set(0, key); |
451 | row[1] = partitionRoleKey; | 444 | row.Set(1, partitionRoleKey); |
452 | row[2] = componentKey; | 445 | row.Set(2, componentKey); |
453 | row[3] = group; | 446 | row.Set(3, group); |
454 | } | 447 | } |
455 | 448 | ||
456 | /// <summary> | 449 | /// <summary> |
@@ -458,9 +451,9 @@ namespace WixToolset.Extensions | |||
458 | /// </summary> | 451 | /// </summary> |
459 | /// <param name="node">Element to parse.</param> | 452 | /// <param name="node">Element to parse.</param> |
460 | /// <param name="componentKey">Identifier of parent component.</param> | 453 | /// <param name="componentKey">Identifier of parent component.</param> |
461 | private void ParseComPlusPartitionUserElement(XElement node, string componentKey, string partitionKey) | 454 | private void ParseComPlusPartitionUserElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string partitionKey) |
462 | { | 455 | { |
463 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 456 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
464 | 457 | ||
465 | string key = null; | 458 | string key = null; |
466 | string user = null; | 459 | string user = null; |
@@ -472,41 +465,41 @@ namespace WixToolset.Extensions | |||
472 | switch (attrib.Name.LocalName) | 465 | switch (attrib.Name.LocalName) |
473 | { | 466 | { |
474 | case "Id": | 467 | case "Id": |
475 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 468 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
476 | break; | 469 | break; |
477 | case "Partition": | 470 | case "Partition": |
478 | if (null != partitionKey) | 471 | if (null != partitionKey) |
479 | { | 472 | { |
480 | this.Core.OnMessage(WixErrors.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); | 473 | this.Messaging.Write(ErrorMessages.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); |
481 | } | 474 | } |
482 | partitionKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 475 | partitionKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
483 | this.Core.CreateSimpleReference(sourceLineNumbers, "ComPlusPartition", partitionKey); | 476 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "ComPlusPartition", partitionKey); |
484 | break; | 477 | break; |
485 | case "User": | 478 | case "User": |
486 | user = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 479 | user = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
487 | this.Core.CreateSimpleReference(sourceLineNumbers, "User", user); | 480 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "User", user); |
488 | break; | 481 | break; |
489 | default: | 482 | default: |
490 | this.Core.UnexpectedAttribute(node, attrib); | 483 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
491 | break; | 484 | break; |
492 | } | 485 | } |
493 | } | 486 | } |
494 | else | 487 | else |
495 | { | 488 | { |
496 | this.Core.ParseExtensionAttribute(node, attrib); | 489 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
497 | } | 490 | } |
498 | } | 491 | } |
499 | 492 | ||
500 | if (null == partitionKey) | 493 | if (null == partitionKey) |
501 | { | 494 | { |
502 | this.Core.OnMessage(WixErrors.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Partition")); | 495 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Partition")); |
503 | } | 496 | } |
504 | 497 | ||
505 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusPartitionUser"); | 498 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusPartitionUser"); |
506 | row[0] = key; | 499 | row.Set(0, key); |
507 | row[1] = partitionKey; | 500 | row.Set(1, partitionKey); |
508 | row[2] = componentKey; | 501 | row.Set(2, componentKey); |
509 | row[3] = user; | 502 | row.Set(3, user); |
510 | } | 503 | } |
511 | 504 | ||
512 | /// <summary> | 505 | /// <summary> |
@@ -515,9 +508,9 @@ namespace WixToolset.Extensions | |||
515 | /// <param name="node">Element to parse.</param> | 508 | /// <param name="node">Element to parse.</param> |
516 | /// <param name="componentKey">Identifier of parent component.</param> | 509 | /// <param name="componentKey">Identifier of parent component.</param> |
517 | /// <param name="partitionKey">Optional identifier of parent partition.</param> | 510 | /// <param name="partitionKey">Optional identifier of parent partition.</param> |
518 | private void ParseComPlusApplicationElement(XElement node, string componentKey, bool win64, string partitionKey) | 511 | private void ParseComPlusApplicationElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, bool win64, string partitionKey) |
519 | { | 512 | { |
520 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 513 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
521 | 514 | ||
522 | string key = null; | 515 | string key = null; |
523 | string id = null; | 516 | string id = null; |
@@ -532,35 +525,35 @@ namespace WixToolset.Extensions | |||
532 | switch (attrib.Name.LocalName) | 525 | switch (attrib.Name.LocalName) |
533 | { | 526 | { |
534 | case "Id": | 527 | case "Id": |
535 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 528 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
536 | break; | 529 | break; |
537 | case "Partition": | 530 | case "Partition": |
538 | if (null != partitionKey) | 531 | if (null != partitionKey) |
539 | { | 532 | { |
540 | this.Core.OnMessage(WixErrors.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); | 533 | this.Messaging.Write(ErrorMessages.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); |
541 | } | 534 | } |
542 | partitionKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 535 | partitionKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
543 | this.Core.CreateSimpleReference(sourceLineNumbers, "ComPlusPartition", partitionKey); | 536 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "ComPlusPartition", partitionKey); |
544 | break; | 537 | break; |
545 | case "ApplicationId": | 538 | case "ApplicationId": |
546 | id = TryFormatGuidValue(this.Core.GetAttributeValue(sourceLineNumbers, attrib)); | 539 | id = this.TryFormatGuidValue(this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib)); |
547 | break; | 540 | break; |
548 | case "Name": | 541 | case "Name": |
549 | name = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 542 | name = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
550 | break; | 543 | break; |
551 | case "ThreeGigSupportEnabled": | 544 | case "ThreeGigSupportEnabled": |
552 | if (null == componentKey) | 545 | if (null == componentKey) |
553 | { | 546 | { |
554 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 547 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
555 | } | 548 | } |
556 | properties["3GigSupportEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 549 | properties["3GigSupportEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
557 | break; | 550 | break; |
558 | case "AccessChecksLevel": | 551 | case "AccessChecksLevel": |
559 | if (null == componentKey) | 552 | if (null == componentKey) |
560 | { | 553 | { |
561 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 554 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
562 | } | 555 | } |
563 | string accessChecksLevelValue = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 556 | string accessChecksLevelValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
564 | switch (accessChecksLevelValue) | 557 | switch (accessChecksLevelValue) |
565 | { | 558 | { |
566 | case "applicationLevel": | 559 | case "applicationLevel": |
@@ -570,16 +563,16 @@ namespace WixToolset.Extensions | |||
570 | properties["AccessChecksLevel"] = "1"; | 563 | properties["AccessChecksLevel"] = "1"; |
571 | break; | 564 | break; |
572 | default: | 565 | default: |
573 | this.Core.OnMessage(WixErrors.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "AccessChecksLevel", accessChecksLevelValue, "applicationLevel", "applicationComponentLevel")); | 566 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "AccessChecksLevel", accessChecksLevelValue, "applicationLevel", "applicationComponentLevel")); |
574 | break; | 567 | break; |
575 | } | 568 | } |
576 | break; | 569 | break; |
577 | case "Activation": | 570 | case "Activation": |
578 | if (null == componentKey) | 571 | if (null == componentKey) |
579 | { | 572 | { |
580 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 573 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
581 | } | 574 | } |
582 | string activationValue = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 575 | string activationValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
583 | switch (activationValue) | 576 | switch (activationValue) |
584 | { | 577 | { |
585 | case "inproc": | 578 | case "inproc": |
@@ -589,30 +582,30 @@ namespace WixToolset.Extensions | |||
589 | properties["Activation"] = "Local"; | 582 | properties["Activation"] = "Local"; |
590 | break; | 583 | break; |
591 | default: | 584 | default: |
592 | this.Core.OnMessage(WixErrors.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "Activation", activationValue, "inproc", "local")); | 585 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "Activation", activationValue, "inproc", "local")); |
593 | break; | 586 | break; |
594 | } | 587 | } |
595 | break; | 588 | break; |
596 | case "ApplicationAccessChecksEnabled": | 589 | case "ApplicationAccessChecksEnabled": |
597 | if (null == componentKey) | 590 | if (null == componentKey) |
598 | { | 591 | { |
599 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 592 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
600 | } | 593 | } |
601 | properties["ApplicationAccessChecksEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 594 | properties["ApplicationAccessChecksEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
602 | break; | 595 | break; |
603 | case "ApplicationDirectory": | 596 | case "ApplicationDirectory": |
604 | if (null == componentKey) | 597 | if (null == componentKey) |
605 | { | 598 | { |
606 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 599 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
607 | } | 600 | } |
608 | properties["ApplicationDirectory"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 601 | properties["ApplicationDirectory"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
609 | break; | 602 | break; |
610 | case "Authentication": | 603 | case "Authentication": |
611 | if (null == componentKey) | 604 | if (null == componentKey) |
612 | { | 605 | { |
613 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 606 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
614 | } | 607 | } |
615 | string authenticationValue = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 608 | string authenticationValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
616 | switch (authenticationValue) | 609 | switch (authenticationValue) |
617 | { | 610 | { |
618 | case "default": | 611 | case "default": |
@@ -637,16 +630,16 @@ namespace WixToolset.Extensions | |||
637 | properties["Authentication"] = "6"; | 630 | properties["Authentication"] = "6"; |
638 | break; | 631 | break; |
639 | default: | 632 | default: |
640 | this.Core.OnMessage(WixErrors.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "Authentication", authenticationValue, "default", "none", "connect", "call", "packet", "integrity", "privacy")); | 633 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "Authentication", authenticationValue, "default", "none", "connect", "call", "packet", "integrity", "privacy")); |
641 | break; | 634 | break; |
642 | } | 635 | } |
643 | break; | 636 | break; |
644 | case "AuthenticationCapability": | 637 | case "AuthenticationCapability": |
645 | if (null == componentKey) | 638 | if (null == componentKey) |
646 | { | 639 | { |
647 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 640 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
648 | } | 641 | } |
649 | string authenticationCapabilityValue = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 642 | string authenticationCapabilityValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
650 | switch (authenticationCapabilityValue) | 643 | switch (authenticationCapabilityValue) |
651 | { | 644 | { |
652 | case "none": | 645 | case "none": |
@@ -662,110 +655,110 @@ namespace WixToolset.Extensions | |||
662 | properties["AuthenticationCapability"] = "64"; | 655 | properties["AuthenticationCapability"] = "64"; |
663 | break; | 656 | break; |
664 | default: | 657 | default: |
665 | this.Core.OnMessage(WixErrors.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "AuthenticationCapability", authenticationCapabilityValue, "none", "secureReference", "staticCloaking", "dynamicCloaking")); | 658 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "AuthenticationCapability", authenticationCapabilityValue, "none", "secureReference", "staticCloaking", "dynamicCloaking")); |
666 | break; | 659 | break; |
667 | } | 660 | } |
668 | break; | 661 | break; |
669 | case "Changeable": | 662 | case "Changeable": |
670 | this.Core.OnMessage(WixWarnings.DeprecatedAttribute(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 663 | this.Messaging.Write(WarningMessages.DeprecatedAttribute(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
671 | break; | 664 | break; |
672 | case "CommandLine": | 665 | case "CommandLine": |
673 | if (null == componentKey) | 666 | if (null == componentKey) |
674 | { | 667 | { |
675 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 668 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
676 | } | 669 | } |
677 | properties["CommandLine"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 670 | properties["CommandLine"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
678 | break; | 671 | break; |
679 | case "ConcurrentApps": | 672 | case "ConcurrentApps": |
680 | if (null == componentKey) | 673 | if (null == componentKey) |
681 | { | 674 | { |
682 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 675 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
683 | } | 676 | } |
684 | properties["ConcurrentApps"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 677 | properties["ConcurrentApps"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
685 | break; | 678 | break; |
686 | case "CreatedBy": | 679 | case "CreatedBy": |
687 | if (null == componentKey) | 680 | if (null == componentKey) |
688 | { | 681 | { |
689 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 682 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
690 | } | 683 | } |
691 | properties["CreatedBy"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 684 | properties["CreatedBy"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
692 | break; | 685 | break; |
693 | case "CRMEnabled": | 686 | case "CRMEnabled": |
694 | if (null == componentKey) | 687 | if (null == componentKey) |
695 | { | 688 | { |
696 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 689 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
697 | } | 690 | } |
698 | properties["CRMEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 691 | properties["CRMEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
699 | break; | 692 | break; |
700 | case "CRMLogFile": | 693 | case "CRMLogFile": |
701 | if (null == componentKey) | 694 | if (null == componentKey) |
702 | { | 695 | { |
703 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 696 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
704 | } | 697 | } |
705 | properties["CRMLogFile"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 698 | properties["CRMLogFile"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
706 | break; | 699 | break; |
707 | case "Deleteable": | 700 | case "Deleteable": |
708 | if (null == componentKey) | 701 | if (null == componentKey) |
709 | { | 702 | { |
710 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 703 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
711 | } | 704 | } |
712 | properties["Deleteable"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 705 | properties["Deleteable"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
713 | break; | 706 | break; |
714 | case "Description": | 707 | case "Description": |
715 | if (null == componentKey) | 708 | if (null == componentKey) |
716 | { | 709 | { |
717 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 710 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
718 | } | 711 | } |
719 | properties["Description"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 712 | properties["Description"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
720 | break; | 713 | break; |
721 | case "DumpEnabled": | 714 | case "DumpEnabled": |
722 | if (null == componentKey) | 715 | if (null == componentKey) |
723 | { | 716 | { |
724 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 717 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
725 | } | 718 | } |
726 | properties["DumpEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 719 | properties["DumpEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
727 | break; | 720 | break; |
728 | case "DumpOnException": | 721 | case "DumpOnException": |
729 | if (null == componentKey) | 722 | if (null == componentKey) |
730 | { | 723 | { |
731 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 724 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
732 | } | 725 | } |
733 | properties["DumpOnException"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 726 | properties["DumpOnException"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
734 | break; | 727 | break; |
735 | case "DumpOnFailfast": | 728 | case "DumpOnFailfast": |
736 | if (null == componentKey) | 729 | if (null == componentKey) |
737 | { | 730 | { |
738 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 731 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
739 | } | 732 | } |
740 | properties["DumpOnFailfast"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 733 | properties["DumpOnFailfast"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
741 | break; | 734 | break; |
742 | case "DumpPath": | 735 | case "DumpPath": |
743 | if (null == componentKey) | 736 | if (null == componentKey) |
744 | { | 737 | { |
745 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 738 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
746 | } | 739 | } |
747 | properties["DumpPath"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 740 | properties["DumpPath"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
748 | break; | 741 | break; |
749 | case "EventsEnabled": | 742 | case "EventsEnabled": |
750 | if (null == componentKey) | 743 | if (null == componentKey) |
751 | { | 744 | { |
752 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 745 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
753 | } | 746 | } |
754 | properties["EventsEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 747 | properties["EventsEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
755 | break; | 748 | break; |
756 | case "Identity": | 749 | case "Identity": |
757 | if (null == componentKey) | 750 | if (null == componentKey) |
758 | { | 751 | { |
759 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 752 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
760 | } | 753 | } |
761 | properties["Identity"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 754 | properties["Identity"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
762 | break; | 755 | break; |
763 | case "ImpersonationLevel": | 756 | case "ImpersonationLevel": |
764 | if (null == componentKey) | 757 | if (null == componentKey) |
765 | { | 758 | { |
766 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 759 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
767 | } | 760 | } |
768 | string impersonationLevelValue = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 761 | string impersonationLevelValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
769 | switch (impersonationLevelValue) | 762 | switch (impersonationLevelValue) |
770 | { | 763 | { |
771 | case "anonymous": | 764 | case "anonymous": |
@@ -781,37 +774,37 @@ namespace WixToolset.Extensions | |||
781 | properties["ImpersonationLevel"] = "4"; | 774 | properties["ImpersonationLevel"] = "4"; |
782 | break; | 775 | break; |
783 | default: | 776 | default: |
784 | this.Core.OnMessage(WixErrors.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "ImpersonationLevel", impersonationLevelValue, "anonymous", "identify", "impersonate", "delegate")); | 777 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "ImpersonationLevel", impersonationLevelValue, "anonymous", "identify", "impersonate", "delegate")); |
785 | break; | 778 | break; |
786 | } | 779 | } |
787 | break; | 780 | break; |
788 | case "IsEnabled": | 781 | case "IsEnabled": |
789 | if (null == componentKey) | 782 | if (null == componentKey) |
790 | { | 783 | { |
791 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 784 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
792 | } | 785 | } |
793 | properties["IsEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 786 | properties["IsEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
794 | break; | 787 | break; |
795 | case "MaxDumpCount": | 788 | case "MaxDumpCount": |
796 | if (null == componentKey) | 789 | if (null == componentKey) |
797 | { | 790 | { |
798 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 791 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
799 | } | 792 | } |
800 | properties["MaxDumpCount"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 793 | properties["MaxDumpCount"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
801 | break; | 794 | break; |
802 | case "Password": | 795 | case "Password": |
803 | if (null == componentKey) | 796 | if (null == componentKey) |
804 | { | 797 | { |
805 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 798 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
806 | } | 799 | } |
807 | properties["Password"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 800 | properties["Password"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
808 | break; | 801 | break; |
809 | case "QCAuthenticateMsgs": | 802 | case "QCAuthenticateMsgs": |
810 | if (null == componentKey) | 803 | if (null == componentKey) |
811 | { | 804 | { |
812 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 805 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
813 | } | 806 | } |
814 | string qcAuthenticateMsgsValue = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 807 | string qcAuthenticateMsgsValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
815 | switch (qcAuthenticateMsgsValue) | 808 | switch (qcAuthenticateMsgsValue) |
816 | { | 809 | { |
817 | case "secureApps": | 810 | case "secureApps": |
@@ -824,128 +817,128 @@ namespace WixToolset.Extensions | |||
824 | properties["QCAuthenticateMsgs"] = "2"; | 817 | properties["QCAuthenticateMsgs"] = "2"; |
825 | break; | 818 | break; |
826 | default: | 819 | default: |
827 | this.Core.OnMessage(WixErrors.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "QCAuthenticateMsgs", qcAuthenticateMsgsValue, "secureApps", "off", "on")); | 820 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "QCAuthenticateMsgs", qcAuthenticateMsgsValue, "secureApps", "off", "on")); |
828 | break; | 821 | break; |
829 | } | 822 | } |
830 | break; | 823 | break; |
831 | case "QCListenerMaxThreads": | 824 | case "QCListenerMaxThreads": |
832 | if (null == componentKey) | 825 | if (null == componentKey) |
833 | { | 826 | { |
834 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 827 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
835 | } | 828 | } |
836 | properties["QCListenerMaxThreads"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 829 | properties["QCListenerMaxThreads"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
837 | break; | 830 | break; |
838 | case "QueueListenerEnabled": | 831 | case "QueueListenerEnabled": |
839 | if (null == componentKey) | 832 | if (null == componentKey) |
840 | { | 833 | { |
841 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 834 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
842 | } | 835 | } |
843 | properties["QueueListenerEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 836 | properties["QueueListenerEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
844 | break; | 837 | break; |
845 | case "QueuingEnabled": | 838 | case "QueuingEnabled": |
846 | if (null == componentKey) | 839 | if (null == componentKey) |
847 | { | 840 | { |
848 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 841 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
849 | } | 842 | } |
850 | properties["QueuingEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 843 | properties["QueuingEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
851 | break; | 844 | break; |
852 | case "RecycleActivationLimit": | 845 | case "RecycleActivationLimit": |
853 | if (null == componentKey) | 846 | if (null == componentKey) |
854 | { | 847 | { |
855 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 848 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
856 | } | 849 | } |
857 | properties["RecycleActivationLimit"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 850 | properties["RecycleActivationLimit"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
858 | break; | 851 | break; |
859 | case "RecycleCallLimit": | 852 | case "RecycleCallLimit": |
860 | if (null == componentKey) | 853 | if (null == componentKey) |
861 | { | 854 | { |
862 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 855 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
863 | } | 856 | } |
864 | properties["RecycleCallLimit"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 857 | properties["RecycleCallLimit"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
865 | break; | 858 | break; |
866 | case "RecycleExpirationTimeout": | 859 | case "RecycleExpirationTimeout": |
867 | if (null == componentKey) | 860 | if (null == componentKey) |
868 | { | 861 | { |
869 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 862 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
870 | } | 863 | } |
871 | properties["RecycleExpirationTimeout"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 864 | properties["RecycleExpirationTimeout"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
872 | break; | 865 | break; |
873 | case "RecycleLifetimeLimit": | 866 | case "RecycleLifetimeLimit": |
874 | if (null == componentKey) | 867 | if (null == componentKey) |
875 | { | 868 | { |
876 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 869 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
877 | } | 870 | } |
878 | properties["RecycleLifetimeLimit"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 871 | properties["RecycleLifetimeLimit"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
879 | break; | 872 | break; |
880 | case "RecycleMemoryLimit": | 873 | case "RecycleMemoryLimit": |
881 | if (null == componentKey) | 874 | if (null == componentKey) |
882 | { | 875 | { |
883 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 876 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
884 | } | 877 | } |
885 | properties["RecycleMemoryLimit"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 878 | properties["RecycleMemoryLimit"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
886 | break; | 879 | break; |
887 | case "Replicable": | 880 | case "Replicable": |
888 | if (null == componentKey) | 881 | if (null == componentKey) |
889 | { | 882 | { |
890 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 883 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
891 | } | 884 | } |
892 | properties["Replicable"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 885 | properties["Replicable"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
893 | break; | 886 | break; |
894 | case "RunForever": | 887 | case "RunForever": |
895 | if (null == componentKey) | 888 | if (null == componentKey) |
896 | { | 889 | { |
897 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 890 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
898 | } | 891 | } |
899 | properties["RunForever"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 892 | properties["RunForever"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
900 | break; | 893 | break; |
901 | case "ShutdownAfter": | 894 | case "ShutdownAfter": |
902 | if (null == componentKey) | 895 | if (null == componentKey) |
903 | { | 896 | { |
904 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 897 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
905 | } | 898 | } |
906 | properties["ShutdownAfter"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 899 | properties["ShutdownAfter"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
907 | break; | 900 | break; |
908 | case "SoapActivated": | 901 | case "SoapActivated": |
909 | if (null == componentKey) | 902 | if (null == componentKey) |
910 | { | 903 | { |
911 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 904 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
912 | } | 905 | } |
913 | properties["SoapActivated"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 906 | properties["SoapActivated"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
914 | break; | 907 | break; |
915 | case "SoapBaseUrl": | 908 | case "SoapBaseUrl": |
916 | if (null == componentKey) | 909 | if (null == componentKey) |
917 | { | 910 | { |
918 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 911 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
919 | } | 912 | } |
920 | properties["SoapBaseUrl"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 913 | properties["SoapBaseUrl"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
921 | break; | 914 | break; |
922 | case "SoapMailTo": | 915 | case "SoapMailTo": |
923 | if (null == componentKey) | 916 | if (null == componentKey) |
924 | { | 917 | { |
925 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 918 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
926 | } | 919 | } |
927 | properties["SoapMailTo"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 920 | properties["SoapMailTo"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
928 | break; | 921 | break; |
929 | case "SoapVRoot": | 922 | case "SoapVRoot": |
930 | if (null == componentKey) | 923 | if (null == componentKey) |
931 | { | 924 | { |
932 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 925 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
933 | } | 926 | } |
934 | properties["SoapVRoot"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 927 | properties["SoapVRoot"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
935 | break; | 928 | break; |
936 | case "SRPEnabled": | 929 | case "SRPEnabled": |
937 | if (null == componentKey) | 930 | if (null == componentKey) |
938 | { | 931 | { |
939 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 932 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
940 | } | 933 | } |
941 | properties["SRPEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 934 | properties["SRPEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
942 | break; | 935 | break; |
943 | case "SRPTrustLevel": | 936 | case "SRPTrustLevel": |
944 | if (null == componentKey) | 937 | if (null == componentKey) |
945 | { | 938 | { |
946 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 939 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
947 | } | 940 | } |
948 | string srpTrustLevelValue = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 941 | string srpTrustLevelValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
949 | switch (srpTrustLevelValue) | 942 | switch (srpTrustLevelValue) |
950 | { | 943 | { |
951 | case "disallowed": | 944 | case "disallowed": |
@@ -955,28 +948,28 @@ namespace WixToolset.Extensions | |||
955 | properties["SRPTrustLevel"] = "262144"; | 948 | properties["SRPTrustLevel"] = "262144"; |
956 | break; | 949 | break; |
957 | default: | 950 | default: |
958 | this.Core.OnMessage(WixErrors.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "SRPTrustLevel", srpTrustLevelValue, "disallowed", "fullyTrusted")); | 951 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "SRPTrustLevel", srpTrustLevelValue, "disallowed", "fullyTrusted")); |
959 | break; | 952 | break; |
960 | } | 953 | } |
961 | break; | 954 | break; |
962 | default: | 955 | default: |
963 | this.Core.UnexpectedAttribute(node, attrib); | 956 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
964 | break; | 957 | break; |
965 | } | 958 | } |
966 | } | 959 | } |
967 | else | 960 | else |
968 | { | 961 | { |
969 | this.Core.ParseExtensionAttribute(node, attrib); | 962 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
970 | } | 963 | } |
971 | } | 964 | } |
972 | 965 | ||
973 | if (null != componentKey && null == name) | 966 | if (null != componentKey && null == name) |
974 | { | 967 | { |
975 | this.Core.OnMessage(ComPlusErrors.RequiredAttributeUnderComponent(sourceLineNumbers, node.Name.LocalName, "Name")); | 968 | this.Messaging.Write(ComPlusErrors.RequiredAttributeUnderComponent(sourceLineNumbers, node.Name.LocalName, "Name")); |
976 | } | 969 | } |
977 | if (null == componentKey && null == id && null == name) | 970 | if (null == componentKey && null == id && null == name) |
978 | { | 971 | { |
979 | this.Core.OnMessage(ComPlusErrors.RequiredAttributeNotUnderComponent(sourceLineNumbers, node.Name.LocalName, "Id", "Name")); | 972 | this.Messaging.Write(ComPlusErrors.RequiredAttributeNotUnderComponent(sourceLineNumbers, node.Name.LocalName, "Id", "Name")); |
980 | } | 973 | } |
981 | 974 | ||
982 | foreach (XElement child in node.Elements()) | 975 | foreach (XElement child in node.Elements()) |
@@ -986,56 +979,56 @@ namespace WixToolset.Extensions | |||
986 | switch (child.Name.LocalName) | 979 | switch (child.Name.LocalName) |
987 | { | 980 | { |
988 | case "ComPlusApplicationRole": | 981 | case "ComPlusApplicationRole": |
989 | this.ParseComPlusApplicationRoleElement(child, componentKey, key); | 982 | this.ParseComPlusApplicationRoleElement(intermediate, section, child, componentKey, key); |
990 | break; | 983 | break; |
991 | case "ComPlusAssembly": | 984 | case "ComPlusAssembly": |
992 | this.ParseComPlusAssemblyElement(child, componentKey, win64, key); | 985 | this.ParseComPlusAssemblyElement(intermediate, section, child, componentKey, win64, key); |
993 | break; | 986 | break; |
994 | default: | 987 | default: |
995 | this.Core.UnexpectedElement(node, child); | 988 | this.ParseHelper.UnexpectedElement(node, child); |
996 | break; | 989 | break; |
997 | } | 990 | } |
998 | } | 991 | } |
999 | else | 992 | else |
1000 | { | 993 | { |
1001 | this.Core.ParseExtensionElement(node, child); | 994 | this.ParseHelper.ParseExtensionElement(this.Context.Extensions, intermediate, section, node, child); |
1002 | } | 995 | } |
1003 | } | 996 | } |
1004 | 997 | ||
1005 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusApplication"); | 998 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusApplication"); |
1006 | row[0] = key; | 999 | row.Set(0, key); |
1007 | row[1] = partitionKey; | 1000 | row.Set(1, partitionKey); |
1008 | row[2] = componentKey; | 1001 | row.Set(2, componentKey); |
1009 | row[3] = id; | 1002 | row.Set(3, id); |
1010 | row[4] = name; | 1003 | row.Set(4, name); |
1011 | 1004 | ||
1012 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); | 1005 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); |
1013 | while (propertiesEnumerator.MoveNext()) | 1006 | while (propertiesEnumerator.MoveNext()) |
1014 | { | 1007 | { |
1015 | Row propertyRow = this.Core.CreateRow(sourceLineNumbers, "ComPlusApplicationProperty"); | 1008 | var propertyRow = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusApplicationProperty"); |
1016 | propertyRow[0] = key; | 1009 | propertyRow.Set(0, key); |
1017 | propertyRow[1] = (string)propertiesEnumerator.Key; | 1010 | propertyRow.Set(1, (string)propertiesEnumerator.Key); |
1018 | propertyRow[2] = (string)propertiesEnumerator.Value; | 1011 | propertyRow.Set(2, (string)propertiesEnumerator.Value); |
1019 | } | 1012 | } |
1020 | 1013 | ||
1021 | if (componentKey != null) | 1014 | if (componentKey != null) |
1022 | { | 1015 | { |
1023 | if (win64) | 1016 | if (win64) |
1024 | { | 1017 | { |
1025 | if (this.Core.CurrentPlatform == Platform.IA64) | 1018 | if (this.Context.Platform == Platform.IA64) |
1026 | { | 1019 | { |
1027 | this.Core.OnMessage(WixErrors.UnsupportedPlatformForElement(sourceLineNumbers, "ia64", node.Name.LocalName)); | 1020 | this.Messaging.Write(ErrorMessages.UnsupportedPlatformForElement(sourceLineNumbers, "ia64", node.Name.LocalName)); |
1028 | } | 1021 | } |
1029 | else | 1022 | else |
1030 | { | 1023 | { |
1031 | this.Core.CreateSimpleReference(sourceLineNumbers, "CustomAction", "ConfigureComPlusInstall_x64"); | 1024 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureComPlusInstall_x64"); |
1032 | this.Core.CreateSimpleReference(sourceLineNumbers, "CustomAction", "ConfigureComPlusUninstall_x64"); | 1025 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureComPlusUninstall_x64"); |
1033 | } | 1026 | } |
1034 | } | 1027 | } |
1035 | else | 1028 | else |
1036 | { | 1029 | { |
1037 | this.Core.CreateSimpleReference(sourceLineNumbers, "CustomAction", "ConfigureComPlusInstall"); | 1030 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureComPlusInstall"); |
1038 | this.Core.CreateSimpleReference(sourceLineNumbers, "CustomAction", "ConfigureComPlusUninstall"); | 1031 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureComPlusUninstall"); |
1039 | } | 1032 | } |
1040 | } | 1033 | } |
1041 | } | 1034 | } |
@@ -1046,9 +1039,9 @@ namespace WixToolset.Extensions | |||
1046 | /// <param name="node">Element to parse.</param> | 1039 | /// <param name="node">Element to parse.</param> |
1047 | /// <param name="componentKey">Identifier of parent component.</param> | 1040 | /// <param name="componentKey">Identifier of parent component.</param> |
1048 | /// <param name="applicationKey">Optional identifier of parent application.</param> | 1041 | /// <param name="applicationKey">Optional identifier of parent application.</param> |
1049 | private void ParseComPlusApplicationRoleElement(XElement node, string componentKey, string applicationKey) | 1042 | private void ParseComPlusApplicationRoleElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string applicationKey) |
1050 | { | 1043 | { |
1051 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 1044 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
1052 | 1045 | ||
1053 | string key = null; | 1046 | string key = null; |
1054 | string name = null; | 1047 | string name = null; |
@@ -1062,40 +1055,40 @@ namespace WixToolset.Extensions | |||
1062 | switch (attrib.Name.LocalName) | 1055 | switch (attrib.Name.LocalName) |
1063 | { | 1056 | { |
1064 | case "Id": | 1057 | case "Id": |
1065 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 1058 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
1066 | break; | 1059 | break; |
1067 | case "Application": | 1060 | case "Application": |
1068 | if (null != applicationKey) | 1061 | if (null != applicationKey) |
1069 | { | 1062 | { |
1070 | this.Core.OnMessage(WixErrors.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); | 1063 | this.Messaging.Write(ErrorMessages.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); |
1071 | } | 1064 | } |
1072 | applicationKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1065 | applicationKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1073 | this.Core.CreateSimpleReference(sourceLineNumbers, "ComPlusApplication", applicationKey); | 1066 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "ComPlusApplication", applicationKey); |
1074 | break; | 1067 | break; |
1075 | case "Name": | 1068 | case "Name": |
1076 | name = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1069 | name = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1077 | break; | 1070 | break; |
1078 | case "Description": | 1071 | case "Description": |
1079 | if (null == componentKey) | 1072 | if (null == componentKey) |
1080 | { | 1073 | { |
1081 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 1074 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
1082 | } | 1075 | } |
1083 | properties["Description"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1076 | properties["Description"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1084 | break; | 1077 | break; |
1085 | default: | 1078 | default: |
1086 | this.Core.UnexpectedAttribute(node, attrib); | 1079 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
1087 | break; | 1080 | break; |
1088 | } | 1081 | } |
1089 | } | 1082 | } |
1090 | else | 1083 | else |
1091 | { | 1084 | { |
1092 | this.Core.ParseExtensionAttribute(node, attrib); | 1085 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
1093 | } | 1086 | } |
1094 | } | 1087 | } |
1095 | 1088 | ||
1096 | if (null == applicationKey) | 1089 | if (null == applicationKey) |
1097 | { | 1090 | { |
1098 | this.Core.OnMessage(WixErrors.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Application")); | 1091 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Application")); |
1099 | } | 1092 | } |
1100 | 1093 | ||
1101 | foreach (XElement child in node.Elements()) | 1094 | foreach (XElement child in node.Elements()) |
@@ -1105,35 +1098,35 @@ namespace WixToolset.Extensions | |||
1105 | switch (child.Name.LocalName) | 1098 | switch (child.Name.LocalName) |
1106 | { | 1099 | { |
1107 | case "ComPlusUserInApplicationRole": | 1100 | case "ComPlusUserInApplicationRole": |
1108 | this.ParseComPlusUserInApplicationRoleElement(child, componentKey, key); | 1101 | this.ParseComPlusUserInApplicationRoleElement(intermediate, section, child, componentKey, key); |
1109 | break; | 1102 | break; |
1110 | case "ComPlusGroupInApplicationRole": | 1103 | case "ComPlusGroupInApplicationRole": |
1111 | this.ParseComPlusGroupInApplicationRoleElement(child, componentKey, key); | 1104 | this.ParseComPlusGroupInApplicationRoleElement(intermediate, section, child, componentKey, key); |
1112 | break; | 1105 | break; |
1113 | default: | 1106 | default: |
1114 | this.Core.UnexpectedElement(node, child); | 1107 | this.ParseHelper.UnexpectedElement(node, child); |
1115 | break; | 1108 | break; |
1116 | } | 1109 | } |
1117 | } | 1110 | } |
1118 | else | 1111 | else |
1119 | { | 1112 | { |
1120 | this.Core.ParseExtensionElement(node, child); | 1113 | this.ParseHelper.ParseExtensionElement(this.Context.Extensions, intermediate, section, node, child); |
1121 | } | 1114 | } |
1122 | } | 1115 | } |
1123 | 1116 | ||
1124 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusApplicationRole"); | 1117 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusApplicationRole"); |
1125 | row[0] = key; | 1118 | row.Set(0, key); |
1126 | row[1] = applicationKey; | 1119 | row.Set(1, applicationKey); |
1127 | row[2] = componentKey; | 1120 | row.Set(2, componentKey); |
1128 | row[3] = name; | 1121 | row.Set(3, name); |
1129 | 1122 | ||
1130 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); | 1123 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); |
1131 | while (propertiesEnumerator.MoveNext()) | 1124 | while (propertiesEnumerator.MoveNext()) |
1132 | { | 1125 | { |
1133 | Row propertyRow = this.Core.CreateRow(sourceLineNumbers, "ComPlusApplicationRoleProperty"); | 1126 | var propertyRow = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusApplicationRoleProperty"); |
1134 | propertyRow[0] = key; | 1127 | propertyRow.Set(0, key); |
1135 | propertyRow[1] = (string)propertiesEnumerator.Key; | 1128 | propertyRow.Set(1, (string)propertiesEnumerator.Key); |
1136 | propertyRow[2] = (string)propertiesEnumerator.Value; | 1129 | propertyRow.Set(2, (string)propertiesEnumerator.Value); |
1137 | } | 1130 | } |
1138 | } | 1131 | } |
1139 | 1132 | ||
@@ -1143,9 +1136,9 @@ namespace WixToolset.Extensions | |||
1143 | /// <param name="node">Element to parse.</param> | 1136 | /// <param name="node">Element to parse.</param> |
1144 | /// <param name="componentKey">Identifier of parent component.</param> | 1137 | /// <param name="componentKey">Identifier of parent component.</param> |
1145 | /// <param name="applicationKey">Optional identifier of parent application role.</param> | 1138 | /// <param name="applicationKey">Optional identifier of parent application role.</param> |
1146 | private void ParseComPlusUserInApplicationRoleElement(XElement node, string componentKey, string applicationRoleKey) | 1139 | private void ParseComPlusUserInApplicationRoleElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string applicationRoleKey) |
1147 | { | 1140 | { |
1148 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 1141 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
1149 | 1142 | ||
1150 | string key = null; | 1143 | string key = null; |
1151 | string user = null; | 1144 | string user = null; |
@@ -1157,41 +1150,41 @@ namespace WixToolset.Extensions | |||
1157 | switch (attrib.Name.LocalName) | 1150 | switch (attrib.Name.LocalName) |
1158 | { | 1151 | { |
1159 | case "Id": | 1152 | case "Id": |
1160 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 1153 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
1161 | break; | 1154 | break; |
1162 | case "ApplicationRole": | 1155 | case "ApplicationRole": |
1163 | if (null != applicationRoleKey) | 1156 | if (null != applicationRoleKey) |
1164 | { | 1157 | { |
1165 | this.Core.OnMessage(WixErrors.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); | 1158 | this.Messaging.Write(ErrorMessages.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); |
1166 | } | 1159 | } |
1167 | applicationRoleKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1160 | applicationRoleKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1168 | this.Core.CreateSimpleReference(sourceLineNumbers, "ComPlusApplicationRole", applicationRoleKey); | 1161 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "ComPlusApplicationRole", applicationRoleKey); |
1169 | break; | 1162 | break; |
1170 | case "User": | 1163 | case "User": |
1171 | user = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1164 | user = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1172 | this.Core.CreateSimpleReference(sourceLineNumbers, "User", user); | 1165 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "User", user); |
1173 | break; | 1166 | break; |
1174 | default: | 1167 | default: |
1175 | this.Core.UnexpectedAttribute(node, attrib); | 1168 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
1176 | break; | 1169 | break; |
1177 | } | 1170 | } |
1178 | } | 1171 | } |
1179 | else | 1172 | else |
1180 | { | 1173 | { |
1181 | this.Core.ParseExtensionAttribute(node, attrib); | 1174 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
1182 | } | 1175 | } |
1183 | } | 1176 | } |
1184 | 1177 | ||
1185 | if (null == applicationRoleKey) | 1178 | if (null == applicationRoleKey) |
1186 | { | 1179 | { |
1187 | this.Core.OnMessage(WixErrors.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "ApplicationRole")); | 1180 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "ApplicationRole")); |
1188 | } | 1181 | } |
1189 | 1182 | ||
1190 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusUserInApplicationRole"); | 1183 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusUserInApplicationRole"); |
1191 | row[0] = key; | 1184 | row.Set(0, key); |
1192 | row[1] = applicationRoleKey; | 1185 | row.Set(1, applicationRoleKey); |
1193 | row[2] = componentKey; | 1186 | row.Set(2, componentKey); |
1194 | row[3] = user; | 1187 | row.Set(3, user); |
1195 | } | 1188 | } |
1196 | 1189 | ||
1197 | /// <summary> | 1190 | /// <summary> |
@@ -1200,9 +1193,9 @@ namespace WixToolset.Extensions | |||
1200 | /// <param name="node">Element to parse.</param> | 1193 | /// <param name="node">Element to parse.</param> |
1201 | /// <param name="componentKey">Identifier of parent component.</param> | 1194 | /// <param name="componentKey">Identifier of parent component.</param> |
1202 | /// <param name="applicationKey">Optional identifier of parent application role.</param> | 1195 | /// <param name="applicationKey">Optional identifier of parent application role.</param> |
1203 | private void ParseComPlusGroupInApplicationRoleElement(XElement node, string componentKey, string applicationRoleKey) | 1196 | private void ParseComPlusGroupInApplicationRoleElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string applicationRoleKey) |
1204 | { | 1197 | { |
1205 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 1198 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
1206 | 1199 | ||
1207 | string key = null; | 1200 | string key = null; |
1208 | string group = null; | 1201 | string group = null; |
@@ -1214,41 +1207,41 @@ namespace WixToolset.Extensions | |||
1214 | switch (attrib.Name.LocalName) | 1207 | switch (attrib.Name.LocalName) |
1215 | { | 1208 | { |
1216 | case "Id": | 1209 | case "Id": |
1217 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 1210 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
1218 | break; | 1211 | break; |
1219 | case "ApplicationRole": | 1212 | case "ApplicationRole": |
1220 | if (null != applicationRoleKey) | 1213 | if (null != applicationRoleKey) |
1221 | { | 1214 | { |
1222 | this.Core.OnMessage(WixErrors.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); | 1215 | this.Messaging.Write(ErrorMessages.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); |
1223 | } | 1216 | } |
1224 | applicationRoleKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1217 | applicationRoleKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1225 | this.Core.CreateSimpleReference(sourceLineNumbers, "ComPlusApplicationRole", applicationRoleKey); | 1218 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "ComPlusApplicationRole", applicationRoleKey); |
1226 | break; | 1219 | break; |
1227 | case "Group": | 1220 | case "Group": |
1228 | group = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1221 | group = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1229 | this.Core.CreateSimpleReference(sourceLineNumbers, "Group", group); | 1222 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "Group", group); |
1230 | break; | 1223 | break; |
1231 | default: | 1224 | default: |
1232 | this.Core.UnexpectedAttribute(node, attrib); | 1225 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
1233 | break; | 1226 | break; |
1234 | } | 1227 | } |
1235 | } | 1228 | } |
1236 | else | 1229 | else |
1237 | { | 1230 | { |
1238 | this.Core.ParseExtensionAttribute(node, attrib); | 1231 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
1239 | } | 1232 | } |
1240 | } | 1233 | } |
1241 | 1234 | ||
1242 | if (null == applicationRoleKey) | 1235 | if (null == applicationRoleKey) |
1243 | { | 1236 | { |
1244 | this.Core.OnMessage(WixErrors.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "ApplicationRole")); | 1237 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "ApplicationRole")); |
1245 | } | 1238 | } |
1246 | 1239 | ||
1247 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusGroupInApplicationRole"); | 1240 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusGroupInApplicationRole"); |
1248 | row[0] = key; | 1241 | row.Set(0, key); |
1249 | row[1] = applicationRoleKey; | 1242 | row.Set(1, applicationRoleKey); |
1250 | row[2] = componentKey; | 1243 | row.Set(2, componentKey); |
1251 | row[3] = group; | 1244 | row.Set(3, group); |
1252 | } | 1245 | } |
1253 | 1246 | ||
1254 | /// <summary> | 1247 | /// <summary> |
@@ -1257,9 +1250,9 @@ namespace WixToolset.Extensions | |||
1257 | /// <param name="node">Element to parse.</param> | 1250 | /// <param name="node">Element to parse.</param> |
1258 | /// <param name="componentKey">Identifier of parent component.</param> | 1251 | /// <param name="componentKey">Identifier of parent component.</param> |
1259 | /// <param name="applicationKey">Optional identifier of parent application.</param> | 1252 | /// <param name="applicationKey">Optional identifier of parent application.</param> |
1260 | private void ParseComPlusAssemblyElement(XElement node, string componentKey, bool win64, string applicationKey) | 1253 | private void ParseComPlusAssemblyElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, bool win64, string applicationKey) |
1261 | { | 1254 | { |
1262 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 1255 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
1263 | 1256 | ||
1264 | string key = null; | 1257 | string key = null; |
1265 | string assemblyName = null; | 1258 | string assemblyName = null; |
@@ -1277,30 +1270,30 @@ namespace WixToolset.Extensions | |||
1277 | switch (attrib.Name.LocalName) | 1270 | switch (attrib.Name.LocalName) |
1278 | { | 1271 | { |
1279 | case "Id": | 1272 | case "Id": |
1280 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 1273 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
1281 | break; | 1274 | break; |
1282 | case "Application": | 1275 | case "Application": |
1283 | if (null != applicationKey) | 1276 | if (null != applicationKey) |
1284 | { | 1277 | { |
1285 | this.Core.OnMessage(WixErrors.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); | 1278 | this.Messaging.Write(ErrorMessages.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); |
1286 | } | 1279 | } |
1287 | applicationKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1280 | applicationKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1288 | this.Core.CreateSimpleReference(sourceLineNumbers, "ComPlusApplication", applicationKey); | 1281 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "ComPlusApplication", applicationKey); |
1289 | break; | 1282 | break; |
1290 | case "AssemblyName": | 1283 | case "AssemblyName": |
1291 | assemblyName = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1284 | assemblyName = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1292 | break; | 1285 | break; |
1293 | case "DllPath": | 1286 | case "DllPath": |
1294 | dllPath = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1287 | dllPath = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1295 | break; | 1288 | break; |
1296 | case "TlbPath": | 1289 | case "TlbPath": |
1297 | tlbPath = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1290 | tlbPath = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1298 | break; | 1291 | break; |
1299 | case "PSDllPath": | 1292 | case "PSDllPath": |
1300 | psDllPath = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1293 | psDllPath = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1301 | break; | 1294 | break; |
1302 | case "Type": | 1295 | case "Type": |
1303 | string typeValue = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1296 | string typeValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1304 | switch (typeValue) | 1297 | switch (typeValue) |
1305 | { | 1298 | { |
1306 | case ".net": | 1299 | case ".net": |
@@ -1310,12 +1303,12 @@ namespace WixToolset.Extensions | |||
1310 | attributes &= ~(int)CpiAssemblyAttributes.DotNetAssembly; | 1303 | attributes &= ~(int)CpiAssemblyAttributes.DotNetAssembly; |
1311 | break; | 1304 | break; |
1312 | default: | 1305 | default: |
1313 | this.Core.OnMessage(WixErrors.IllegalAttributeValue(sourceLineNumbers, "ComPlusAssembly", "Type", typeValue, ".net", "native")); | 1306 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, "ComPlusAssembly", "Type", typeValue, ".net", "native")); |
1314 | break; | 1307 | break; |
1315 | } | 1308 | } |
1316 | break; | 1309 | break; |
1317 | case "EventClass": | 1310 | case "EventClass": |
1318 | if (YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib)) | 1311 | if (YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib)) |
1319 | { | 1312 | { |
1320 | attributes |= (int)CpiAssemblyAttributes.EventClass; | 1313 | attributes |= (int)CpiAssemblyAttributes.EventClass; |
1321 | } | 1314 | } |
@@ -1325,7 +1318,7 @@ namespace WixToolset.Extensions | |||
1325 | } | 1318 | } |
1326 | break; | 1319 | break; |
1327 | case "DllPathFromGAC": | 1320 | case "DllPathFromGAC": |
1328 | if (YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib)) | 1321 | if (YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib)) |
1329 | { | 1322 | { |
1330 | attributes |= (int)CpiAssemblyAttributes.DllPathFromGAC; | 1323 | attributes |= (int)CpiAssemblyAttributes.DllPathFromGAC; |
1331 | } | 1324 | } |
@@ -1335,7 +1328,7 @@ namespace WixToolset.Extensions | |||
1335 | } | 1328 | } |
1336 | break; | 1329 | break; |
1337 | case "RegisterInCommit": | 1330 | case "RegisterInCommit": |
1338 | if (YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib)) | 1331 | if (YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib)) |
1339 | { | 1332 | { |
1340 | attributes |= (int)CpiAssemblyAttributes.RegisterInCommit; | 1333 | attributes |= (int)CpiAssemblyAttributes.RegisterInCommit; |
1341 | } | 1334 | } |
@@ -1345,35 +1338,35 @@ namespace WixToolset.Extensions | |||
1345 | } | 1338 | } |
1346 | break; | 1339 | break; |
1347 | default: | 1340 | default: |
1348 | this.Core.UnexpectedAttribute(node, attrib); | 1341 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
1349 | break; | 1342 | break; |
1350 | } | 1343 | } |
1351 | } | 1344 | } |
1352 | else | 1345 | else |
1353 | { | 1346 | { |
1354 | this.Core.ParseExtensionAttribute(node, attrib); | 1347 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
1355 | } | 1348 | } |
1356 | } | 1349 | } |
1357 | 1350 | ||
1358 | if (null == applicationKey && 0 == (attributes & (int)CpiAssemblyAttributes.DotNetAssembly)) | 1351 | if (null == applicationKey && 0 == (attributes & (int)CpiAssemblyAttributes.DotNetAssembly)) |
1359 | { | 1352 | { |
1360 | this.Core.OnMessage(WixErrors.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Application", "Type", "native")); | 1353 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Application", "Type", "native")); |
1361 | } | 1354 | } |
1362 | if (null != assemblyName && 0 == (attributes & (int)CpiAssemblyAttributes.DllPathFromGAC)) | 1355 | if (null != assemblyName && 0 == (attributes & (int)CpiAssemblyAttributes.DllPathFromGAC)) |
1363 | { | 1356 | { |
1364 | this.Core.OnMessage(ComPlusErrors.UnexpectedAttributeWithoutOtherValue(sourceLineNumbers, node.Name.LocalName, "AssemblyName", "DllPathFromGAC", "no")); | 1357 | this.Messaging.Write(ComPlusErrors.UnexpectedAttributeWithoutOtherValue(sourceLineNumbers, node.Name.LocalName, "AssemblyName", "DllPathFromGAC", "no")); |
1365 | } | 1358 | } |
1366 | if (null == tlbPath && 0 != (attributes & (int)CpiAssemblyAttributes.DotNetAssembly)) | 1359 | if (null == tlbPath && 0 != (attributes & (int)CpiAssemblyAttributes.DotNetAssembly)) |
1367 | { | 1360 | { |
1368 | this.Core.OnMessage(WixErrors.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "TlbPath", "Type", ".net")); | 1361 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "TlbPath", "Type", ".net")); |
1369 | } | 1362 | } |
1370 | if (null != psDllPath && 0 != (attributes & (int)CpiAssemblyAttributes.DotNetAssembly)) | 1363 | if (null != psDllPath && 0 != (attributes & (int)CpiAssemblyAttributes.DotNetAssembly)) |
1371 | { | 1364 | { |
1372 | this.Core.OnMessage(ComPlusErrors.UnexpectedAttributeWithOtherValue(sourceLineNumbers, node.Name.LocalName, "PSDllPath", "Type", ".net")); | 1365 | this.Messaging.Write(ComPlusErrors.UnexpectedAttributeWithOtherValue(sourceLineNumbers, node.Name.LocalName, "PSDllPath", "Type", ".net")); |
1373 | } | 1366 | } |
1374 | if (0 != (attributes & (int)CpiAssemblyAttributes.EventClass) && 0 != (attributes & (int)CpiAssemblyAttributes.DotNetAssembly)) | 1367 | if (0 != (attributes & (int)CpiAssemblyAttributes.EventClass) && 0 != (attributes & (int)CpiAssemblyAttributes.DotNetAssembly)) |
1375 | { | 1368 | { |
1376 | this.Core.OnMessage(ComPlusErrors.UnexpectedAttributeWithOtherValue(sourceLineNumbers, node.Name.LocalName, "EventClass", "yes", "Type", ".net")); | 1369 | this.Messaging.Write(ComPlusErrors.UnexpectedAttributeWithOtherValue(sourceLineNumbers, node.Name.LocalName, "EventClass", "yes", "Type", ".net")); |
1377 | } | 1370 | } |
1378 | 1371 | ||
1379 | foreach (XElement child in node.Elements()) | 1372 | foreach (XElement child in node.Elements()) |
@@ -1383,54 +1376,54 @@ namespace WixToolset.Extensions | |||
1383 | switch (child.Name.LocalName) | 1376 | switch (child.Name.LocalName) |
1384 | { | 1377 | { |
1385 | case "ComPlusAssemblyDependency": | 1378 | case "ComPlusAssemblyDependency": |
1386 | this.ParseComPlusAssemblyDependencyElement(child, key); | 1379 | this.ParseComPlusAssemblyDependencyElement(intermediate, section, child, key); |
1387 | break; | 1380 | break; |
1388 | case "ComPlusComponent": | 1381 | case "ComPlusComponent": |
1389 | this.ParseComPlusComponentElement(child, componentKey, key); | 1382 | this.ParseComPlusComponentElement(intermediate, section, child, componentKey, key); |
1390 | hasComponents = true; | 1383 | hasComponents = true; |
1391 | break; | 1384 | break; |
1392 | default: | 1385 | default: |
1393 | this.Core.UnexpectedElement(node, child); | 1386 | this.ParseHelper.UnexpectedElement(node, child); |
1394 | break; | 1387 | break; |
1395 | } | 1388 | } |
1396 | } | 1389 | } |
1397 | else | 1390 | else |
1398 | { | 1391 | { |
1399 | this.Core.ParseExtensionElement(node, child); | 1392 | this.ParseHelper.ParseExtensionElement(this.Context.Extensions, intermediate, section, node, child); |
1400 | } | 1393 | } |
1401 | } | 1394 | } |
1402 | 1395 | ||
1403 | if (0 == (attributes & (int)CpiAssemblyAttributes.DotNetAssembly) && !hasComponents) | 1396 | if (0 == (attributes & (int)CpiAssemblyAttributes.DotNetAssembly) && !hasComponents) |
1404 | { | 1397 | { |
1405 | this.Core.OnMessage(ComPlusWarnings.MissingComponents(sourceLineNumbers)); | 1398 | this.Messaging.Write(ComPlusWarnings.MissingComponents(sourceLineNumbers)); |
1406 | } | 1399 | } |
1407 | 1400 | ||
1408 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusAssembly"); | 1401 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusAssembly"); |
1409 | row[0] = key; | 1402 | row.Set(0, key); |
1410 | row[1] = applicationKey; | 1403 | row.Set(1, applicationKey); |
1411 | row[2] = componentKey; | 1404 | row.Set(2, componentKey); |
1412 | row[3] = assemblyName; | 1405 | row.Set(3, assemblyName); |
1413 | row[4] = dllPath; | 1406 | row.Set(4, dllPath); |
1414 | row[5] = tlbPath; | 1407 | row.Set(5, tlbPath); |
1415 | row[6] = psDllPath; | 1408 | row.Set(6, psDllPath); |
1416 | row[7] = attributes; | 1409 | row.Set(7, attributes); |
1417 | 1410 | ||
1418 | if (win64) | 1411 | if (win64) |
1419 | { | 1412 | { |
1420 | if (this.Core.CurrentPlatform == Platform.IA64) | 1413 | if (this.Context.Platform == Platform.IA64) |
1421 | { | 1414 | { |
1422 | this.Core.OnMessage(WixErrors.UnsupportedPlatformForElement(sourceLineNumbers, "ia64", node.Name.LocalName)); | 1415 | this.Messaging.Write(ErrorMessages.UnsupportedPlatformForElement(sourceLineNumbers, "ia64", node.Name.LocalName)); |
1423 | } | 1416 | } |
1424 | else | 1417 | else |
1425 | { | 1418 | { |
1426 | this.Core.CreateSimpleReference(sourceLineNumbers, "CustomAction", "ConfigureComPlusInstall_x64"); | 1419 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureComPlusInstall_x64"); |
1427 | this.Core.CreateSimpleReference(sourceLineNumbers, "CustomAction", "ConfigureComPlusUninstall_x64"); | 1420 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureComPlusUninstall_x64"); |
1428 | } | 1421 | } |
1429 | } | 1422 | } |
1430 | else | 1423 | else |
1431 | { | 1424 | { |
1432 | this.Core.CreateSimpleReference(sourceLineNumbers, "CustomAction", "ConfigureComPlusInstall"); | 1425 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureComPlusInstall"); |
1433 | this.Core.CreateSimpleReference(sourceLineNumbers, "CustomAction", "ConfigureComPlusUninstall"); | 1426 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureComPlusUninstall"); |
1434 | } | 1427 | } |
1435 | } | 1428 | } |
1436 | 1429 | ||
@@ -1439,9 +1432,9 @@ namespace WixToolset.Extensions | |||
1439 | /// </summary> | 1432 | /// </summary> |
1440 | /// <param name="node">Element to parse.</param> | 1433 | /// <param name="node">Element to parse.</param> |
1441 | /// <param name="assemblyKey">Identifier of parent assembly.</param> | 1434 | /// <param name="assemblyKey">Identifier of parent assembly.</param> |
1442 | private void ParseComPlusAssemblyDependencyElement(XElement node, string assemblyKey) | 1435 | private void ParseComPlusAssemblyDependencyElement(Intermediate intermediate, IntermediateSection section, XElement node, string assemblyKey) |
1443 | { | 1436 | { |
1444 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 1437 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
1445 | 1438 | ||
1446 | string requiredAssemblyKey = null; | 1439 | string requiredAssemblyKey = null; |
1447 | 1440 | ||
@@ -1452,22 +1445,22 @@ namespace WixToolset.Extensions | |||
1452 | switch (attrib.Name.LocalName) | 1445 | switch (attrib.Name.LocalName) |
1453 | { | 1446 | { |
1454 | case "RequiredAssembly": | 1447 | case "RequiredAssembly": |
1455 | requiredAssemblyKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1448 | requiredAssemblyKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1456 | break; | 1449 | break; |
1457 | default: | 1450 | default: |
1458 | this.Core.UnexpectedAttribute(node, attrib); | 1451 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
1459 | break; | 1452 | break; |
1460 | } | 1453 | } |
1461 | } | 1454 | } |
1462 | else | 1455 | else |
1463 | { | 1456 | { |
1464 | this.Core.ParseExtensionAttribute(node, attrib); | 1457 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
1465 | } | 1458 | } |
1466 | } | 1459 | } |
1467 | 1460 | ||
1468 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusAssemblyDependency"); | 1461 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusAssemblyDependency"); |
1469 | row[0] = assemblyKey; | 1462 | row.Set(0, assemblyKey); |
1470 | row[1] = requiredAssemblyKey; | 1463 | row.Set(1, requiredAssemblyKey); |
1471 | } | 1464 | } |
1472 | 1465 | ||
1473 | /// <summary> | 1466 | /// <summary> |
@@ -1476,9 +1469,9 @@ namespace WixToolset.Extensions | |||
1476 | /// <param name="node">Element to parse.</param> | 1469 | /// <param name="node">Element to parse.</param> |
1477 | /// <param name="componentKey">Identifier of parent component.</param> | 1470 | /// <param name="componentKey">Identifier of parent component.</param> |
1478 | /// <param name="assemblyKey">Identifier of parent assembly.</param> | 1471 | /// <param name="assemblyKey">Identifier of parent assembly.</param> |
1479 | private void ParseComPlusComponentElement(XElement node, string componentKey, string assemblyKey) | 1472 | private void ParseComPlusComponentElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string assemblyKey) |
1480 | { | 1473 | { |
1481 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 1474 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
1482 | 1475 | ||
1483 | string key = null; | 1476 | string key = null; |
1484 | string clsid = null; | 1477 | string clsid = null; |
@@ -1492,94 +1485,94 @@ namespace WixToolset.Extensions | |||
1492 | switch (attrib.Name.LocalName) | 1485 | switch (attrib.Name.LocalName) |
1493 | { | 1486 | { |
1494 | case "Id": | 1487 | case "Id": |
1495 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 1488 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
1496 | break; | 1489 | break; |
1497 | case "CLSID": | 1490 | case "CLSID": |
1498 | clsid = "{" + this.Core.GetAttributeValue(sourceLineNumbers, attrib) + "}"; | 1491 | clsid = "{" + this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib) + "}"; |
1499 | break; | 1492 | break; |
1500 | case "AllowInprocSubscribers": | 1493 | case "AllowInprocSubscribers": |
1501 | properties["AllowInprocSubscribers"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1494 | properties["AllowInprocSubscribers"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
1502 | break; | 1495 | break; |
1503 | case "ComponentAccessChecksEnabled": | 1496 | case "ComponentAccessChecksEnabled": |
1504 | properties["ComponentAccessChecksEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1497 | properties["ComponentAccessChecksEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
1505 | break; | 1498 | break; |
1506 | case "ComponentTransactionTimeout": | 1499 | case "ComponentTransactionTimeout": |
1507 | properties["ComponentTransactionTimeout"] = this.Core.GetAttributeIntegerValue(sourceLineNumbers, attrib, 0, 3600).ToString(); | 1500 | properties["ComponentTransactionTimeout"] = this.ParseHelper.GetAttributeIntegerValue(sourceLineNumbers, attrib, 0, 3600).ToString(); |
1508 | break; | 1501 | break; |
1509 | case "ComponentTransactionTimeoutEnabled": | 1502 | case "ComponentTransactionTimeoutEnabled": |
1510 | properties["ComponentTransactionTimeoutEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1503 | properties["ComponentTransactionTimeoutEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
1511 | break; | 1504 | break; |
1512 | case "COMTIIntrinsics": | 1505 | case "COMTIIntrinsics": |
1513 | properties["COMTIIntrinsics"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1506 | properties["COMTIIntrinsics"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
1514 | break; | 1507 | break; |
1515 | case "ConstructionEnabled": | 1508 | case "ConstructionEnabled": |
1516 | properties["ConstructionEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1509 | properties["ConstructionEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
1517 | break; | 1510 | break; |
1518 | case "ConstructorString": | 1511 | case "ConstructorString": |
1519 | properties["ConstructorString"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1512 | properties["ConstructorString"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1520 | break; | 1513 | break; |
1521 | case "CreationTimeout": | 1514 | case "CreationTimeout": |
1522 | properties["CreationTimeout"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1515 | properties["CreationTimeout"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1523 | break; | 1516 | break; |
1524 | case "Description": | 1517 | case "Description": |
1525 | properties["Description"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1518 | properties["Description"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1526 | break; | 1519 | break; |
1527 | case "EventTrackingEnabled": | 1520 | case "EventTrackingEnabled": |
1528 | properties["EventTrackingEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1521 | properties["EventTrackingEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
1529 | break; | 1522 | break; |
1530 | case "ExceptionClass": | 1523 | case "ExceptionClass": |
1531 | properties["ExceptionClass"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1524 | properties["ExceptionClass"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1532 | break; | 1525 | break; |
1533 | case "FireInParallel": | 1526 | case "FireInParallel": |
1534 | properties["FireInParallel"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1527 | properties["FireInParallel"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
1535 | break; | 1528 | break; |
1536 | case "IISIntrinsics": | 1529 | case "IISIntrinsics": |
1537 | properties["IISIntrinsics"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1530 | properties["IISIntrinsics"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
1538 | break; | 1531 | break; |
1539 | case "InitializesServerApplication": | 1532 | case "InitializesServerApplication": |
1540 | properties["InitializesServerApplication"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1533 | properties["InitializesServerApplication"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
1541 | break; | 1534 | break; |
1542 | case "IsEnabled": | 1535 | case "IsEnabled": |
1543 | properties["IsEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1536 | properties["IsEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
1544 | break; | 1537 | break; |
1545 | case "IsPrivateComponent": | 1538 | case "IsPrivateComponent": |
1546 | properties["IsPrivateComponent"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1539 | properties["IsPrivateComponent"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
1547 | break; | 1540 | break; |
1548 | case "JustInTimeActivation": | 1541 | case "JustInTimeActivation": |
1549 | properties["JustInTimeActivation"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1542 | properties["JustInTimeActivation"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
1550 | break; | 1543 | break; |
1551 | case "LoadBalancingSupported": | 1544 | case "LoadBalancingSupported": |
1552 | properties["LoadBalancingSupported"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1545 | properties["LoadBalancingSupported"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
1553 | break; | 1546 | break; |
1554 | case "MaxPoolSize": | 1547 | case "MaxPoolSize": |
1555 | properties["MaxPoolSize"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1548 | properties["MaxPoolSize"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1556 | break; | 1549 | break; |
1557 | case "MinPoolSize": | 1550 | case "MinPoolSize": |
1558 | properties["MinPoolSize"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1551 | properties["MinPoolSize"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1559 | break; | 1552 | break; |
1560 | case "MultiInterfacePublisherFilterCLSID": | 1553 | case "MultiInterfacePublisherFilterCLSID": |
1561 | properties["MultiInterfacePublisherFilterCLSID"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1554 | properties["MultiInterfacePublisherFilterCLSID"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1562 | break; | 1555 | break; |
1563 | case "MustRunInClientContext": | 1556 | case "MustRunInClientContext": |
1564 | properties["MustRunInClientContext"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1557 | properties["MustRunInClientContext"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
1565 | break; | 1558 | break; |
1566 | case "MustRunInDefaultContext": | 1559 | case "MustRunInDefaultContext": |
1567 | properties["MustRunInDefaultContext"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1560 | properties["MustRunInDefaultContext"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
1568 | break; | 1561 | break; |
1569 | case "ObjectPoolingEnabled": | 1562 | case "ObjectPoolingEnabled": |
1570 | properties["ObjectPoolingEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1563 | properties["ObjectPoolingEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
1571 | break; | 1564 | break; |
1572 | case "PublisherID": | 1565 | case "PublisherID": |
1573 | properties["PublisherID"] = TryFormatGuidValue(this.Core.GetAttributeValue(sourceLineNumbers, attrib)); | 1566 | properties["PublisherID"] = this.TryFormatGuidValue(this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib)); |
1574 | break; | 1567 | break; |
1575 | case "SoapAssemblyName": | 1568 | case "SoapAssemblyName": |
1576 | properties["SoapAssemblyName"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1569 | properties["SoapAssemblyName"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1577 | break; | 1570 | break; |
1578 | case "SoapTypeName": | 1571 | case "SoapTypeName": |
1579 | properties["SoapTypeName"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1572 | properties["SoapTypeName"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1580 | break; | 1573 | break; |
1581 | case "Synchronization": | 1574 | case "Synchronization": |
1582 | string synchronizationValue = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1575 | string synchronizationValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1583 | switch (synchronizationValue) | 1576 | switch (synchronizationValue) |
1584 | { | 1577 | { |
1585 | case "ignored": | 1578 | case "ignored": |
@@ -1598,12 +1591,12 @@ namespace WixToolset.Extensions | |||
1598 | properties["Synchronization"] = "4"; | 1591 | properties["Synchronization"] = "4"; |
1599 | break; | 1592 | break; |
1600 | default: | 1593 | default: |
1601 | this.Core.OnMessage(WixErrors.IllegalAttributeValue(sourceLineNumbers, "ComPlusComponent", "Synchronization", synchronizationValue, "ignored", "none", "supported", "required", "requiresNew")); | 1594 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, "ComPlusComponent", "Synchronization", synchronizationValue, "ignored", "none", "supported", "required", "requiresNew")); |
1602 | break; | 1595 | break; |
1603 | } | 1596 | } |
1604 | break; | 1597 | break; |
1605 | case "Transaction": | 1598 | case "Transaction": |
1606 | string transactionValue = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1599 | string transactionValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1607 | switch (transactionValue) | 1600 | switch (transactionValue) |
1608 | { | 1601 | { |
1609 | case "ignored": | 1602 | case "ignored": |
@@ -1622,12 +1615,12 @@ namespace WixToolset.Extensions | |||
1622 | properties["Transaction"] = "4"; | 1615 | properties["Transaction"] = "4"; |
1623 | break; | 1616 | break; |
1624 | default: | 1617 | default: |
1625 | this.Core.OnMessage(WixErrors.IllegalAttributeValue(sourceLineNumbers, "ComPlusComponent", "Transaction", transactionValue, "ignored", "none", "supported", "required", "requiresNew")); | 1618 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, "ComPlusComponent", "Transaction", transactionValue, "ignored", "none", "supported", "required", "requiresNew")); |
1626 | break; | 1619 | break; |
1627 | } | 1620 | } |
1628 | break; | 1621 | break; |
1629 | case "TxIsolationLevel": | 1622 | case "TxIsolationLevel": |
1630 | string txIsolationLevelValue = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1623 | string txIsolationLevelValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1631 | switch (txIsolationLevelValue) | 1624 | switch (txIsolationLevelValue) |
1632 | { | 1625 | { |
1633 | case "any": | 1626 | case "any": |
@@ -1646,18 +1639,18 @@ namespace WixToolset.Extensions | |||
1646 | properties["TxIsolationLevel"] = "4"; | 1639 | properties["TxIsolationLevel"] = "4"; |
1647 | break; | 1640 | break; |
1648 | default: | 1641 | default: |
1649 | this.Core.OnMessage(WixErrors.IllegalAttributeValue(sourceLineNumbers, "ComPlusComponent", "TxIsolationLevel", txIsolationLevelValue, "any", "readUnCommitted", "readCommitted", "repeatableRead", "serializable")); | 1642 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, "ComPlusComponent", "TxIsolationLevel", txIsolationLevelValue, "any", "readUnCommitted", "readCommitted", "repeatableRead", "serializable")); |
1650 | break; | 1643 | break; |
1651 | } | 1644 | } |
1652 | break; | 1645 | break; |
1653 | default: | 1646 | default: |
1654 | this.Core.UnexpectedAttribute(node, attrib); | 1647 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
1655 | break; | 1648 | break; |
1656 | } | 1649 | } |
1657 | } | 1650 | } |
1658 | else | 1651 | else |
1659 | { | 1652 | { |
1660 | this.Core.ParseExtensionAttribute(node, attrib); | 1653 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
1661 | } | 1654 | } |
1662 | } | 1655 | } |
1663 | 1656 | ||
@@ -1668,37 +1661,37 @@ namespace WixToolset.Extensions | |||
1668 | switch (child.Name.LocalName) | 1661 | switch (child.Name.LocalName) |
1669 | { | 1662 | { |
1670 | case "ComPlusRoleForComponent": | 1663 | case "ComPlusRoleForComponent": |
1671 | this.ParseComPlusRoleForComponentElement(child, componentKey, key); | 1664 | this.ParseComPlusRoleForComponentElement(intermediate, section, child, componentKey, key); |
1672 | break; | 1665 | break; |
1673 | case "ComPlusInterface": | 1666 | case "ComPlusInterface": |
1674 | this.ParseComPlusInterfaceElement(child, componentKey, key); | 1667 | this.ParseComPlusInterfaceElement(intermediate, section, child, componentKey, key); |
1675 | break; | 1668 | break; |
1676 | case "ComPlusSubscription": | 1669 | case "ComPlusSubscription": |
1677 | this.ParseComPlusSubscriptionElement(child, componentKey, key); | 1670 | this.ParseComPlusSubscriptionElement(intermediate, section, child, componentKey, key); |
1678 | break; | 1671 | break; |
1679 | default: | 1672 | default: |
1680 | this.Core.UnexpectedElement(node, child); | 1673 | this.ParseHelper.UnexpectedElement(node, child); |
1681 | break; | 1674 | break; |
1682 | } | 1675 | } |
1683 | } | 1676 | } |
1684 | else | 1677 | else |
1685 | { | 1678 | { |
1686 | this.Core.ParseExtensionElement(node, child); | 1679 | this.ParseHelper.ParseExtensionElement(this.Context.Extensions, intermediate, section, node, child); |
1687 | } | 1680 | } |
1688 | } | 1681 | } |
1689 | 1682 | ||
1690 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusComponent"); | 1683 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusComponent"); |
1691 | row[0] = key; | 1684 | row.Set(0, key); |
1692 | row[1] = assemblyKey; | 1685 | row.Set(1, assemblyKey); |
1693 | row[2] = clsid; | 1686 | row.Set(2, clsid); |
1694 | 1687 | ||
1695 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); | 1688 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); |
1696 | while (propertiesEnumerator.MoveNext()) | 1689 | while (propertiesEnumerator.MoveNext()) |
1697 | { | 1690 | { |
1698 | Row propertyRow = this.Core.CreateRow(sourceLineNumbers, "ComPlusComponentProperty"); | 1691 | var propertyRow = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusComponentProperty"); |
1699 | propertyRow[0] = key; | 1692 | propertyRow.Set(0, key); |
1700 | propertyRow[1] = (string)propertiesEnumerator.Key; | 1693 | propertyRow.Set(1, (string)propertiesEnumerator.Key); |
1701 | propertyRow[2] = (string)propertiesEnumerator.Value; | 1694 | propertyRow.Set(2, (string)propertiesEnumerator.Value); |
1702 | } | 1695 | } |
1703 | } | 1696 | } |
1704 | 1697 | ||
@@ -1708,9 +1701,9 @@ namespace WixToolset.Extensions | |||
1708 | /// <param name="node">Element to parse.</param> | 1701 | /// <param name="node">Element to parse.</param> |
1709 | /// <param name="componentKey">Identifier of parent component.</param> | 1702 | /// <param name="componentKey">Identifier of parent component.</param> |
1710 | /// <param name="cpcomponentKey">Identifier of parent COM+ component.</param> | 1703 | /// <param name="cpcomponentKey">Identifier of parent COM+ component.</param> |
1711 | private void ParseComPlusRoleForComponentElement(XElement node, string componentKey, string cpcomponentKey) | 1704 | private void ParseComPlusRoleForComponentElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string cpcomponentKey) |
1712 | { | 1705 | { |
1713 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 1706 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
1714 | 1707 | ||
1715 | string key = null; | 1708 | string key = null; |
1716 | string applicationRoleKey = null; | 1709 | string applicationRoleKey = null; |
@@ -1722,40 +1715,40 @@ namespace WixToolset.Extensions | |||
1722 | switch (attrib.Name.LocalName) | 1715 | switch (attrib.Name.LocalName) |
1723 | { | 1716 | { |
1724 | case "Id": | 1717 | case "Id": |
1725 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 1718 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
1726 | break; | 1719 | break; |
1727 | case "Component": | 1720 | case "Component": |
1728 | if (null != cpcomponentKey) | 1721 | if (null != cpcomponentKey) |
1729 | { | 1722 | { |
1730 | this.Core.OnMessage(WixErrors.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); | 1723 | this.Messaging.Write(ErrorMessages.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); |
1731 | } | 1724 | } |
1732 | cpcomponentKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1725 | cpcomponentKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1733 | this.Core.CreateSimpleReference(sourceLineNumbers, "ComPlusComponent", cpcomponentKey); | 1726 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "ComPlusComponent", cpcomponentKey); |
1734 | break; | 1727 | break; |
1735 | case "ApplicationRole": | 1728 | case "ApplicationRole": |
1736 | applicationRoleKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1729 | applicationRoleKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1737 | break; | 1730 | break; |
1738 | default: | 1731 | default: |
1739 | this.Core.UnexpectedAttribute(node, attrib); | 1732 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
1740 | break; | 1733 | break; |
1741 | } | 1734 | } |
1742 | } | 1735 | } |
1743 | else | 1736 | else |
1744 | { | 1737 | { |
1745 | this.Core.ParseExtensionAttribute(node, attrib); | 1738 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
1746 | } | 1739 | } |
1747 | } | 1740 | } |
1748 | 1741 | ||
1749 | if (null == cpcomponentKey) | 1742 | if (null == cpcomponentKey) |
1750 | { | 1743 | { |
1751 | this.Core.OnMessage(WixErrors.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Component")); | 1744 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Component")); |
1752 | } | 1745 | } |
1753 | 1746 | ||
1754 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusRoleForComponent"); | 1747 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusRoleForComponent"); |
1755 | row[0] = key; | 1748 | row.Set(0, key); |
1756 | row[1] = cpcomponentKey; | 1749 | row.Set(1, cpcomponentKey); |
1757 | row[2] = applicationRoleKey; | 1750 | row.Set(2, applicationRoleKey); |
1758 | row[3] = componentKey; | 1751 | row.Set(3, componentKey); |
1759 | } | 1752 | } |
1760 | 1753 | ||
1761 | /// <summary> | 1754 | /// <summary> |
@@ -1764,9 +1757,9 @@ namespace WixToolset.Extensions | |||
1764 | /// <param name="node">Element to parse.</param> | 1757 | /// <param name="node">Element to parse.</param> |
1765 | /// <param name="componentKey">Identifier of parent component.</param> | 1758 | /// <param name="componentKey">Identifier of parent component.</param> |
1766 | /// <param name="cpcomponentKey">Identifier of parent COM+ component.</param> | 1759 | /// <param name="cpcomponentKey">Identifier of parent COM+ component.</param> |
1767 | private void ParseComPlusInterfaceElement(XElement node, string componentKey, string cpcomponentKey) | 1760 | private void ParseComPlusInterfaceElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string cpcomponentKey) |
1768 | { | 1761 | { |
1769 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 1762 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
1770 | 1763 | ||
1771 | // parse attributes | 1764 | // parse attributes |
1772 | string key = null; | 1765 | string key = null; |
@@ -1781,25 +1774,25 @@ namespace WixToolset.Extensions | |||
1781 | switch (attrib.Name.LocalName) | 1774 | switch (attrib.Name.LocalName) |
1782 | { | 1775 | { |
1783 | case "Id": | 1776 | case "Id": |
1784 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 1777 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
1785 | break; | 1778 | break; |
1786 | case "IID": | 1779 | case "IID": |
1787 | iid = "{" + this.Core.GetAttributeValue(sourceLineNumbers, attrib) + "}"; | 1780 | iid = "{" + this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib) + "}"; |
1788 | break; | 1781 | break; |
1789 | case "Description": | 1782 | case "Description": |
1790 | properties["Description"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1783 | properties["Description"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1791 | break; | 1784 | break; |
1792 | case "QueuingEnabled": | 1785 | case "QueuingEnabled": |
1793 | properties["QueuingEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1786 | properties["QueuingEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
1794 | break; | 1787 | break; |
1795 | default: | 1788 | default: |
1796 | this.Core.UnexpectedAttribute(node, attrib); | 1789 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
1797 | break; | 1790 | break; |
1798 | } | 1791 | } |
1799 | } | 1792 | } |
1800 | else | 1793 | else |
1801 | { | 1794 | { |
1802 | this.Core.ParseExtensionAttribute(node, attrib); | 1795 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
1803 | } | 1796 | } |
1804 | } | 1797 | } |
1805 | 1798 | ||
@@ -1810,34 +1803,34 @@ namespace WixToolset.Extensions | |||
1810 | switch (child.Name.LocalName) | 1803 | switch (child.Name.LocalName) |
1811 | { | 1804 | { |
1812 | case "ComPlusRoleForInterface": | 1805 | case "ComPlusRoleForInterface": |
1813 | this.ParseComPlusRoleForInterfaceElement(child, componentKey, key); | 1806 | this.ParseComPlusRoleForInterfaceElement(intermediate, section, child, componentKey, key); |
1814 | break; | 1807 | break; |
1815 | case "ComPlusMethod": | 1808 | case "ComPlusMethod": |
1816 | this.ParseComPlusMethodElement(child, componentKey, key); | 1809 | this.ParseComPlusMethodElement(intermediate, section, child, componentKey, key); |
1817 | break; | 1810 | break; |
1818 | default: | 1811 | default: |
1819 | this.Core.UnexpectedElement(node, child); | 1812 | this.ParseHelper.UnexpectedElement(node, child); |
1820 | break; | 1813 | break; |
1821 | } | 1814 | } |
1822 | } | 1815 | } |
1823 | else | 1816 | else |
1824 | { | 1817 | { |
1825 | this.Core.ParseExtensionElement(node, child); | 1818 | this.ParseHelper.ParseExtensionElement(this.Context.Extensions, intermediate, section, node, child); |
1826 | } | 1819 | } |
1827 | } | 1820 | } |
1828 | 1821 | ||
1829 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusInterface"); | 1822 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusInterface"); |
1830 | row[0] = key; | 1823 | row.Set(0, key); |
1831 | row[1] = cpcomponentKey; | 1824 | row.Set(1, cpcomponentKey); |
1832 | row[2] = iid; | 1825 | row.Set(2, iid); |
1833 | 1826 | ||
1834 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); | 1827 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); |
1835 | while (propertiesEnumerator.MoveNext()) | 1828 | while (propertiesEnumerator.MoveNext()) |
1836 | { | 1829 | { |
1837 | Row propertyRow = this.Core.CreateRow(sourceLineNumbers, "ComPlusInterfaceProperty"); | 1830 | var propertyRow = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusInterfaceProperty"); |
1838 | propertyRow[0] = key; | 1831 | propertyRow.Set(0, key); |
1839 | propertyRow[1] = (string)propertiesEnumerator.Key; | 1832 | propertyRow.Set(1, (string)propertiesEnumerator.Key); |
1840 | propertyRow[2] = (string)propertiesEnumerator.Value; | 1833 | propertyRow.Set(2, (string)propertiesEnumerator.Value); |
1841 | } | 1834 | } |
1842 | } | 1835 | } |
1843 | 1836 | ||
@@ -1847,9 +1840,9 @@ namespace WixToolset.Extensions | |||
1847 | /// <param name="node">Element to parse.</param> | 1840 | /// <param name="node">Element to parse.</param> |
1848 | /// <param name="componentKey">Identifier of parent component.</param> | 1841 | /// <param name="componentKey">Identifier of parent component.</param> |
1849 | /// <param name="interfaceKey">Identifier of parent interface.</param> | 1842 | /// <param name="interfaceKey">Identifier of parent interface.</param> |
1850 | private void ParseComPlusRoleForInterfaceElement(XElement node, string componentKey, string interfaceKey) | 1843 | private void ParseComPlusRoleForInterfaceElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string interfaceKey) |
1851 | { | 1844 | { |
1852 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 1845 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
1853 | 1846 | ||
1854 | string key = null; | 1847 | string key = null; |
1855 | string applicationRoleKey = null; | 1848 | string applicationRoleKey = null; |
@@ -1861,40 +1854,40 @@ namespace WixToolset.Extensions | |||
1861 | switch (attrib.Name.LocalName) | 1854 | switch (attrib.Name.LocalName) |
1862 | { | 1855 | { |
1863 | case "Id": | 1856 | case "Id": |
1864 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 1857 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
1865 | break; | 1858 | break; |
1866 | case "Interface": | 1859 | case "Interface": |
1867 | if (null != interfaceKey) | 1860 | if (null != interfaceKey) |
1868 | { | 1861 | { |
1869 | this.Core.OnMessage(WixErrors.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); | 1862 | this.Messaging.Write(ErrorMessages.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); |
1870 | } | 1863 | } |
1871 | interfaceKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1864 | interfaceKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1872 | this.Core.CreateSimpleReference(sourceLineNumbers, "ComPlusInterface", interfaceKey); | 1865 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "ComPlusInterface", interfaceKey); |
1873 | break; | 1866 | break; |
1874 | case "ApplicationRole": | 1867 | case "ApplicationRole": |
1875 | applicationRoleKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1868 | applicationRoleKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1876 | break; | 1869 | break; |
1877 | default: | 1870 | default: |
1878 | this.Core.UnexpectedAttribute(node, attrib); | 1871 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
1879 | break; | 1872 | break; |
1880 | } | 1873 | } |
1881 | } | 1874 | } |
1882 | else | 1875 | else |
1883 | { | 1876 | { |
1884 | this.Core.ParseExtensionAttribute(node, attrib); | 1877 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
1885 | } | 1878 | } |
1886 | } | 1879 | } |
1887 | 1880 | ||
1888 | if (null == interfaceKey) | 1881 | if (null == interfaceKey) |
1889 | { | 1882 | { |
1890 | this.Core.OnMessage(WixErrors.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Interface")); | 1883 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Interface")); |
1891 | } | 1884 | } |
1892 | 1885 | ||
1893 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusRoleForInterface"); | 1886 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusRoleForInterface"); |
1894 | row[0] = key; | 1887 | row.Set(0, key); |
1895 | row[1] = interfaceKey; | 1888 | row.Set(1, interfaceKey); |
1896 | row[2] = applicationRoleKey; | 1889 | row.Set(2, applicationRoleKey); |
1897 | row[3] = componentKey; | 1890 | row.Set(3, componentKey); |
1898 | } | 1891 | } |
1899 | 1892 | ||
1900 | /// <summary> | 1893 | /// <summary> |
@@ -1903,9 +1896,9 @@ namespace WixToolset.Extensions | |||
1903 | /// <param name="node">Element to parse.</param> | 1896 | /// <param name="node">Element to parse.</param> |
1904 | /// <param name="componentKey">Identifier of parent component.</param> | 1897 | /// <param name="componentKey">Identifier of parent component.</param> |
1905 | /// <param name="interfaceKey">Identifier of parent interface.</param> | 1898 | /// <param name="interfaceKey">Identifier of parent interface.</param> |
1906 | private void ParseComPlusMethodElement(XElement node, string componentKey, string interfaceKey) | 1899 | private void ParseComPlusMethodElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string interfaceKey) |
1907 | { | 1900 | { |
1908 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 1901 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
1909 | 1902 | ||
1910 | string key = null; | 1903 | string key = null; |
1911 | int index = CompilerConstants.IntegerNotSet; | 1904 | int index = CompilerConstants.IntegerNotSet; |
@@ -1920,28 +1913,28 @@ namespace WixToolset.Extensions | |||
1920 | switch (attrib.Name.LocalName) | 1913 | switch (attrib.Name.LocalName) |
1921 | { | 1914 | { |
1922 | case "Id": | 1915 | case "Id": |
1923 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 1916 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
1924 | break; | 1917 | break; |
1925 | case "Index": | 1918 | case "Index": |
1926 | index = this.Core.GetAttributeIntegerValue(sourceLineNumbers, attrib, 0, int.MaxValue); | 1919 | index = this.ParseHelper.GetAttributeIntegerValue(sourceLineNumbers, attrib, 0, int.MaxValue); |
1927 | break; | 1920 | break; |
1928 | case "Name": | 1921 | case "Name": |
1929 | name = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1922 | name = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1930 | break; | 1923 | break; |
1931 | case "AutoComplete": | 1924 | case "AutoComplete": |
1932 | properties["AutoComplete"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1925 | properties["AutoComplete"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
1933 | break; | 1926 | break; |
1934 | case "Description": | 1927 | case "Description": |
1935 | properties["Description"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1928 | properties["Description"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1936 | break; | 1929 | break; |
1937 | default: | 1930 | default: |
1938 | this.Core.UnexpectedAttribute(node, attrib); | 1931 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
1939 | break; | 1932 | break; |
1940 | } | 1933 | } |
1941 | } | 1934 | } |
1942 | else | 1935 | else |
1943 | { | 1936 | { |
1944 | this.Core.ParseExtensionAttribute(node, attrib); | 1937 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
1945 | } | 1938 | } |
1946 | } | 1939 | } |
1947 | 1940 | ||
@@ -1952,40 +1945,40 @@ namespace WixToolset.Extensions | |||
1952 | switch (child.Name.LocalName) | 1945 | switch (child.Name.LocalName) |
1953 | { | 1946 | { |
1954 | case "ComPlusRoleForMethod": | 1947 | case "ComPlusRoleForMethod": |
1955 | this.ParseComPlusRoleForMethodElement(child, componentKey, key); | 1948 | this.ParseComPlusRoleForMethodElement(intermediate, section, child, componentKey, key); |
1956 | break; | 1949 | break; |
1957 | default: | 1950 | default: |
1958 | this.Core.UnexpectedElement(node, child); | 1951 | this.ParseHelper.UnexpectedElement(node, child); |
1959 | break; | 1952 | break; |
1960 | } | 1953 | } |
1961 | } | 1954 | } |
1962 | else | 1955 | else |
1963 | { | 1956 | { |
1964 | this.Core.ParseExtensionElement(node, child); | 1957 | this.ParseHelper.ParseExtensionElement(this.Context.Extensions, intermediate, section, node, child); |
1965 | } | 1958 | } |
1966 | } | 1959 | } |
1967 | 1960 | ||
1968 | if (CompilerConstants.IntegerNotSet == index && null == name) | 1961 | if (CompilerConstants.IntegerNotSet == index && null == name) |
1969 | { | 1962 | { |
1970 | this.Core.OnMessage(ComPlusErrors.RequiredAttribute(sourceLineNumbers, node.Name.LocalName, "Index", "Name")); | 1963 | this.Messaging.Write(ComPlusErrors.RequiredAttribute(sourceLineNumbers, node.Name.LocalName, "Index", "Name")); |
1971 | } | 1964 | } |
1972 | 1965 | ||
1973 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusMethod"); | 1966 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusMethod"); |
1974 | row[0] = key; | 1967 | row.Set(0, key); |
1975 | row[1] = interfaceKey; | 1968 | row.Set(1, interfaceKey); |
1976 | if (CompilerConstants.IntegerNotSet != index) | 1969 | if (CompilerConstants.IntegerNotSet != index) |
1977 | { | 1970 | { |
1978 | row[2] = index; | 1971 | row.Set(2, index); |
1979 | } | 1972 | } |
1980 | row[3] = name; | 1973 | row.Set(3, name); |
1981 | 1974 | ||
1982 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); | 1975 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); |
1983 | while (propertiesEnumerator.MoveNext()) | 1976 | while (propertiesEnumerator.MoveNext()) |
1984 | { | 1977 | { |
1985 | Row propertyRow = this.Core.CreateRow(sourceLineNumbers, "ComPlusMethodProperty"); | 1978 | var propertyRow = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusMethodProperty"); |
1986 | propertyRow[0] = key; | 1979 | propertyRow.Set(0, key); |
1987 | propertyRow[1] = (string)propertiesEnumerator.Key; | 1980 | propertyRow.Set(1, (string)propertiesEnumerator.Key); |
1988 | propertyRow[2] = (string)propertiesEnumerator.Value; | 1981 | propertyRow.Set(2, (string)propertiesEnumerator.Value); |
1989 | } | 1982 | } |
1990 | } | 1983 | } |
1991 | 1984 | ||
@@ -1995,9 +1988,9 @@ namespace WixToolset.Extensions | |||
1995 | /// <param name="node">Element to parse.</param> | 1988 | /// <param name="node">Element to parse.</param> |
1996 | /// <param name="componentKey">Identifier of parent component.</param> | 1989 | /// <param name="componentKey">Identifier of parent component.</param> |
1997 | /// <param name="methodKey">Identifier of parent method.</param> | 1990 | /// <param name="methodKey">Identifier of parent method.</param> |
1998 | private void ParseComPlusRoleForMethodElement(XElement node, string componentKey, string methodKey) | 1991 | private void ParseComPlusRoleForMethodElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string methodKey) |
1999 | { | 1992 | { |
2000 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 1993 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
2001 | 1994 | ||
2002 | string key = null; | 1995 | string key = null; |
2003 | string applicationRoleKey = null; | 1996 | string applicationRoleKey = null; |
@@ -2009,40 +2002,40 @@ namespace WixToolset.Extensions | |||
2009 | switch (attrib.Name.LocalName) | 2002 | switch (attrib.Name.LocalName) |
2010 | { | 2003 | { |
2011 | case "Id": | 2004 | case "Id": |
2012 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 2005 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
2013 | break; | 2006 | break; |
2014 | case "Method": | 2007 | case "Method": |
2015 | if (null != methodKey) | 2008 | if (null != methodKey) |
2016 | { | 2009 | { |
2017 | this.Core.OnMessage(WixErrors.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); | 2010 | this.Messaging.Write(ErrorMessages.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); |
2018 | } | 2011 | } |
2019 | methodKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 2012 | methodKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
2020 | this.Core.CreateSimpleReference(sourceLineNumbers, "ComPlusMethod", methodKey); | 2013 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "ComPlusMethod", methodKey); |
2021 | break; | 2014 | break; |
2022 | case "ApplicationRole": | 2015 | case "ApplicationRole": |
2023 | applicationRoleKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 2016 | applicationRoleKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
2024 | break; | 2017 | break; |
2025 | default: | 2018 | default: |
2026 | this.Core.UnexpectedAttribute(node, attrib); | 2019 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
2027 | break; | 2020 | break; |
2028 | } | 2021 | } |
2029 | } | 2022 | } |
2030 | else | 2023 | else |
2031 | { | 2024 | { |
2032 | this.Core.ParseExtensionAttribute(node, attrib); | 2025 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
2033 | } | 2026 | } |
2034 | } | 2027 | } |
2035 | 2028 | ||
2036 | if (null == methodKey) | 2029 | if (null == methodKey) |
2037 | { | 2030 | { |
2038 | this.Core.OnMessage(WixErrors.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Method")); | 2031 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Method")); |
2039 | } | 2032 | } |
2040 | 2033 | ||
2041 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusRoleForMethod"); | 2034 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusRoleForMethod"); |
2042 | row[0] = key; | 2035 | row.Set(0, key); |
2043 | row[1] = methodKey; | 2036 | row.Set(1, methodKey); |
2044 | row[2] = applicationRoleKey; | 2037 | row.Set(2, applicationRoleKey); |
2045 | row[3] = componentKey; | 2038 | row.Set(3, componentKey); |
2046 | } | 2039 | } |
2047 | 2040 | ||
2048 | /// <summary> | 2041 | /// <summary> |
@@ -2051,9 +2044,9 @@ namespace WixToolset.Extensions | |||
2051 | /// <param name="node">Element to parse.</param> | 2044 | /// <param name="node">Element to parse.</param> |
2052 | /// <param name="componentKey">Identifier of parent component.</param> | 2045 | /// <param name="componentKey">Identifier of parent component.</param> |
2053 | /// <param name="cpcomponentKey">Identifier of parent COM+ component.</param> | 2046 | /// <param name="cpcomponentKey">Identifier of parent COM+ component.</param> |
2054 | private void ParseComPlusSubscriptionElement(XElement node, string componentKey, string cpcomponentKey) | 2047 | private void ParseComPlusSubscriptionElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string cpcomponentKey) |
2055 | { | 2048 | { |
2056 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 2049 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
2057 | 2050 | ||
2058 | string key = null; | 2051 | string key = null; |
2059 | string id = null; | 2052 | string id = null; |
@@ -2070,95 +2063,95 @@ namespace WixToolset.Extensions | |||
2070 | switch (attrib.Name.LocalName) | 2063 | switch (attrib.Name.LocalName) |
2071 | { | 2064 | { |
2072 | case "Id": | 2065 | case "Id": |
2073 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 2066 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
2074 | break; | 2067 | break; |
2075 | case "Component": | 2068 | case "Component": |
2076 | if (null != cpcomponentKey) | 2069 | if (null != cpcomponentKey) |
2077 | { | 2070 | { |
2078 | this.Core.OnMessage(WixErrors.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); | 2071 | this.Messaging.Write(ErrorMessages.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); |
2079 | } | 2072 | } |
2080 | cpcomponentKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 2073 | cpcomponentKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
2081 | this.Core.CreateSimpleReference(sourceLineNumbers, "ComPlusComponent", cpcomponentKey); | 2074 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "ComPlusComponent", cpcomponentKey); |
2082 | break; | 2075 | break; |
2083 | case "SubscriptionId": | 2076 | case "SubscriptionId": |
2084 | id = TryFormatGuidValue(this.Core.GetAttributeValue(sourceLineNumbers, attrib)); | 2077 | id = this.TryFormatGuidValue(this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib)); |
2085 | break; | 2078 | break; |
2086 | case "Name": | 2079 | case "Name": |
2087 | name = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 2080 | name = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
2088 | break; | 2081 | break; |
2089 | case "EventCLSID": | 2082 | case "EventCLSID": |
2090 | eventCLSID = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 2083 | eventCLSID = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
2091 | break; | 2084 | break; |
2092 | case "PublisherID": | 2085 | case "PublisherID": |
2093 | publisherID = TryFormatGuidValue(this.Core.GetAttributeValue(sourceLineNumbers, attrib)); | 2086 | publisherID = this.TryFormatGuidValue(this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib)); |
2094 | break; | 2087 | break; |
2095 | case "Description": | 2088 | case "Description": |
2096 | properties["Description"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 2089 | properties["Description"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
2097 | break; | 2090 | break; |
2098 | case "Enabled": | 2091 | case "Enabled": |
2099 | properties["Enabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 2092 | properties["Enabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
2100 | break; | 2093 | break; |
2101 | case "EventClassPartitionID": | 2094 | case "EventClassPartitionID": |
2102 | properties["EventClassPartitionID"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 2095 | properties["EventClassPartitionID"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
2103 | break; | 2096 | break; |
2104 | case "FilterCriteria": | 2097 | case "FilterCriteria": |
2105 | properties["FilterCriteria"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 2098 | properties["FilterCriteria"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
2106 | break; | 2099 | break; |
2107 | case "InterfaceID": | 2100 | case "InterfaceID": |
2108 | properties["InterfaceID"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 2101 | properties["InterfaceID"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
2109 | break; | 2102 | break; |
2110 | case "MachineName": | 2103 | case "MachineName": |
2111 | properties["MachineName"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 2104 | properties["MachineName"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
2112 | break; | 2105 | break; |
2113 | case "MethodName": | 2106 | case "MethodName": |
2114 | properties["MethodName"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 2107 | properties["MethodName"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
2115 | break; | 2108 | break; |
2116 | case "PerUser": | 2109 | case "PerUser": |
2117 | properties["PerUser"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 2110 | properties["PerUser"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
2118 | break; | 2111 | break; |
2119 | case "Queued": | 2112 | case "Queued": |
2120 | properties["Queued"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 2113 | properties["Queued"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
2121 | break; | 2114 | break; |
2122 | case "SubscriberMoniker": | 2115 | case "SubscriberMoniker": |
2123 | properties["SubscriberMoniker"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 2116 | properties["SubscriberMoniker"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
2124 | break; | 2117 | break; |
2125 | case "UserName": | 2118 | case "UserName": |
2126 | properties["UserName"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 2119 | properties["UserName"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
2127 | break; | 2120 | break; |
2128 | default: | 2121 | default: |
2129 | this.Core.UnexpectedAttribute(node, attrib); | 2122 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
2130 | break; | 2123 | break; |
2131 | } | 2124 | } |
2132 | } | 2125 | } |
2133 | else | 2126 | else |
2134 | { | 2127 | { |
2135 | this.Core.ParseExtensionAttribute(node, attrib); | 2128 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
2136 | } | 2129 | } |
2137 | } | 2130 | } |
2138 | 2131 | ||
2139 | if (null == cpcomponentKey) | 2132 | if (null == cpcomponentKey) |
2140 | { | 2133 | { |
2141 | this.Core.OnMessage(WixErrors.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Component")); | 2134 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Component")); |
2142 | } | 2135 | } |
2143 | 2136 | ||
2144 | this.Core.ParseForExtensionElements(node); | 2137 | this.ParseHelper.ParseForExtensionElements(this.Context.Extensions, intermediate, section, node); |
2145 | 2138 | ||
2146 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusSubscription"); | 2139 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusSubscription"); |
2147 | row[0] = key; | 2140 | row.Set(0, key); |
2148 | row[1] = cpcomponentKey; | 2141 | row.Set(1, cpcomponentKey); |
2149 | row[2] = componentKey; | 2142 | row.Set(2, componentKey); |
2150 | row[3] = id; | 2143 | row.Set(3, id); |
2151 | row[4] = name; | 2144 | row.Set(4, name); |
2152 | row[5] = eventCLSID; | 2145 | row.Set(5, eventCLSID); |
2153 | row[6] = publisherID; | 2146 | row.Set(6, publisherID); |
2154 | 2147 | ||
2155 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); | 2148 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); |
2156 | while (propertiesEnumerator.MoveNext()) | 2149 | while (propertiesEnumerator.MoveNext()) |
2157 | { | 2150 | { |
2158 | Row propertyRow = this.Core.CreateRow(sourceLineNumbers, "ComPlusSubscriptionProperty"); | 2151 | var propertyRow = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusSubscriptionProperty"); |
2159 | propertyRow[0] = key; | 2152 | propertyRow.Set(0, key); |
2160 | propertyRow[1] = (string)propertiesEnumerator.Key; | 2153 | propertyRow.Set(1, (string)propertiesEnumerator.Key); |
2161 | propertyRow[2] = (string)propertiesEnumerator.Value; | 2154 | propertyRow.Set(2, (string)propertiesEnumerator.Value); |
2162 | } | 2155 | } |
2163 | } | 2156 | } |
2164 | 2157 | ||
diff --git a/src/wixext/ComPlusDecompiler.cs b/src/wixext/ComPlusDecompiler.cs index 27f1653e..6da2df94 100644 --- a/src/wixext/ComPlusDecompiler.cs +++ b/src/wixext/ComPlusDecompiler.cs | |||
@@ -1,7 +1,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. | 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 | 2 | ||
3 | namespace WixToolset.Extensions | 3 | namespace WixToolset.ComPlus |
4 | { | 4 | { |
5 | #if TODO_CONSIDER_DECOMPILER | ||
5 | using System; | 6 | using System; |
6 | using System.Collections; | 7 | using System.Collections; |
7 | using System.Globalization; | 8 | using System.Globalization; |
@@ -1840,4 +1841,5 @@ namespace WixToolset.Extensions | |||
1840 | } | 1841 | } |
1841 | } | 1842 | } |
1842 | } | 1843 | } |
1844 | #endif | ||
1843 | } | 1845 | } |
diff --git a/src/wixext/ComPlusErrors.cs b/src/wixext/ComPlusErrors.cs new file mode 100644 index 00000000..91b41679 --- /dev/null +++ b/src/wixext/ComPlusErrors.cs | |||
@@ -0,0 +1,72 @@ | |||
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 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using System; | ||
6 | using System.Resources; | ||
7 | using WixToolset.Data; | ||
8 | |||
9 | public static class ComPlusErrors | ||
10 | { | ||
11 | public static Message IllegalAttributeWithoutComponent(SourceLineNumber sourceLineNumbers, string elementName, string attributeName) | ||
12 | { | ||
13 | return Message(sourceLineNumbers, Ids.IllegalAttributeWithoutComponent, "The {0}/@{1} attribute cannot be specified unless the element has a component as an ancestor. A {0} that does not have a component ancestor is not installed.", elementName, attributeName); | ||
14 | } | ||
15 | |||
16 | public static Message IllegalElementWithoutComponent(SourceLineNumber sourceLineNumbers, string elementName) | ||
17 | { | ||
18 | return Message(sourceLineNumbers, Ids.IllegalElementWithoutComponent, "The {0} element cannot be specified unless the element has a component as an ancestor. A {0} that does not have a component ancestor is not installed.", elementName); | ||
19 | } | ||
20 | |||
21 | public static Message RequiredAttribute(SourceLineNumber sourceLineNumbers, string elementName, string attributeName1, string attributeName2) | ||
22 | { | ||
23 | return Message(sourceLineNumbers, Ids.RequiredAttribute, "A {0} element must have either a {1} attribute or a {2} attribute, or both set.", elementName, attributeName1, attributeName2); | ||
24 | } | ||
25 | |||
26 | public static Message RequiredAttributeNotUnderComponent(SourceLineNumber sourceLineNumbers, string elementName, string attributeName1, string attributeName2) | ||
27 | { | ||
28 | return Message(sourceLineNumbers, Ids.RequiredAttributeNotUnderComponent, "A {0} element not nested under a component must have either a {1} attribute or a {2} attribute, or both set.", elementName, attributeName1, attributeName2); | ||
29 | } | ||
30 | |||
31 | public static Message RequiredAttributeUnderComponent(SourceLineNumber sourceLineNumbers, string elementName, string attributeName) | ||
32 | { | ||
33 | return Message(sourceLineNumbers, Ids.RequiredAttributeUnderComponent, "The {0}/@{1} attribute must be provided when {0} element is nested under a component.", elementName, attributeName); | ||
34 | } | ||
35 | |||
36 | public static Message UnexpectedAttributeWithOtherValue(SourceLineNumber sourceLineNumbers, string elementName, string attributeName, string otherAttributeName, string otherValue) | ||
37 | { | ||
38 | return Message(sourceLineNumbers, Ids.UnexpectedAttributeWithOtherValue, "The {0}/@{1} attribute cannot coexist with the {2} attribute's value of '{3}'.", elementName, attributeName, otherAttributeName, otherValue); | ||
39 | } | ||
40 | |||
41 | public static Message UnexpectedAttributeWithOtherValue(SourceLineNumber sourceLineNumbers, string elementName, string attributeName, string value, string otherAttributeName, string otherValue) | ||
42 | { | ||
43 | return Message(sourceLineNumbers, Ids.UnexpectedAttributeWithOtherValue, "The {0}/@{1} attribute's value, '{2}', cannot coexist with the {3} attribute's value of '{4}'.", elementName, attributeName, value, otherAttributeName, otherValue); | ||
44 | } | ||
45 | |||
46 | public static Message UnexpectedAttributeWithoutOtherValue(SourceLineNumber sourceLineNumbers, string elementName, string attributeName, string otherAttributeName, string otherValue) | ||
47 | { | ||
48 | return Message(sourceLineNumbers, Ids.UnexpectedAttributeWithoutOtherValue, "The {0}/@{1} cannot be provided unless the {2} attribute is provided with a value of '{3}'.", elementName, attributeName, otherAttributeName, otherValue); | ||
49 | } | ||
50 | |||
51 | private static Message Message(SourceLineNumber sourceLineNumber, Ids id, string format, params object[] args) | ||
52 | { | ||
53 | return new Message(sourceLineNumber, MessageLevel.Error, (int)id, format, args); | ||
54 | } | ||
55 | |||
56 | private static Message Message(SourceLineNumber sourceLineNumber, Ids id, ResourceManager resourceManager, string resourceName, params object[] args) | ||
57 | { | ||
58 | return new Message(sourceLineNumber, MessageLevel.Error, (int)id, resourceManager, resourceName, args); | ||
59 | } | ||
60 | |||
61 | public enum Ids | ||
62 | { | ||
63 | IllegalAttributeWithoutComponent = 6000, | ||
64 | IllegalElementWithoutComponent = 6001, | ||
65 | UnexpectedAttributeWithOtherValue = 6002, | ||
66 | UnexpectedAttributeWithoutOtherValue = 6003, | ||
67 | RequiredAttributeUnderComponent = 6004, | ||
68 | RequiredAttribute = 6005, | ||
69 | RequiredAttributeNotUnderComponent = 6006, | ||
70 | } | ||
71 | } | ||
72 | } | ||
diff --git a/src/wixext/ComPlusExtensionData.cs b/src/wixext/ComPlusExtensionData.cs index cedc2474..954e89f6 100644 --- a/src/wixext/ComPlusExtensionData.cs +++ b/src/wixext/ComPlusExtensionData.cs | |||
@@ -1,64 +1,30 @@ | |||
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. | 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 | 2 | ||
3 | namespace WixToolset.Extensions | 3 | namespace WixToolset.ComPlus |
4 | { | 4 | { |
5 | using System; | ||
6 | using System.Reflection; | ||
7 | using WixToolset.Data; | 5 | using WixToolset.Data; |
8 | using WixToolset.Extensibility; | 6 | using WixToolset.Extensibility; |
9 | 7 | ||
10 | /// <summary> | 8 | /// <summary> |
11 | /// The WiX Toolset COM+ Extension. | 9 | /// The WiX Toolset COM+ Extension. |
12 | /// </summary> | 10 | /// </summary> |
13 | public sealed class ComPlusExtensionData : ExtensionData | 11 | public sealed class ComPlusExtensionData : BaseExtensionData |
14 | { | 12 | { |
15 | /// <summary> | 13 | /// <summary> |
16 | /// Gets the default culture. | 14 | /// Gets the default culture. |
17 | /// </summary> | 15 | /// </summary> |
18 | /// <value>The default culture.</value> | 16 | /// <value>The default culture.</value> |
19 | public override string DefaultCulture | 17 | public override string DefaultCulture => "en-US"; |
20 | { | ||
21 | get { return "en-us"; } | ||
22 | } | ||
23 | |||
24 | /// <summary> | ||
25 | /// Gets the optional table definitions for this extension. | ||
26 | /// </summary> | ||
27 | /// <value>The optional table definitions for this extension.</value> | ||
28 | public override TableDefinitionCollection TableDefinitions | ||
29 | { | ||
30 | get | ||
31 | { | ||
32 | return ComPlusExtensionData.GetExtensionTableDefinitions(); | ||
33 | } | ||
34 | } | ||
35 | |||
36 | /// <summary> | ||
37 | /// Gets the library associated with this extension. | ||
38 | /// </summary> | ||
39 | /// <param name="tableDefinitions">The table definitions to use while loading the library.</param> | ||
40 | /// <returns>The loaded library.</returns> | ||
41 | public override Library GetLibrary(TableDefinitionCollection tableDefinitions) | ||
42 | { | ||
43 | return ComPlusExtensionData.GetExtensionLibrary(tableDefinitions); | ||
44 | } | ||
45 | 18 | ||
46 | /// <summary> | 19 | public override bool TryGetTupleDefinitionByName(string name, out IntermediateTupleDefinition tupleDefinition) |
47 | /// Internal mechanism to access the extension's table definitions. | ||
48 | /// </summary> | ||
49 | /// <returns>Extension's table definitions.</returns> | ||
50 | internal static TableDefinitionCollection GetExtensionTableDefinitions() | ||
51 | { | 20 | { |
52 | return ExtensionData.LoadTableDefinitionHelper(Assembly.GetExecutingAssembly(), "WixToolset.Extensions.Data.tables.xml"); | 21 | tupleDefinition = ComPlusTupleDefinitions.ByName(name); |
22 | return tupleDefinition != null; | ||
53 | } | 23 | } |
54 | 24 | ||
55 | /// <summary> | 25 | public override Intermediate GetLibrary(ITupleDefinitionCreator tupleDefinitions) |
56 | /// Internal mechanism to access the extension's library. | ||
57 | /// </summary> | ||
58 | /// <returns>Extension's library.</returns> | ||
59 | internal static Library GetExtensionLibrary(TableDefinitionCollection tableDefinitions) | ||
60 | { | 26 | { |
61 | return ExtensionData.LoadLibraryHelper(Assembly.GetExecutingAssembly(), "WixToolset.Extensions.Data.complus.wixlib", tableDefinitions); | 27 | return Intermediate.Load(typeof(ComPlusExtensionData).Assembly, "WixToolset.ComPlus.complus.wixlib", tupleDefinitions); |
62 | } | 28 | } |
63 | } | 29 | } |
64 | } | 30 | } |
diff --git a/src/wixext/ComPlusExtensionFactory.cs b/src/wixext/ComPlusExtensionFactory.cs new file mode 100644 index 00000000..d9405867 --- /dev/null +++ b/src/wixext/ComPlusExtensionFactory.cs | |||
@@ -0,0 +1,18 @@ | |||
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 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using System; | ||
6 | using System.Collections.Generic; | ||
7 | using WixToolset.Extensibility; | ||
8 | |||
9 | public class ComPlusExtensionFactory : BaseExtensionFactory | ||
10 | { | ||
11 | protected override IEnumerable<Type> ExtensionTypes => new[] | ||
12 | { | ||
13 | typeof(ComPlusCompiler), | ||
14 | typeof(ComPlusExtensionData), | ||
15 | typeof(ComPlusWindowsInstallerBackendBinderExtension), | ||
16 | }; | ||
17 | } | ||
18 | } | ||
diff --git a/src/wixext/ComPlusWarnings.cs b/src/wixext/ComPlusWarnings.cs new file mode 100644 index 00000000..e0000918 --- /dev/null +++ b/src/wixext/ComPlusWarnings.cs | |||
@@ -0,0 +1,31 @@ | |||
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 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using System; | ||
6 | using System.Resources; | ||
7 | using WixToolset.Data; | ||
8 | |||
9 | public static class ComPlusWarnings | ||
10 | { | ||
11 | public static Message MissingComponents(SourceLineNumber sourceLineNumbers) | ||
12 | { | ||
13 | return Message(sourceLineNumbers, Ids.MissingComponents, "The ComPlusAssembly element has a Type attribute with a value of 'native', but the element does not contain any ComPlusComponent elements. All components contained in a native assembly must be listed, or they will not be correctly removed during uninstall."); | ||
14 | } | ||
15 | |||
16 | private static Message Message(SourceLineNumber sourceLineNumber, Ids id, string format, params object[] args) | ||
17 | { | ||
18 | return new Message(sourceLineNumber, MessageLevel.Warning, (int)id, format, args); | ||
19 | } | ||
20 | |||
21 | private static Message Message(SourceLineNumber sourceLineNumber, Ids id, ResourceManager resourceManager, string resourceName, params object[] args) | ||
22 | { | ||
23 | return new Message(sourceLineNumber, MessageLevel.Warning, (int)id, resourceManager, resourceName, args); | ||
24 | } | ||
25 | |||
26 | public enum Ids | ||
27 | { | ||
28 | MissingComponents = 6007, | ||
29 | } | ||
30 | } | ||
31 | } | ||
diff --git a/src/wixext/ComPlusWindowsInstallerBackendBinderExtension.cs b/src/wixext/ComPlusWindowsInstallerBackendBinderExtension.cs new file mode 100644 index 00000000..b00add9e --- /dev/null +++ b/src/wixext/ComPlusWindowsInstallerBackendBinderExtension.cs | |||
@@ -0,0 +1,26 @@ | |||
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 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using System.Linq; | ||
6 | using System.Xml; | ||
7 | using WixToolset.Data.WindowsInstaller; | ||
8 | using WixToolset.Extensibility; | ||
9 | |||
10 | public class ComPlusWindowsInstallerBackendBinderExtension : BaseWindowsInstallerBackendBinderExtension | ||
11 | { | ||
12 | private static readonly TableDefinition[] Tables = LoadTables(); | ||
13 | |||
14 | protected override TableDefinition[] TableDefinitionsForTuples => Tables; | ||
15 | |||
16 | private static TableDefinition[] LoadTables() | ||
17 | { | ||
18 | using (var resourceStream = typeof(ComPlusWindowsInstallerBackendBinderExtension).Assembly.GetManifestResourceStream("WixToolset.ComPlus.tables.xml")) | ||
19 | using (var reader = XmlReader.Create(resourceStream)) | ||
20 | { | ||
21 | var tables = TableDefinitionCollection.Load(reader); | ||
22 | return tables.ToArray(); | ||
23 | } | ||
24 | } | ||
25 | } | ||
26 | } | ||
diff --git a/src/wixext/Tuples/ComPlusApplicationPropertyTuple.cs b/src/wixext/Tuples/ComPlusApplicationPropertyTuple.cs new file mode 100644 index 00000000..2582d323 --- /dev/null +++ b/src/wixext/Tuples/ComPlusApplicationPropertyTuple.cs | |||
@@ -0,0 +1,63 @@ | |||
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 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusApplicationProperty = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusApplicationProperty.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusApplicationPropertyTupleFields.Application_), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusApplicationPropertyTupleFields.Name), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusApplicationPropertyTupleFields.Value), IntermediateFieldType.String), | ||
17 | }, | ||
18 | typeof(ComPlusApplicationPropertyTuple)); | ||
19 | } | ||
20 | } | ||
21 | |||
22 | namespace WixToolset.ComPlus.Tuples | ||
23 | { | ||
24 | using WixToolset.Data; | ||
25 | |||
26 | public enum ComPlusApplicationPropertyTupleFields | ||
27 | { | ||
28 | Application_, | ||
29 | Name, | ||
30 | Value, | ||
31 | } | ||
32 | |||
33 | public class ComPlusApplicationPropertyTuple : IntermediateTuple | ||
34 | { | ||
35 | public ComPlusApplicationPropertyTuple() : base(ComPlusTupleDefinitions.ComPlusApplicationProperty, null, null) | ||
36 | { | ||
37 | } | ||
38 | |||
39 | public ComPlusApplicationPropertyTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusApplicationProperty, sourceLineNumber, id) | ||
40 | { | ||
41 | } | ||
42 | |||
43 | public IntermediateField this[ComPlusApplicationPropertyTupleFields index] => this.Fields[(int)index]; | ||
44 | |||
45 | public string Application_ | ||
46 | { | ||
47 | get => this.Fields[(int)ComPlusApplicationPropertyTupleFields.Application_].AsString(); | ||
48 | set => this.Set((int)ComPlusApplicationPropertyTupleFields.Application_, value); | ||
49 | } | ||
50 | |||
51 | public string Name | ||
52 | { | ||
53 | get => this.Fields[(int)ComPlusApplicationPropertyTupleFields.Name].AsString(); | ||
54 | set => this.Set((int)ComPlusApplicationPropertyTupleFields.Name, value); | ||
55 | } | ||
56 | |||
57 | public string Value | ||
58 | { | ||
59 | get => this.Fields[(int)ComPlusApplicationPropertyTupleFields.Value].AsString(); | ||
60 | set => this.Set((int)ComPlusApplicationPropertyTupleFields.Value, value); | ||
61 | } | ||
62 | } | ||
63 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusApplicationRolePropertyTuple.cs b/src/wixext/Tuples/ComPlusApplicationRolePropertyTuple.cs new file mode 100644 index 00000000..98eee7f8 --- /dev/null +++ b/src/wixext/Tuples/ComPlusApplicationRolePropertyTuple.cs | |||
@@ -0,0 +1,63 @@ | |||
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 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusApplicationRoleProperty = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusApplicationRoleProperty.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusApplicationRolePropertyTupleFields.ApplicationRole_), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusApplicationRolePropertyTupleFields.Name), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusApplicationRolePropertyTupleFields.Value), IntermediateFieldType.String), | ||
17 | }, | ||
18 | typeof(ComPlusApplicationRolePropertyTuple)); | ||
19 | } | ||
20 | } | ||
21 | |||
22 | namespace WixToolset.ComPlus.Tuples | ||
23 | { | ||
24 | using WixToolset.Data; | ||
25 | |||
26 | public enum ComPlusApplicationRolePropertyTupleFields | ||
27 | { | ||
28 | ApplicationRole_, | ||
29 | Name, | ||
30 | Value, | ||
31 | } | ||
32 | |||
33 | public class ComPlusApplicationRolePropertyTuple : IntermediateTuple | ||
34 | { | ||
35 | public ComPlusApplicationRolePropertyTuple() : base(ComPlusTupleDefinitions.ComPlusApplicationRoleProperty, null, null) | ||
36 | { | ||
37 | } | ||
38 | |||
39 | public ComPlusApplicationRolePropertyTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusApplicationRoleProperty, sourceLineNumber, id) | ||
40 | { | ||
41 | } | ||
42 | |||
43 | public IntermediateField this[ComPlusApplicationRolePropertyTupleFields index] => this.Fields[(int)index]; | ||
44 | |||
45 | public string ApplicationRole_ | ||
46 | { | ||
47 | get => this.Fields[(int)ComPlusApplicationRolePropertyTupleFields.ApplicationRole_].AsString(); | ||
48 | set => this.Set((int)ComPlusApplicationRolePropertyTupleFields.ApplicationRole_, value); | ||
49 | } | ||
50 | |||
51 | public string Name | ||
52 | { | ||
53 | get => this.Fields[(int)ComPlusApplicationRolePropertyTupleFields.Name].AsString(); | ||
54 | set => this.Set((int)ComPlusApplicationRolePropertyTupleFields.Name, value); | ||
55 | } | ||
56 | |||
57 | public string Value | ||
58 | { | ||
59 | get => this.Fields[(int)ComPlusApplicationRolePropertyTupleFields.Value].AsString(); | ||
60 | set => this.Set((int)ComPlusApplicationRolePropertyTupleFields.Value, value); | ||
61 | } | ||
62 | } | ||
63 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusApplicationRoleTuple.cs b/src/wixext/Tuples/ComPlusApplicationRoleTuple.cs new file mode 100644 index 00000000..5a0cf378 --- /dev/null +++ b/src/wixext/Tuples/ComPlusApplicationRoleTuple.cs | |||
@@ -0,0 +1,71 @@ | |||
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 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusApplicationRole = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusApplicationRole.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusApplicationRoleTupleFields.ApplicationRole), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusApplicationRoleTupleFields.Application_), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusApplicationRoleTupleFields.Component_), IntermediateFieldType.String), | ||
17 | new IntermediateFieldDefinition(nameof(ComPlusApplicationRoleTupleFields.Name), IntermediateFieldType.String), | ||
18 | }, | ||
19 | typeof(ComPlusApplicationRoleTuple)); | ||
20 | } | ||
21 | } | ||
22 | |||
23 | namespace WixToolset.ComPlus.Tuples | ||
24 | { | ||
25 | using WixToolset.Data; | ||
26 | |||
27 | public enum ComPlusApplicationRoleTupleFields | ||
28 | { | ||
29 | ApplicationRole, | ||
30 | Application_, | ||
31 | Component_, | ||
32 | Name, | ||
33 | } | ||
34 | |||
35 | public class ComPlusApplicationRoleTuple : IntermediateTuple | ||
36 | { | ||
37 | public ComPlusApplicationRoleTuple() : base(ComPlusTupleDefinitions.ComPlusApplicationRole, null, null) | ||
38 | { | ||
39 | } | ||
40 | |||
41 | public ComPlusApplicationRoleTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusApplicationRole, sourceLineNumber, id) | ||
42 | { | ||
43 | } | ||
44 | |||
45 | public IntermediateField this[ComPlusApplicationRoleTupleFields index] => this.Fields[(int)index]; | ||
46 | |||
47 | public string ApplicationRole | ||
48 | { | ||
49 | get => this.Fields[(int)ComPlusApplicationRoleTupleFields.ApplicationRole].AsString(); | ||
50 | set => this.Set((int)ComPlusApplicationRoleTupleFields.ApplicationRole, value); | ||
51 | } | ||
52 | |||
53 | public string Application_ | ||
54 | { | ||
55 | get => this.Fields[(int)ComPlusApplicationRoleTupleFields.Application_].AsString(); | ||
56 | set => this.Set((int)ComPlusApplicationRoleTupleFields.Application_, value); | ||
57 | } | ||
58 | |||
59 | public string Component_ | ||
60 | { | ||
61 | get => this.Fields[(int)ComPlusApplicationRoleTupleFields.Component_].AsString(); | ||
62 | set => this.Set((int)ComPlusApplicationRoleTupleFields.Component_, value); | ||
63 | } | ||
64 | |||
65 | public string Name | ||
66 | { | ||
67 | get => this.Fields[(int)ComPlusApplicationRoleTupleFields.Name].AsString(); | ||
68 | set => this.Set((int)ComPlusApplicationRoleTupleFields.Name, value); | ||
69 | } | ||
70 | } | ||
71 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusApplicationTuple.cs b/src/wixext/Tuples/ComPlusApplicationTuple.cs new file mode 100644 index 00000000..7fd5fbd4 --- /dev/null +++ b/src/wixext/Tuples/ComPlusApplicationTuple.cs | |||
@@ -0,0 +1,79 @@ | |||
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 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusApplication = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusApplication.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusApplicationTupleFields.Application), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusApplicationTupleFields.Partition_), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusApplicationTupleFields.Component_), IntermediateFieldType.String), | ||
17 | new IntermediateFieldDefinition(nameof(ComPlusApplicationTupleFields.CustomId), IntermediateFieldType.String), | ||
18 | new IntermediateFieldDefinition(nameof(ComPlusApplicationTupleFields.Name), IntermediateFieldType.String), | ||
19 | }, | ||
20 | typeof(ComPlusApplicationTuple)); | ||
21 | } | ||
22 | } | ||
23 | |||
24 | namespace WixToolset.ComPlus.Tuples | ||
25 | { | ||
26 | using WixToolset.Data; | ||
27 | |||
28 | public enum ComPlusApplicationTupleFields | ||
29 | { | ||
30 | Application, | ||
31 | Partition_, | ||
32 | Component_, | ||
33 | CustomId, | ||
34 | Name, | ||
35 | } | ||
36 | |||
37 | public class ComPlusApplicationTuple : IntermediateTuple | ||
38 | { | ||
39 | public ComPlusApplicationTuple() : base(ComPlusTupleDefinitions.ComPlusApplication, null, null) | ||
40 | { | ||
41 | } | ||
42 | |||
43 | public ComPlusApplicationTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusApplication, sourceLineNumber, id) | ||
44 | { | ||
45 | } | ||
46 | |||
47 | public IntermediateField this[ComPlusApplicationTupleFields index] => this.Fields[(int)index]; | ||
48 | |||
49 | public string Application | ||
50 | { | ||
51 | get => this.Fields[(int)ComPlusApplicationTupleFields.Application].AsString(); | ||
52 | set => this.Set((int)ComPlusApplicationTupleFields.Application, value); | ||
53 | } | ||
54 | |||
55 | public string Partition_ | ||
56 | { | ||
57 | get => this.Fields[(int)ComPlusApplicationTupleFields.Partition_].AsString(); | ||
58 | set => this.Set((int)ComPlusApplicationTupleFields.Partition_, value); | ||
59 | } | ||
60 | |||
61 | public string Component_ | ||
62 | { | ||
63 | get => this.Fields[(int)ComPlusApplicationTupleFields.Component_].AsString(); | ||
64 | set => this.Set((int)ComPlusApplicationTupleFields.Component_, value); | ||
65 | } | ||
66 | |||
67 | public string CustomId | ||
68 | { | ||
69 | get => this.Fields[(int)ComPlusApplicationTupleFields.CustomId].AsString(); | ||
70 | set => this.Set((int)ComPlusApplicationTupleFields.CustomId, value); | ||
71 | } | ||
72 | |||
73 | public string Name | ||
74 | { | ||
75 | get => this.Fields[(int)ComPlusApplicationTupleFields.Name].AsString(); | ||
76 | set => this.Set((int)ComPlusApplicationTupleFields.Name, value); | ||
77 | } | ||
78 | } | ||
79 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusAssemblyDependencyTuple.cs b/src/wixext/Tuples/ComPlusAssemblyDependencyTuple.cs new file mode 100644 index 00000000..be0bc073 --- /dev/null +++ b/src/wixext/Tuples/ComPlusAssemblyDependencyTuple.cs | |||
@@ -0,0 +1,55 @@ | |||
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 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusAssemblyDependency = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusAssemblyDependency.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusAssemblyDependencyTupleFields.Assembly_), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusAssemblyDependencyTupleFields.RequiredAssembly_), IntermediateFieldType.String), | ||
16 | }, | ||
17 | typeof(ComPlusAssemblyDependencyTuple)); | ||
18 | } | ||
19 | } | ||
20 | |||
21 | namespace WixToolset.ComPlus.Tuples | ||
22 | { | ||
23 | using WixToolset.Data; | ||
24 | |||
25 | public enum ComPlusAssemblyDependencyTupleFields | ||
26 | { | ||
27 | Assembly_, | ||
28 | RequiredAssembly_, | ||
29 | } | ||
30 | |||
31 | public class ComPlusAssemblyDependencyTuple : IntermediateTuple | ||
32 | { | ||
33 | public ComPlusAssemblyDependencyTuple() : base(ComPlusTupleDefinitions.ComPlusAssemblyDependency, null, null) | ||
34 | { | ||
35 | } | ||
36 | |||
37 | public ComPlusAssemblyDependencyTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusAssemblyDependency, sourceLineNumber, id) | ||
38 | { | ||
39 | } | ||
40 | |||
41 | public IntermediateField this[ComPlusAssemblyDependencyTupleFields index] => this.Fields[(int)index]; | ||
42 | |||
43 | public string Assembly_ | ||
44 | { | ||
45 | get => this.Fields[(int)ComPlusAssemblyDependencyTupleFields.Assembly_].AsString(); | ||
46 | set => this.Set((int)ComPlusAssemblyDependencyTupleFields.Assembly_, value); | ||
47 | } | ||
48 | |||
49 | public string RequiredAssembly_ | ||
50 | { | ||
51 | get => this.Fields[(int)ComPlusAssemblyDependencyTupleFields.RequiredAssembly_].AsString(); | ||
52 | set => this.Set((int)ComPlusAssemblyDependencyTupleFields.RequiredAssembly_, value); | ||
53 | } | ||
54 | } | ||
55 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusAssemblyTuple.cs b/src/wixext/Tuples/ComPlusAssemblyTuple.cs new file mode 100644 index 00000000..0330b4e8 --- /dev/null +++ b/src/wixext/Tuples/ComPlusAssemblyTuple.cs | |||
@@ -0,0 +1,103 @@ | |||
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 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusAssembly = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusAssembly.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusAssemblyTupleFields.Assembly), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusAssemblyTupleFields.Application_), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusAssemblyTupleFields.Component_), IntermediateFieldType.String), | ||
17 | new IntermediateFieldDefinition(nameof(ComPlusAssemblyTupleFields.AssemblyName), IntermediateFieldType.String), | ||
18 | new IntermediateFieldDefinition(nameof(ComPlusAssemblyTupleFields.DllPath), IntermediateFieldType.String), | ||
19 | new IntermediateFieldDefinition(nameof(ComPlusAssemblyTupleFields.TlbPath), IntermediateFieldType.String), | ||
20 | new IntermediateFieldDefinition(nameof(ComPlusAssemblyTupleFields.PSDllPath), IntermediateFieldType.String), | ||
21 | new IntermediateFieldDefinition(nameof(ComPlusAssemblyTupleFields.Attributes), IntermediateFieldType.Number), | ||
22 | }, | ||
23 | typeof(ComPlusAssemblyTuple)); | ||
24 | } | ||
25 | } | ||
26 | |||
27 | namespace WixToolset.ComPlus.Tuples | ||
28 | { | ||
29 | using WixToolset.Data; | ||
30 | |||
31 | public enum ComPlusAssemblyTupleFields | ||
32 | { | ||
33 | Assembly, | ||
34 | Application_, | ||
35 | Component_, | ||
36 | AssemblyName, | ||
37 | DllPath, | ||
38 | TlbPath, | ||
39 | PSDllPath, | ||
40 | Attributes, | ||
41 | } | ||
42 | |||
43 | public class ComPlusAssemblyTuple : IntermediateTuple | ||
44 | { | ||
45 | public ComPlusAssemblyTuple() : base(ComPlusTupleDefinitions.ComPlusAssembly, null, null) | ||
46 | { | ||
47 | } | ||
48 | |||
49 | public ComPlusAssemblyTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusAssembly, sourceLineNumber, id) | ||
50 | { | ||
51 | } | ||
52 | |||
53 | public IntermediateField this[ComPlusAssemblyTupleFields index] => this.Fields[(int)index]; | ||
54 | |||
55 | public string Assembly | ||
56 | { | ||
57 | get => this.Fields[(int)ComPlusAssemblyTupleFields.Assembly].AsString(); | ||
58 | set => this.Set((int)ComPlusAssemblyTupleFields.Assembly, value); | ||
59 | } | ||
60 | |||
61 | public string Application_ | ||
62 | { | ||
63 | get => this.Fields[(int)ComPlusAssemblyTupleFields.Application_].AsString(); | ||
64 | set => this.Set((int)ComPlusAssemblyTupleFields.Application_, value); | ||
65 | } | ||
66 | |||
67 | public string Component_ | ||
68 | { | ||
69 | get => this.Fields[(int)ComPlusAssemblyTupleFields.Component_].AsString(); | ||
70 | set => this.Set((int)ComPlusAssemblyTupleFields.Component_, value); | ||
71 | } | ||
72 | |||
73 | public string AssemblyName | ||
74 | { | ||
75 | get => this.Fields[(int)ComPlusAssemblyTupleFields.AssemblyName].AsString(); | ||
76 | set => this.Set((int)ComPlusAssemblyTupleFields.AssemblyName, value); | ||
77 | } | ||
78 | |||
79 | public string DllPath | ||
80 | { | ||
81 | get => this.Fields[(int)ComPlusAssemblyTupleFields.DllPath].AsString(); | ||
82 | set => this.Set((int)ComPlusAssemblyTupleFields.DllPath, value); | ||
83 | } | ||
84 | |||
85 | public string TlbPath | ||
86 | { | ||
87 | get => this.Fields[(int)ComPlusAssemblyTupleFields.TlbPath].AsString(); | ||
88 | set => this.Set((int)ComPlusAssemblyTupleFields.TlbPath, value); | ||
89 | } | ||
90 | |||
91 | public string PSDllPath | ||
92 | { | ||
93 | get => this.Fields[(int)ComPlusAssemblyTupleFields.PSDllPath].AsString(); | ||
94 | set => this.Set((int)ComPlusAssemblyTupleFields.PSDllPath, value); | ||
95 | } | ||
96 | |||
97 | public int Attributes | ||
98 | { | ||
99 | get => this.Fields[(int)ComPlusAssemblyTupleFields.Attributes].AsNumber(); | ||
100 | set => this.Set((int)ComPlusAssemblyTupleFields.Attributes, value); | ||
101 | } | ||
102 | } | ||
103 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusComponentPropertyTuple.cs b/src/wixext/Tuples/ComPlusComponentPropertyTuple.cs new file mode 100644 index 00000000..81651343 --- /dev/null +++ b/src/wixext/Tuples/ComPlusComponentPropertyTuple.cs | |||
@@ -0,0 +1,63 @@ | |||
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 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusComponentProperty = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusComponentProperty.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusComponentPropertyTupleFields.ComPlusComponent_), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusComponentPropertyTupleFields.Name), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusComponentPropertyTupleFields.Value), IntermediateFieldType.String), | ||
17 | }, | ||
18 | typeof(ComPlusComponentPropertyTuple)); | ||
19 | } | ||
20 | } | ||
21 | |||
22 | namespace WixToolset.ComPlus.Tuples | ||
23 | { | ||
24 | using WixToolset.Data; | ||
25 | |||
26 | public enum ComPlusComponentPropertyTupleFields | ||
27 | { | ||
28 | ComPlusComponent_, | ||
29 | Name, | ||
30 | Value, | ||
31 | } | ||
32 | |||
33 | public class ComPlusComponentPropertyTuple : IntermediateTuple | ||
34 | { | ||
35 | public ComPlusComponentPropertyTuple() : base(ComPlusTupleDefinitions.ComPlusComponentProperty, null, null) | ||
36 | { | ||
37 | } | ||
38 | |||
39 | public ComPlusComponentPropertyTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusComponentProperty, sourceLineNumber, id) | ||
40 | { | ||
41 | } | ||
42 | |||
43 | public IntermediateField this[ComPlusComponentPropertyTupleFields index] => this.Fields[(int)index]; | ||
44 | |||
45 | public string ComPlusComponent_ | ||
46 | { | ||
47 | get => this.Fields[(int)ComPlusComponentPropertyTupleFields.ComPlusComponent_].AsString(); | ||
48 | set => this.Set((int)ComPlusComponentPropertyTupleFields.ComPlusComponent_, value); | ||
49 | } | ||
50 | |||
51 | public string Name | ||
52 | { | ||
53 | get => this.Fields[(int)ComPlusComponentPropertyTupleFields.Name].AsString(); | ||
54 | set => this.Set((int)ComPlusComponentPropertyTupleFields.Name, value); | ||
55 | } | ||
56 | |||
57 | public string Value | ||
58 | { | ||
59 | get => this.Fields[(int)ComPlusComponentPropertyTupleFields.Value].AsString(); | ||
60 | set => this.Set((int)ComPlusComponentPropertyTupleFields.Value, value); | ||
61 | } | ||
62 | } | ||
63 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusComponentTuple.cs b/src/wixext/Tuples/ComPlusComponentTuple.cs new file mode 100644 index 00000000..923ff6e3 --- /dev/null +++ b/src/wixext/Tuples/ComPlusComponentTuple.cs | |||
@@ -0,0 +1,63 @@ | |||
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 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusComponent = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusComponent.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusComponentTupleFields.ComPlusComponent), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusComponentTupleFields.Assembly_), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusComponentTupleFields.CLSID), IntermediateFieldType.String), | ||
17 | }, | ||
18 | typeof(ComPlusComponentTuple)); | ||
19 | } | ||
20 | } | ||
21 | |||
22 | namespace WixToolset.ComPlus.Tuples | ||
23 | { | ||
24 | using WixToolset.Data; | ||
25 | |||
26 | public enum ComPlusComponentTupleFields | ||
27 | { | ||
28 | ComPlusComponent, | ||
29 | Assembly_, | ||
30 | CLSID, | ||
31 | } | ||
32 | |||
33 | public class ComPlusComponentTuple : IntermediateTuple | ||
34 | { | ||
35 | public ComPlusComponentTuple() : base(ComPlusTupleDefinitions.ComPlusComponent, null, null) | ||
36 | { | ||
37 | } | ||
38 | |||
39 | public ComPlusComponentTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusComponent, sourceLineNumber, id) | ||
40 | { | ||
41 | } | ||
42 | |||
43 | public IntermediateField this[ComPlusComponentTupleFields index] => this.Fields[(int)index]; | ||
44 | |||
45 | public string ComPlusComponent | ||
46 | { | ||
47 | get => this.Fields[(int)ComPlusComponentTupleFields.ComPlusComponent].AsString(); | ||
48 | set => this.Set((int)ComPlusComponentTupleFields.ComPlusComponent, value); | ||
49 | } | ||
50 | |||
51 | public string Assembly_ | ||
52 | { | ||
53 | get => this.Fields[(int)ComPlusComponentTupleFields.Assembly_].AsString(); | ||
54 | set => this.Set((int)ComPlusComponentTupleFields.Assembly_, value); | ||
55 | } | ||
56 | |||
57 | public string CLSID | ||
58 | { | ||
59 | get => this.Fields[(int)ComPlusComponentTupleFields.CLSID].AsString(); | ||
60 | set => this.Set((int)ComPlusComponentTupleFields.CLSID, value); | ||
61 | } | ||
62 | } | ||
63 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusGroupInApplicationRoleTuple.cs b/src/wixext/Tuples/ComPlusGroupInApplicationRoleTuple.cs new file mode 100644 index 00000000..40b47eb3 --- /dev/null +++ b/src/wixext/Tuples/ComPlusGroupInApplicationRoleTuple.cs | |||
@@ -0,0 +1,71 @@ | |||
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 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusGroupInApplicationRole = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusGroupInApplicationRole.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusGroupInApplicationRoleTupleFields.GroupInApplicationRole), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusGroupInApplicationRoleTupleFields.ApplicationRole_), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusGroupInApplicationRoleTupleFields.Component_), IntermediateFieldType.String), | ||
17 | new IntermediateFieldDefinition(nameof(ComPlusGroupInApplicationRoleTupleFields.Group_), IntermediateFieldType.String), | ||
18 | }, | ||
19 | typeof(ComPlusGroupInApplicationRoleTuple)); | ||
20 | } | ||
21 | } | ||
22 | |||
23 | namespace WixToolset.ComPlus.Tuples | ||
24 | { | ||
25 | using WixToolset.Data; | ||
26 | |||
27 | public enum ComPlusGroupInApplicationRoleTupleFields | ||
28 | { | ||
29 | GroupInApplicationRole, | ||
30 | ApplicationRole_, | ||
31 | Component_, | ||
32 | Group_, | ||
33 | } | ||
34 | |||
35 | public class ComPlusGroupInApplicationRoleTuple : IntermediateTuple | ||
36 | { | ||
37 | public ComPlusGroupInApplicationRoleTuple() : base(ComPlusTupleDefinitions.ComPlusGroupInApplicationRole, null, null) | ||
38 | { | ||
39 | } | ||
40 | |||
41 | public ComPlusGroupInApplicationRoleTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusGroupInApplicationRole, sourceLineNumber, id) | ||
42 | { | ||
43 | } | ||
44 | |||
45 | public IntermediateField this[ComPlusGroupInApplicationRoleTupleFields index] => this.Fields[(int)index]; | ||
46 | |||
47 | public string GroupInApplicationRole | ||
48 | { | ||
49 | get => this.Fields[(int)ComPlusGroupInApplicationRoleTupleFields.GroupInApplicationRole].AsString(); | ||
50 | set => this.Set((int)ComPlusGroupInApplicationRoleTupleFields.GroupInApplicationRole, value); | ||
51 | } | ||
52 | |||
53 | public string ApplicationRole_ | ||
54 | { | ||
55 | get => this.Fields[(int)ComPlusGroupInApplicationRoleTupleFields.ApplicationRole_].AsString(); | ||
56 | set => this.Set((int)ComPlusGroupInApplicationRoleTupleFields.ApplicationRole_, value); | ||
57 | } | ||
58 | |||
59 | public string Component_ | ||
60 | { | ||
61 | get => this.Fields[(int)ComPlusGroupInApplicationRoleTupleFields.Component_].AsString(); | ||
62 | set => this.Set((int)ComPlusGroupInApplicationRoleTupleFields.Component_, value); | ||
63 | } | ||
64 | |||
65 | public string Group_ | ||
66 | { | ||
67 | get => this.Fields[(int)ComPlusGroupInApplicationRoleTupleFields.Group_].AsString(); | ||
68 | set => this.Set((int)ComPlusGroupInApplicationRoleTupleFields.Group_, value); | ||
69 | } | ||
70 | } | ||
71 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusGroupInPartitionRoleTuple.cs b/src/wixext/Tuples/ComPlusGroupInPartitionRoleTuple.cs new file mode 100644 index 00000000..092937f0 --- /dev/null +++ b/src/wixext/Tuples/ComPlusGroupInPartitionRoleTuple.cs | |||
@@ -0,0 +1,71 @@ | |||
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 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusGroupInPartitionRole = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusGroupInPartitionRole.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusGroupInPartitionRoleTupleFields.GroupInPartitionRole), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusGroupInPartitionRoleTupleFields.PartitionRole_), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusGroupInPartitionRoleTupleFields.Component_), IntermediateFieldType.String), | ||
17 | new IntermediateFieldDefinition(nameof(ComPlusGroupInPartitionRoleTupleFields.Group_), IntermediateFieldType.String), | ||
18 | }, | ||
19 | typeof(ComPlusGroupInPartitionRoleTuple)); | ||
20 | } | ||
21 | } | ||
22 | |||
23 | namespace WixToolset.ComPlus.Tuples | ||
24 | { | ||
25 | using WixToolset.Data; | ||
26 | |||
27 | public enum ComPlusGroupInPartitionRoleTupleFields | ||
28 | { | ||
29 | GroupInPartitionRole, | ||
30 | PartitionRole_, | ||
31 | Component_, | ||
32 | Group_, | ||
33 | } | ||
34 | |||
35 | public class ComPlusGroupInPartitionRoleTuple : IntermediateTuple | ||
36 | { | ||
37 | public ComPlusGroupInPartitionRoleTuple() : base(ComPlusTupleDefinitions.ComPlusGroupInPartitionRole, null, null) | ||
38 | { | ||
39 | } | ||
40 | |||
41 | public ComPlusGroupInPartitionRoleTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusGroupInPartitionRole, sourceLineNumber, id) | ||
42 | { | ||
43 | } | ||
44 | |||
45 | public IntermediateField this[ComPlusGroupInPartitionRoleTupleFields index] => this.Fields[(int)index]; | ||
46 | |||
47 | public string GroupInPartitionRole | ||
48 | { | ||
49 | get => this.Fields[(int)ComPlusGroupInPartitionRoleTupleFields.GroupInPartitionRole].AsString(); | ||
50 | set => this.Set((int)ComPlusGroupInPartitionRoleTupleFields.GroupInPartitionRole, value); | ||
51 | } | ||
52 | |||
53 | public string PartitionRole_ | ||
54 | { | ||
55 | get => this.Fields[(int)ComPlusGroupInPartitionRoleTupleFields.PartitionRole_].AsString(); | ||
56 | set => this.Set((int)ComPlusGroupInPartitionRoleTupleFields.PartitionRole_, value); | ||
57 | } | ||
58 | |||
59 | public string Component_ | ||
60 | { | ||
61 | get => this.Fields[(int)ComPlusGroupInPartitionRoleTupleFields.Component_].AsString(); | ||
62 | set => this.Set((int)ComPlusGroupInPartitionRoleTupleFields.Component_, value); | ||
63 | } | ||
64 | |||
65 | public string Group_ | ||
66 | { | ||
67 | get => this.Fields[(int)ComPlusGroupInPartitionRoleTupleFields.Group_].AsString(); | ||
68 | set => this.Set((int)ComPlusGroupInPartitionRoleTupleFields.Group_, value); | ||
69 | } | ||
70 | } | ||
71 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusInterfacePropertyTuple.cs b/src/wixext/Tuples/ComPlusInterfacePropertyTuple.cs new file mode 100644 index 00000000..94f12914 --- /dev/null +++ b/src/wixext/Tuples/ComPlusInterfacePropertyTuple.cs | |||
@@ -0,0 +1,63 @@ | |||
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 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusInterfaceProperty = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusInterfaceProperty.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusInterfacePropertyTupleFields.Interface_), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusInterfacePropertyTupleFields.Name), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusInterfacePropertyTupleFields.Value), IntermediateFieldType.String), | ||
17 | }, | ||
18 | typeof(ComPlusInterfacePropertyTuple)); | ||
19 | } | ||
20 | } | ||
21 | |||
22 | namespace WixToolset.ComPlus.Tuples | ||
23 | { | ||
24 | using WixToolset.Data; | ||
25 | |||
26 | public enum ComPlusInterfacePropertyTupleFields | ||
27 | { | ||
28 | Interface_, | ||
29 | Name, | ||
30 | Value, | ||
31 | } | ||
32 | |||
33 | public class ComPlusInterfacePropertyTuple : IntermediateTuple | ||
34 | { | ||
35 | public ComPlusInterfacePropertyTuple() : base(ComPlusTupleDefinitions.ComPlusInterfaceProperty, null, null) | ||
36 | { | ||
37 | } | ||
38 | |||
39 | public ComPlusInterfacePropertyTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusInterfaceProperty, sourceLineNumber, id) | ||
40 | { | ||
41 | } | ||
42 | |||
43 | public IntermediateField this[ComPlusInterfacePropertyTupleFields index] => this.Fields[(int)index]; | ||
44 | |||
45 | public string Interface_ | ||
46 | { | ||
47 | get => this.Fields[(int)ComPlusInterfacePropertyTupleFields.Interface_].AsString(); | ||
48 | set => this.Set((int)ComPlusInterfacePropertyTupleFields.Interface_, value); | ||
49 | } | ||
50 | |||
51 | public string Name | ||
52 | { | ||
53 | get => this.Fields[(int)ComPlusInterfacePropertyTupleFields.Name].AsString(); | ||
54 | set => this.Set((int)ComPlusInterfacePropertyTupleFields.Name, value); | ||
55 | } | ||
56 | |||
57 | public string Value | ||
58 | { | ||
59 | get => this.Fields[(int)ComPlusInterfacePropertyTupleFields.Value].AsString(); | ||
60 | set => this.Set((int)ComPlusInterfacePropertyTupleFields.Value, value); | ||
61 | } | ||
62 | } | ||
63 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusInterfaceTuple.cs b/src/wixext/Tuples/ComPlusInterfaceTuple.cs new file mode 100644 index 00000000..3c4042ef --- /dev/null +++ b/src/wixext/Tuples/ComPlusInterfaceTuple.cs | |||
@@ -0,0 +1,63 @@ | |||
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 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusInterface = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusInterface.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusInterfaceTupleFields.Interface), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusInterfaceTupleFields.ComPlusComponent_), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusInterfaceTupleFields.IID), IntermediateFieldType.String), | ||
17 | }, | ||
18 | typeof(ComPlusInterfaceTuple)); | ||
19 | } | ||
20 | } | ||
21 | |||
22 | namespace WixToolset.ComPlus.Tuples | ||
23 | { | ||
24 | using WixToolset.Data; | ||
25 | |||
26 | public enum ComPlusInterfaceTupleFields | ||
27 | { | ||
28 | Interface, | ||
29 | ComPlusComponent_, | ||
30 | IID, | ||
31 | } | ||
32 | |||
33 | public class ComPlusInterfaceTuple : IntermediateTuple | ||
34 | { | ||
35 | public ComPlusInterfaceTuple() : base(ComPlusTupleDefinitions.ComPlusInterface, null, null) | ||
36 | { | ||
37 | } | ||
38 | |||
39 | public ComPlusInterfaceTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusInterface, sourceLineNumber, id) | ||
40 | { | ||
41 | } | ||
42 | |||
43 | public IntermediateField this[ComPlusInterfaceTupleFields index] => this.Fields[(int)index]; | ||
44 | |||
45 | public string Interface | ||
46 | { | ||
47 | get => this.Fields[(int)ComPlusInterfaceTupleFields.Interface].AsString(); | ||
48 | set => this.Set((int)ComPlusInterfaceTupleFields.Interface, value); | ||
49 | } | ||
50 | |||
51 | public string ComPlusComponent_ | ||
52 | { | ||
53 | get => this.Fields[(int)ComPlusInterfaceTupleFields.ComPlusComponent_].AsString(); | ||
54 | set => this.Set((int)ComPlusInterfaceTupleFields.ComPlusComponent_, value); | ||
55 | } | ||
56 | |||
57 | public string IID | ||
58 | { | ||
59 | get => this.Fields[(int)ComPlusInterfaceTupleFields.IID].AsString(); | ||
60 | set => this.Set((int)ComPlusInterfaceTupleFields.IID, value); | ||
61 | } | ||
62 | } | ||
63 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusMethodPropertyTuple.cs b/src/wixext/Tuples/ComPlusMethodPropertyTuple.cs new file mode 100644 index 00000000..8ebc3f6b --- /dev/null +++ b/src/wixext/Tuples/ComPlusMethodPropertyTuple.cs | |||
@@ -0,0 +1,63 @@ | |||
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 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusMethodProperty = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusMethodProperty.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusMethodPropertyTupleFields.Method_), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusMethodPropertyTupleFields.Name), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusMethodPropertyTupleFields.Value), IntermediateFieldType.String), | ||
17 | }, | ||
18 | typeof(ComPlusMethodPropertyTuple)); | ||
19 | } | ||
20 | } | ||
21 | |||
22 | namespace WixToolset.ComPlus.Tuples | ||
23 | { | ||
24 | using WixToolset.Data; | ||
25 | |||
26 | public enum ComPlusMethodPropertyTupleFields | ||
27 | { | ||
28 | Method_, | ||
29 | Name, | ||
30 | Value, | ||
31 | } | ||
32 | |||
33 | public class ComPlusMethodPropertyTuple : IntermediateTuple | ||
34 | { | ||
35 | public ComPlusMethodPropertyTuple() : base(ComPlusTupleDefinitions.ComPlusMethodProperty, null, null) | ||
36 | { | ||
37 | } | ||
38 | |||
39 | public ComPlusMethodPropertyTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusMethodProperty, sourceLineNumber, id) | ||
40 | { | ||
41 | } | ||
42 | |||
43 | public IntermediateField this[ComPlusMethodPropertyTupleFields index] => this.Fields[(int)index]; | ||
44 | |||
45 | public string Method_ | ||
46 | { | ||
47 | get => this.Fields[(int)ComPlusMethodPropertyTupleFields.Method_].AsString(); | ||
48 | set => this.Set((int)ComPlusMethodPropertyTupleFields.Method_, value); | ||
49 | } | ||
50 | |||
51 | public string Name | ||
52 | { | ||
53 | get => this.Fields[(int)ComPlusMethodPropertyTupleFields.Name].AsString(); | ||
54 | set => this.Set((int)ComPlusMethodPropertyTupleFields.Name, value); | ||
55 | } | ||
56 | |||
57 | public string Value | ||
58 | { | ||
59 | get => this.Fields[(int)ComPlusMethodPropertyTupleFields.Value].AsString(); | ||
60 | set => this.Set((int)ComPlusMethodPropertyTupleFields.Value, value); | ||
61 | } | ||
62 | } | ||
63 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusMethodTuple.cs b/src/wixext/Tuples/ComPlusMethodTuple.cs new file mode 100644 index 00000000..bcca034a --- /dev/null +++ b/src/wixext/Tuples/ComPlusMethodTuple.cs | |||
@@ -0,0 +1,71 @@ | |||
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 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusMethod = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusMethod.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusMethodTupleFields.Method), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusMethodTupleFields.Interface_), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusMethodTupleFields.Index), IntermediateFieldType.Number), | ||
17 | new IntermediateFieldDefinition(nameof(ComPlusMethodTupleFields.Name), IntermediateFieldType.String), | ||
18 | }, | ||
19 | typeof(ComPlusMethodTuple)); | ||
20 | } | ||
21 | } | ||
22 | |||
23 | namespace WixToolset.ComPlus.Tuples | ||
24 | { | ||
25 | using WixToolset.Data; | ||
26 | |||
27 | public enum ComPlusMethodTupleFields | ||
28 | { | ||
29 | Method, | ||
30 | Interface_, | ||
31 | Index, | ||
32 | Name, | ||
33 | } | ||
34 | |||
35 | public class ComPlusMethodTuple : IntermediateTuple | ||
36 | { | ||
37 | public ComPlusMethodTuple() : base(ComPlusTupleDefinitions.ComPlusMethod, null, null) | ||
38 | { | ||
39 | } | ||
40 | |||
41 | public ComPlusMethodTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusMethod, sourceLineNumber, id) | ||
42 | { | ||
43 | } | ||
44 | |||
45 | public IntermediateField this[ComPlusMethodTupleFields index] => this.Fields[(int)index]; | ||
46 | |||
47 | public string Method | ||
48 | { | ||
49 | get => this.Fields[(int)ComPlusMethodTupleFields.Method].AsString(); | ||
50 | set => this.Set((int)ComPlusMethodTupleFields.Method, value); | ||
51 | } | ||
52 | |||
53 | public string Interface_ | ||
54 | { | ||
55 | get => this.Fields[(int)ComPlusMethodTupleFields.Interface_].AsString(); | ||
56 | set => this.Set((int)ComPlusMethodTupleFields.Interface_, value); | ||
57 | } | ||
58 | |||
59 | public int Index | ||
60 | { | ||
61 | get => this.Fields[(int)ComPlusMethodTupleFields.Index].AsNumber(); | ||
62 | set => this.Set((int)ComPlusMethodTupleFields.Index, value); | ||
63 | } | ||
64 | |||
65 | public string Name | ||
66 | { | ||
67 | get => this.Fields[(int)ComPlusMethodTupleFields.Name].AsString(); | ||
68 | set => this.Set((int)ComPlusMethodTupleFields.Name, value); | ||
69 | } | ||
70 | } | ||
71 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusPartitionPropertyTuple.cs b/src/wixext/Tuples/ComPlusPartitionPropertyTuple.cs new file mode 100644 index 00000000..3427b10a --- /dev/null +++ b/src/wixext/Tuples/ComPlusPartitionPropertyTuple.cs | |||
@@ -0,0 +1,63 @@ | |||
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 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusPartitionProperty = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusPartitionProperty.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusPartitionPropertyTupleFields.Partition_), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusPartitionPropertyTupleFields.Name), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusPartitionPropertyTupleFields.Value), IntermediateFieldType.String), | ||
17 | }, | ||
18 | typeof(ComPlusPartitionPropertyTuple)); | ||
19 | } | ||
20 | } | ||
21 | |||
22 | namespace WixToolset.ComPlus.Tuples | ||
23 | { | ||
24 | using WixToolset.Data; | ||
25 | |||
26 | public enum ComPlusPartitionPropertyTupleFields | ||
27 | { | ||
28 | Partition_, | ||
29 | Name, | ||
30 | Value, | ||
31 | } | ||
32 | |||
33 | public class ComPlusPartitionPropertyTuple : IntermediateTuple | ||
34 | { | ||
35 | public ComPlusPartitionPropertyTuple() : base(ComPlusTupleDefinitions.ComPlusPartitionProperty, null, null) | ||
36 | { | ||
37 | } | ||
38 | |||
39 | public ComPlusPartitionPropertyTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusPartitionProperty, sourceLineNumber, id) | ||
40 | { | ||
41 | } | ||
42 | |||
43 | public IntermediateField this[ComPlusPartitionPropertyTupleFields index] => this.Fields[(int)index]; | ||
44 | |||
45 | public string Partition_ | ||
46 | { | ||
47 | get => this.Fields[(int)ComPlusPartitionPropertyTupleFields.Partition_].AsString(); | ||
48 | set => this.Set((int)ComPlusPartitionPropertyTupleFields.Partition_, value); | ||
49 | } | ||
50 | |||
51 | public string Name | ||
52 | { | ||
53 | get => this.Fields[(int)ComPlusPartitionPropertyTupleFields.Name].AsString(); | ||
54 | set => this.Set((int)ComPlusPartitionPropertyTupleFields.Name, value); | ||
55 | } | ||
56 | |||
57 | public string Value | ||
58 | { | ||
59 | get => this.Fields[(int)ComPlusPartitionPropertyTupleFields.Value].AsString(); | ||
60 | set => this.Set((int)ComPlusPartitionPropertyTupleFields.Value, value); | ||
61 | } | ||
62 | } | ||
63 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusPartitionRoleTuple.cs b/src/wixext/Tuples/ComPlusPartitionRoleTuple.cs new file mode 100644 index 00000000..a2259cc6 --- /dev/null +++ b/src/wixext/Tuples/ComPlusPartitionRoleTuple.cs | |||
@@ -0,0 +1,71 @@ | |||
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 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusPartitionRole = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusPartitionRole.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusPartitionRoleTupleFields.PartitionRole), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusPartitionRoleTupleFields.Partition_), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusPartitionRoleTupleFields.Component_), IntermediateFieldType.String), | ||
17 | new IntermediateFieldDefinition(nameof(ComPlusPartitionRoleTupleFields.Name), IntermediateFieldType.String), | ||
18 | }, | ||
19 | typeof(ComPlusPartitionRoleTuple)); | ||
20 | } | ||
21 | } | ||
22 | |||
23 | namespace WixToolset.ComPlus.Tuples | ||
24 | { | ||
25 | using WixToolset.Data; | ||
26 | |||
27 | public enum ComPlusPartitionRoleTupleFields | ||
28 | { | ||
29 | PartitionRole, | ||
30 | Partition_, | ||
31 | Component_, | ||
32 | Name, | ||
33 | } | ||
34 | |||
35 | public class ComPlusPartitionRoleTuple : IntermediateTuple | ||
36 | { | ||
37 | public ComPlusPartitionRoleTuple() : base(ComPlusTupleDefinitions.ComPlusPartitionRole, null, null) | ||
38 | { | ||
39 | } | ||
40 | |||
41 | public ComPlusPartitionRoleTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusPartitionRole, sourceLineNumber, id) | ||
42 | { | ||
43 | } | ||
44 | |||
45 | public IntermediateField this[ComPlusPartitionRoleTupleFields index] => this.Fields[(int)index]; | ||
46 | |||
47 | public string PartitionRole | ||
48 | { | ||
49 | get => this.Fields[(int)ComPlusPartitionRoleTupleFields.PartitionRole].AsString(); | ||
50 | set => this.Set((int)ComPlusPartitionRoleTupleFields.PartitionRole, value); | ||
51 | } | ||
52 | |||
53 | public string Partition_ | ||
54 | { | ||
55 | get => this.Fields[(int)ComPlusPartitionRoleTupleFields.Partition_].AsString(); | ||
56 | set => this.Set((int)ComPlusPartitionRoleTupleFields.Partition_, value); | ||
57 | } | ||
58 | |||
59 | public string Component_ | ||
60 | { | ||
61 | get => this.Fields[(int)ComPlusPartitionRoleTupleFields.Component_].AsString(); | ||
62 | set => this.Set((int)ComPlusPartitionRoleTupleFields.Component_, value); | ||
63 | } | ||
64 | |||
65 | public string Name | ||
66 | { | ||
67 | get => this.Fields[(int)ComPlusPartitionRoleTupleFields.Name].AsString(); | ||
68 | set => this.Set((int)ComPlusPartitionRoleTupleFields.Name, value); | ||
69 | } | ||
70 | } | ||
71 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusPartitionTuple.cs b/src/wixext/Tuples/ComPlusPartitionTuple.cs new file mode 100644 index 00000000..68de9955 --- /dev/null +++ b/src/wixext/Tuples/ComPlusPartitionTuple.cs | |||
@@ -0,0 +1,71 @@ | |||
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 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusPartition = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusPartition.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusPartitionTupleFields.Partition), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusPartitionTupleFields.Component_), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusPartitionTupleFields.CustomId), IntermediateFieldType.String), | ||
17 | new IntermediateFieldDefinition(nameof(ComPlusPartitionTupleFields.Name), IntermediateFieldType.String), | ||
18 | }, | ||
19 | typeof(ComPlusPartitionTuple)); | ||
20 | } | ||
21 | } | ||
22 | |||
23 | namespace WixToolset.ComPlus.Tuples | ||
24 | { | ||
25 | using WixToolset.Data; | ||
26 | |||
27 | public enum ComPlusPartitionTupleFields | ||
28 | { | ||
29 | Partition, | ||
30 | Component_, | ||
31 | CustomId, | ||
32 | Name, | ||
33 | } | ||
34 | |||
35 | public class ComPlusPartitionTuple : IntermediateTuple | ||
36 | { | ||
37 | public ComPlusPartitionTuple() : base(ComPlusTupleDefinitions.ComPlusPartition, null, null) | ||
38 | { | ||
39 | } | ||
40 | |||
41 | public ComPlusPartitionTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusPartition, sourceLineNumber, id) | ||
42 | { | ||
43 | } | ||
44 | |||
45 | public IntermediateField this[ComPlusPartitionTupleFields index] => this.Fields[(int)index]; | ||
46 | |||
47 | public string Partition | ||
48 | { | ||
49 | get => this.Fields[(int)ComPlusPartitionTupleFields.Partition].AsString(); | ||
50 | set => this.Set((int)ComPlusPartitionTupleFields.Partition, value); | ||
51 | } | ||
52 | |||
53 | public string Component_ | ||
54 | { | ||
55 | get => this.Fields[(int)ComPlusPartitionTupleFields.Component_].AsString(); | ||
56 | set => this.Set((int)ComPlusPartitionTupleFields.Component_, value); | ||
57 | } | ||
58 | |||
59 | public string CustomId | ||
60 | { | ||
61 | get => this.Fields[(int)ComPlusPartitionTupleFields.CustomId].AsString(); | ||
62 | set => this.Set((int)ComPlusPartitionTupleFields.CustomId, value); | ||
63 | } | ||
64 | |||
65 | public string Name | ||
66 | { | ||
67 | get => this.Fields[(int)ComPlusPartitionTupleFields.Name].AsString(); | ||
68 | set => this.Set((int)ComPlusPartitionTupleFields.Name, value); | ||
69 | } | ||
70 | } | ||
71 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusPartitionUserTuple.cs b/src/wixext/Tuples/ComPlusPartitionUserTuple.cs new file mode 100644 index 00000000..33a58d38 --- /dev/null +++ b/src/wixext/Tuples/ComPlusPartitionUserTuple.cs | |||
@@ -0,0 +1,71 @@ | |||
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 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusPartitionUser = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusPartitionUser.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusPartitionUserTupleFields.PartitionUser), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusPartitionUserTupleFields.Partition_), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusPartitionUserTupleFields.Component_), IntermediateFieldType.String), | ||
17 | new IntermediateFieldDefinition(nameof(ComPlusPartitionUserTupleFields.User_), IntermediateFieldType.String), | ||
18 | }, | ||
19 | typeof(ComPlusPartitionUserTuple)); | ||
20 | } | ||
21 | } | ||
22 | |||
23 | namespace WixToolset.ComPlus.Tuples | ||
24 | { | ||
25 | using WixToolset.Data; | ||
26 | |||
27 | public enum ComPlusPartitionUserTupleFields | ||
28 | { | ||
29 | PartitionUser, | ||
30 | Partition_, | ||
31 | Component_, | ||
32 | User_, | ||
33 | } | ||
34 | |||
35 | public class ComPlusPartitionUserTuple : IntermediateTuple | ||
36 | { | ||
37 | public ComPlusPartitionUserTuple() : base(ComPlusTupleDefinitions.ComPlusPartitionUser, null, null) | ||
38 | { | ||
39 | } | ||
40 | |||
41 | public ComPlusPartitionUserTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusPartitionUser, sourceLineNumber, id) | ||
42 | { | ||
43 | } | ||
44 | |||
45 | public IntermediateField this[ComPlusPartitionUserTupleFields index] => this.Fields[(int)index]; | ||
46 | |||
47 | public string PartitionUser | ||
48 | { | ||
49 | get => this.Fields[(int)ComPlusPartitionUserTupleFields.PartitionUser].AsString(); | ||
50 | set => this.Set((int)ComPlusPartitionUserTupleFields.PartitionUser, value); | ||
51 | } | ||
52 | |||
53 | public string Partition_ | ||
54 | { | ||
55 | get => this.Fields[(int)ComPlusPartitionUserTupleFields.Partition_].AsString(); | ||
56 | set => this.Set((int)ComPlusPartitionUserTupleFields.Partition_, value); | ||
57 | } | ||
58 | |||
59 | public string Component_ | ||
60 | { | ||
61 | get => this.Fields[(int)ComPlusPartitionUserTupleFields.Component_].AsString(); | ||
62 | set => this.Set((int)ComPlusPartitionUserTupleFields.Component_, value); | ||
63 | } | ||
64 | |||
65 | public string User_ | ||
66 | { | ||
67 | get => this.Fields[(int)ComPlusPartitionUserTupleFields.User_].AsString(); | ||
68 | set => this.Set((int)ComPlusPartitionUserTupleFields.User_, value); | ||
69 | } | ||
70 | } | ||
71 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusRoleForComponentTuple.cs b/src/wixext/Tuples/ComPlusRoleForComponentTuple.cs new file mode 100644 index 00000000..75d8cfaf --- /dev/null +++ b/src/wixext/Tuples/ComPlusRoleForComponentTuple.cs | |||
@@ -0,0 +1,71 @@ | |||
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 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusRoleForComponent = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusRoleForComponent.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusRoleForComponentTupleFields.RoleForComponent), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusRoleForComponentTupleFields.ComPlusComponent_), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusRoleForComponentTupleFields.ApplicationRole_), IntermediateFieldType.String), | ||
17 | new IntermediateFieldDefinition(nameof(ComPlusRoleForComponentTupleFields.Component_), IntermediateFieldType.String), | ||
18 | }, | ||
19 | typeof(ComPlusRoleForComponentTuple)); | ||
20 | } | ||
21 | } | ||
22 | |||
23 | namespace WixToolset.ComPlus.Tuples | ||
24 | { | ||
25 | using WixToolset.Data; | ||
26 | |||
27 | public enum ComPlusRoleForComponentTupleFields | ||
28 | { | ||
29 | RoleForComponent, | ||
30 | ComPlusComponent_, | ||
31 | ApplicationRole_, | ||
32 | Component_, | ||
33 | } | ||
34 | |||
35 | public class ComPlusRoleForComponentTuple : IntermediateTuple | ||
36 | { | ||
37 | public ComPlusRoleForComponentTuple() : base(ComPlusTupleDefinitions.ComPlusRoleForComponent, null, null) | ||
38 | { | ||
39 | } | ||
40 | |||
41 | public ComPlusRoleForComponentTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusRoleForComponent, sourceLineNumber, id) | ||
42 | { | ||
43 | } | ||
44 | |||
45 | public IntermediateField this[ComPlusRoleForComponentTupleFields index] => this.Fields[(int)index]; | ||
46 | |||
47 | public string RoleForComponent | ||
48 | { | ||
49 | get => this.Fields[(int)ComPlusRoleForComponentTupleFields.RoleForComponent].AsString(); | ||
50 | set => this.Set((int)ComPlusRoleForComponentTupleFields.RoleForComponent, value); | ||
51 | } | ||
52 | |||
53 | public string ComPlusComponent_ | ||
54 | { | ||
55 | get => this.Fields[(int)ComPlusRoleForComponentTupleFields.ComPlusComponent_].AsString(); | ||
56 | set => this.Set((int)ComPlusRoleForComponentTupleFields.ComPlusComponent_, value); | ||
57 | } | ||
58 | |||
59 | public string ApplicationRole_ | ||
60 | { | ||
61 | get => this.Fields[(int)ComPlusRoleForComponentTupleFields.ApplicationRole_].AsString(); | ||
62 | set => this.Set((int)ComPlusRoleForComponentTupleFields.ApplicationRole_, value); | ||
63 | } | ||
64 | |||
65 | public string Component_ | ||
66 | { | ||
67 | get => this.Fields[(int)ComPlusRoleForComponentTupleFields.Component_].AsString(); | ||
68 | set => this.Set((int)ComPlusRoleForComponentTupleFields.Component_, value); | ||
69 | } | ||
70 | } | ||
71 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusRoleForInterfaceTuple.cs b/src/wixext/Tuples/ComPlusRoleForInterfaceTuple.cs new file mode 100644 index 00000000..139417d3 --- /dev/null +++ b/src/wixext/Tuples/ComPlusRoleForInterfaceTuple.cs | |||
@@ -0,0 +1,71 @@ | |||
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 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusRoleForInterface = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusRoleForInterface.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusRoleForInterfaceTupleFields.RoleForInterface), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusRoleForInterfaceTupleFields.Interface_), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusRoleForInterfaceTupleFields.ApplicationRole_), IntermediateFieldType.String), | ||
17 | new IntermediateFieldDefinition(nameof(ComPlusRoleForInterfaceTupleFields.Component_), IntermediateFieldType.String), | ||
18 | }, | ||
19 | typeof(ComPlusRoleForInterfaceTuple)); | ||
20 | } | ||
21 | } | ||
22 | |||
23 | namespace WixToolset.ComPlus.Tuples | ||
24 | { | ||
25 | using WixToolset.Data; | ||
26 | |||
27 | public enum ComPlusRoleForInterfaceTupleFields | ||
28 | { | ||
29 | RoleForInterface, | ||
30 | Interface_, | ||
31 | ApplicationRole_, | ||
32 | Component_, | ||
33 | } | ||
34 | |||
35 | public class ComPlusRoleForInterfaceTuple : IntermediateTuple | ||
36 | { | ||
37 | public ComPlusRoleForInterfaceTuple() : base(ComPlusTupleDefinitions.ComPlusRoleForInterface, null, null) | ||
38 | { | ||
39 | } | ||
40 | |||
41 | public ComPlusRoleForInterfaceTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusRoleForInterface, sourceLineNumber, id) | ||
42 | { | ||
43 | } | ||
44 | |||
45 | public IntermediateField this[ComPlusRoleForInterfaceTupleFields index] => this.Fields[(int)index]; | ||
46 | |||
47 | public string RoleForInterface | ||
48 | { | ||
49 | get => this.Fields[(int)ComPlusRoleForInterfaceTupleFields.RoleForInterface].AsString(); | ||
50 | set => this.Set((int)ComPlusRoleForInterfaceTupleFields.RoleForInterface, value); | ||
51 | } | ||
52 | |||
53 | public string Interface_ | ||
54 | { | ||
55 | get => this.Fields[(int)ComPlusRoleForInterfaceTupleFields.Interface_].AsString(); | ||
56 | set => this.Set((int)ComPlusRoleForInterfaceTupleFields.Interface_, value); | ||
57 | } | ||
58 | |||
59 | public string ApplicationRole_ | ||
60 | { | ||
61 | get => this.Fields[(int)ComPlusRoleForInterfaceTupleFields.ApplicationRole_].AsString(); | ||
62 | set => this.Set((int)ComPlusRoleForInterfaceTupleFields.ApplicationRole_, value); | ||
63 | } | ||
64 | |||
65 | public string Component_ | ||
66 | { | ||
67 | get => this.Fields[(int)ComPlusRoleForInterfaceTupleFields.Component_].AsString(); | ||
68 | set => this.Set((int)ComPlusRoleForInterfaceTupleFields.Component_, value); | ||
69 | } | ||
70 | } | ||
71 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusRoleForMethodTuple.cs b/src/wixext/Tuples/ComPlusRoleForMethodTuple.cs new file mode 100644 index 00000000..5b6e994e --- /dev/null +++ b/src/wixext/Tuples/ComPlusRoleForMethodTuple.cs | |||
@@ -0,0 +1,71 @@ | |||
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 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusRoleForMethod = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusRoleForMethod.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusRoleForMethodTupleFields.RoleForMethod), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusRoleForMethodTupleFields.Method_), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusRoleForMethodTupleFields.ApplicationRole_), IntermediateFieldType.String), | ||
17 | new IntermediateFieldDefinition(nameof(ComPlusRoleForMethodTupleFields.Component_), IntermediateFieldType.String), | ||
18 | }, | ||
19 | typeof(ComPlusRoleForMethodTuple)); | ||
20 | } | ||
21 | } | ||
22 | |||
23 | namespace WixToolset.ComPlus.Tuples | ||
24 | { | ||
25 | using WixToolset.Data; | ||
26 | |||
27 | public enum ComPlusRoleForMethodTupleFields | ||
28 | { | ||
29 | RoleForMethod, | ||
30 | Method_, | ||
31 | ApplicationRole_, | ||
32 | Component_, | ||
33 | } | ||
34 | |||
35 | public class ComPlusRoleForMethodTuple : IntermediateTuple | ||
36 | { | ||
37 | public ComPlusRoleForMethodTuple() : base(ComPlusTupleDefinitions.ComPlusRoleForMethod, null, null) | ||
38 | { | ||
39 | } | ||
40 | |||
41 | public ComPlusRoleForMethodTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusRoleForMethod, sourceLineNumber, id) | ||
42 | { | ||
43 | } | ||
44 | |||
45 | public IntermediateField this[ComPlusRoleForMethodTupleFields index] => this.Fields[(int)index]; | ||
46 | |||
47 | public string RoleForMethod | ||
48 | { | ||
49 | get => this.Fields[(int)ComPlusRoleForMethodTupleFields.RoleForMethod].AsString(); | ||
50 | set => this.Set((int)ComPlusRoleForMethodTupleFields.RoleForMethod, value); | ||
51 | } | ||
52 | |||
53 | public string Method_ | ||
54 | { | ||
55 | get => this.Fields[(int)ComPlusRoleForMethodTupleFields.Method_].AsString(); | ||
56 | set => this.Set((int)ComPlusRoleForMethodTupleFields.Method_, value); | ||
57 | } | ||
58 | |||
59 | public string ApplicationRole_ | ||
60 | { | ||
61 | get => this.Fields[(int)ComPlusRoleForMethodTupleFields.ApplicationRole_].AsString(); | ||
62 | set => this.Set((int)ComPlusRoleForMethodTupleFields.ApplicationRole_, value); | ||
63 | } | ||
64 | |||
65 | public string Component_ | ||
66 | { | ||
67 | get => this.Fields[(int)ComPlusRoleForMethodTupleFields.Component_].AsString(); | ||
68 | set => this.Set((int)ComPlusRoleForMethodTupleFields.Component_, value); | ||
69 | } | ||
70 | } | ||
71 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusSubscriptionPropertyTuple.cs b/src/wixext/Tuples/ComPlusSubscriptionPropertyTuple.cs new file mode 100644 index 00000000..ad0841f4 --- /dev/null +++ b/src/wixext/Tuples/ComPlusSubscriptionPropertyTuple.cs | |||
@@ -0,0 +1,63 @@ | |||
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 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusSubscriptionProperty = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusSubscriptionProperty.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusSubscriptionPropertyTupleFields.Subscription_), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusSubscriptionPropertyTupleFields.Name), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusSubscriptionPropertyTupleFields.Value), IntermediateFieldType.String), | ||
17 | }, | ||
18 | typeof(ComPlusSubscriptionPropertyTuple)); | ||
19 | } | ||
20 | } | ||
21 | |||
22 | namespace WixToolset.ComPlus.Tuples | ||
23 | { | ||
24 | using WixToolset.Data; | ||
25 | |||
26 | public enum ComPlusSubscriptionPropertyTupleFields | ||
27 | { | ||
28 | Subscription_, | ||
29 | Name, | ||
30 | Value, | ||
31 | } | ||
32 | |||
33 | public class ComPlusSubscriptionPropertyTuple : IntermediateTuple | ||
34 | { | ||
35 | public ComPlusSubscriptionPropertyTuple() : base(ComPlusTupleDefinitions.ComPlusSubscriptionProperty, null, null) | ||
36 | { | ||
37 | } | ||
38 | |||
39 | public ComPlusSubscriptionPropertyTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusSubscriptionProperty, sourceLineNumber, id) | ||
40 | { | ||
41 | } | ||
42 | |||
43 | public IntermediateField this[ComPlusSubscriptionPropertyTupleFields index] => this.Fields[(int)index]; | ||
44 | |||
45 | public string Subscription_ | ||
46 | { | ||
47 | get => this.Fields[(int)ComPlusSubscriptionPropertyTupleFields.Subscription_].AsString(); | ||
48 | set => this.Set((int)ComPlusSubscriptionPropertyTupleFields.Subscription_, value); | ||
49 | } | ||
50 | |||
51 | public string Name | ||
52 | { | ||
53 | get => this.Fields[(int)ComPlusSubscriptionPropertyTupleFields.Name].AsString(); | ||
54 | set => this.Set((int)ComPlusSubscriptionPropertyTupleFields.Name, value); | ||
55 | } | ||
56 | |||
57 | public string Value | ||
58 | { | ||
59 | get => this.Fields[(int)ComPlusSubscriptionPropertyTupleFields.Value].AsString(); | ||
60 | set => this.Set((int)ComPlusSubscriptionPropertyTupleFields.Value, value); | ||
61 | } | ||
62 | } | ||
63 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusSubscriptionTuple.cs b/src/wixext/Tuples/ComPlusSubscriptionTuple.cs new file mode 100644 index 00000000..fedab172 --- /dev/null +++ b/src/wixext/Tuples/ComPlusSubscriptionTuple.cs | |||
@@ -0,0 +1,95 @@ | |||
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 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusSubscription = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusSubscription.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusSubscriptionTupleFields.Subscription), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusSubscriptionTupleFields.ComPlusComponent_), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusSubscriptionTupleFields.Component_), IntermediateFieldType.String), | ||
17 | new IntermediateFieldDefinition(nameof(ComPlusSubscriptionTupleFields.CustomId), IntermediateFieldType.String), | ||
18 | new IntermediateFieldDefinition(nameof(ComPlusSubscriptionTupleFields.Name), IntermediateFieldType.String), | ||
19 | new IntermediateFieldDefinition(nameof(ComPlusSubscriptionTupleFields.EventCLSID), IntermediateFieldType.String), | ||
20 | new IntermediateFieldDefinition(nameof(ComPlusSubscriptionTupleFields.PublisherID), IntermediateFieldType.String), | ||
21 | }, | ||
22 | typeof(ComPlusSubscriptionTuple)); | ||
23 | } | ||
24 | } | ||
25 | |||
26 | namespace WixToolset.ComPlus.Tuples | ||
27 | { | ||
28 | using WixToolset.Data; | ||
29 | |||
30 | public enum ComPlusSubscriptionTupleFields | ||
31 | { | ||
32 | Subscription, | ||
33 | ComPlusComponent_, | ||
34 | Component_, | ||
35 | CustomId, | ||
36 | Name, | ||
37 | EventCLSID, | ||
38 | PublisherID, | ||
39 | } | ||
40 | |||
41 | public class ComPlusSubscriptionTuple : IntermediateTuple | ||
42 | { | ||
43 | public ComPlusSubscriptionTuple() : base(ComPlusTupleDefinitions.ComPlusSubscription, null, null) | ||
44 | { | ||
45 | } | ||
46 | |||
47 | public ComPlusSubscriptionTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusSubscription, sourceLineNumber, id) | ||
48 | { | ||
49 | } | ||
50 | |||
51 | public IntermediateField this[ComPlusSubscriptionTupleFields index] => this.Fields[(int)index]; | ||
52 | |||
53 | public string Subscription | ||
54 | { | ||
55 | get => this.Fields[(int)ComPlusSubscriptionTupleFields.Subscription].AsString(); | ||
56 | set => this.Set((int)ComPlusSubscriptionTupleFields.Subscription, value); | ||
57 | } | ||
58 | |||
59 | public string ComPlusComponent_ | ||
60 | { | ||
61 | get => this.Fields[(int)ComPlusSubscriptionTupleFields.ComPlusComponent_].AsString(); | ||
62 | set => this.Set((int)ComPlusSubscriptionTupleFields.ComPlusComponent_, value); | ||
63 | } | ||
64 | |||
65 | public string Component_ | ||
66 | { | ||
67 | get => this.Fields[(int)ComPlusSubscriptionTupleFields.Component_].AsString(); | ||
68 | set => this.Set((int)ComPlusSubscriptionTupleFields.Component_, value); | ||
69 | } | ||
70 | |||
71 | public string CustomId | ||
72 | { | ||
73 | get => this.Fields[(int)ComPlusSubscriptionTupleFields.CustomId].AsString(); | ||
74 | set => this.Set((int)ComPlusSubscriptionTupleFields.CustomId, value); | ||
75 | } | ||
76 | |||
77 | public string Name | ||
78 | { | ||
79 | get => this.Fields[(int)ComPlusSubscriptionTupleFields.Name].AsString(); | ||
80 | set => this.Set((int)ComPlusSubscriptionTupleFields.Name, value); | ||
81 | } | ||
82 | |||
83 | public string EventCLSID | ||
84 | { | ||
85 | get => this.Fields[(int)ComPlusSubscriptionTupleFields.EventCLSID].AsString(); | ||
86 | set => this.Set((int)ComPlusSubscriptionTupleFields.EventCLSID, value); | ||
87 | } | ||
88 | |||
89 | public string PublisherID | ||
90 | { | ||
91 | get => this.Fields[(int)ComPlusSubscriptionTupleFields.PublisherID].AsString(); | ||
92 | set => this.Set((int)ComPlusSubscriptionTupleFields.PublisherID, value); | ||
93 | } | ||
94 | } | ||
95 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusTupleDefinitions.cs b/src/wixext/Tuples/ComPlusTupleDefinitions.cs new file mode 100644 index 00000000..1019c046 --- /dev/null +++ b/src/wixext/Tuples/ComPlusTupleDefinitions.cs | |||
@@ -0,0 +1,135 @@ | |||
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 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using System; | ||
6 | using WixToolset.Data; | ||
7 | |||
8 | public enum ComPlusTupleDefinitionType | ||
9 | { | ||
10 | ComPlusApplication, | ||
11 | ComPlusApplicationProperty, | ||
12 | ComPlusApplicationRole, | ||
13 | ComPlusApplicationRoleProperty, | ||
14 | ComPlusAssembly, | ||
15 | ComPlusAssemblyDependency, | ||
16 | ComPlusComponent, | ||
17 | ComPlusComponentProperty, | ||
18 | ComPlusGroupInApplicationRole, | ||
19 | ComPlusGroupInPartitionRole, | ||
20 | ComPlusInterface, | ||
21 | ComPlusInterfaceProperty, | ||
22 | ComPlusMethod, | ||
23 | ComPlusMethodProperty, | ||
24 | ComPlusPartition, | ||
25 | ComPlusPartitionProperty, | ||
26 | ComPlusPartitionRole, | ||
27 | ComPlusPartitionUser, | ||
28 | ComPlusRoleForComponent, | ||
29 | ComPlusRoleForInterface, | ||
30 | ComPlusRoleForMethod, | ||
31 | ComPlusSubscription, | ||
32 | ComPlusSubscriptionProperty, | ||
33 | ComPlusUserInApplicationRole, | ||
34 | ComPlusUserInPartitionRole, | ||
35 | } | ||
36 | |||
37 | public static partial class ComPlusTupleDefinitions | ||
38 | { | ||
39 | public static readonly Version Version = new Version("4.0.0"); | ||
40 | |||
41 | public static IntermediateTupleDefinition ByName(string name) | ||
42 | { | ||
43 | if (!Enum.TryParse(name, out ComPlusTupleDefinitionType type)) | ||
44 | { | ||
45 | return null; | ||
46 | } | ||
47 | |||
48 | return ByType(type); | ||
49 | } | ||
50 | |||
51 | public static IntermediateTupleDefinition ByType(ComPlusTupleDefinitionType type) | ||
52 | { | ||
53 | switch (type) | ||
54 | { | ||
55 | case ComPlusTupleDefinitionType.ComPlusApplication: | ||
56 | return ComPlusTupleDefinitions.ComPlusApplication; | ||
57 | |||
58 | case ComPlusTupleDefinitionType.ComPlusApplicationProperty: | ||
59 | return ComPlusTupleDefinitions.ComPlusApplicationProperty; | ||
60 | |||
61 | case ComPlusTupleDefinitionType.ComPlusApplicationRole: | ||
62 | return ComPlusTupleDefinitions.ComPlusApplicationRole; | ||
63 | |||
64 | case ComPlusTupleDefinitionType.ComPlusApplicationRoleProperty: | ||
65 | return ComPlusTupleDefinitions.ComPlusApplicationRoleProperty; | ||
66 | |||
67 | case ComPlusTupleDefinitionType.ComPlusAssembly: | ||
68 | return ComPlusTupleDefinitions.ComPlusAssembly; | ||
69 | |||
70 | case ComPlusTupleDefinitionType.ComPlusAssemblyDependency: | ||
71 | return ComPlusTupleDefinitions.ComPlusAssemblyDependency; | ||
72 | |||
73 | case ComPlusTupleDefinitionType.ComPlusComponent: | ||
74 | return ComPlusTupleDefinitions.ComPlusComponent; | ||
75 | |||
76 | case ComPlusTupleDefinitionType.ComPlusComponentProperty: | ||
77 | return ComPlusTupleDefinitions.ComPlusComponentProperty; | ||
78 | |||
79 | case ComPlusTupleDefinitionType.ComPlusGroupInApplicationRole: | ||
80 | return ComPlusTupleDefinitions.ComPlusGroupInApplicationRole; | ||
81 | |||
82 | case ComPlusTupleDefinitionType.ComPlusGroupInPartitionRole: | ||
83 | return ComPlusTupleDefinitions.ComPlusGroupInPartitionRole; | ||
84 | |||
85 | case ComPlusTupleDefinitionType.ComPlusInterface: | ||
86 | return ComPlusTupleDefinitions.ComPlusInterface; | ||
87 | |||
88 | case ComPlusTupleDefinitionType.ComPlusInterfaceProperty: | ||
89 | return ComPlusTupleDefinitions.ComPlusInterfaceProperty; | ||
90 | |||
91 | case ComPlusTupleDefinitionType.ComPlusMethod: | ||
92 | return ComPlusTupleDefinitions.ComPlusMethod; | ||
93 | |||
94 | case ComPlusTupleDefinitionType.ComPlusMethodProperty: | ||
95 | return ComPlusTupleDefinitions.ComPlusMethodProperty; | ||
96 | |||
97 | case ComPlusTupleDefinitionType.ComPlusPartition: | ||
98 | return ComPlusTupleDefinitions.ComPlusPartition; | ||
99 | |||
100 | case ComPlusTupleDefinitionType.ComPlusPartitionProperty: | ||
101 | return ComPlusTupleDefinitions.ComPlusPartitionProperty; | ||
102 | |||
103 | case ComPlusTupleDefinitionType.ComPlusPartitionRole: | ||
104 | return ComPlusTupleDefinitions.ComPlusPartitionRole; | ||
105 | |||
106 | case ComPlusTupleDefinitionType.ComPlusPartitionUser: | ||
107 | return ComPlusTupleDefinitions.ComPlusPartitionUser; | ||
108 | |||
109 | case ComPlusTupleDefinitionType.ComPlusRoleForComponent: | ||
110 | return ComPlusTupleDefinitions.ComPlusRoleForComponent; | ||
111 | |||
112 | case ComPlusTupleDefinitionType.ComPlusRoleForInterface: | ||
113 | return ComPlusTupleDefinitions.ComPlusRoleForInterface; | ||
114 | |||
115 | case ComPlusTupleDefinitionType.ComPlusRoleForMethod: | ||
116 | return ComPlusTupleDefinitions.ComPlusRoleForMethod; | ||
117 | |||
118 | case ComPlusTupleDefinitionType.ComPlusSubscription: | ||
119 | return ComPlusTupleDefinitions.ComPlusSubscription; | ||
120 | |||
121 | case ComPlusTupleDefinitionType.ComPlusSubscriptionProperty: | ||
122 | return ComPlusTupleDefinitions.ComPlusSubscriptionProperty; | ||
123 | |||
124 | case ComPlusTupleDefinitionType.ComPlusUserInApplicationRole: | ||
125 | return ComPlusTupleDefinitions.ComPlusUserInApplicationRole; | ||
126 | |||
127 | case ComPlusTupleDefinitionType.ComPlusUserInPartitionRole: | ||
128 | return ComPlusTupleDefinitions.ComPlusUserInPartitionRole; | ||
129 | |||
130 | default: | ||
131 | throw new ArgumentOutOfRangeException(nameof(type)); | ||
132 | } | ||
133 | } | ||
134 | } | ||
135 | } | ||
diff --git a/src/wixext/Tuples/ComPlusUserInApplicationRoleTuple.cs b/src/wixext/Tuples/ComPlusUserInApplicationRoleTuple.cs new file mode 100644 index 00000000..3916c0ee --- /dev/null +++ b/src/wixext/Tuples/ComPlusUserInApplicationRoleTuple.cs | |||
@@ -0,0 +1,71 @@ | |||
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 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusUserInApplicationRole = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusUserInApplicationRole.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusUserInApplicationRoleTupleFields.UserInApplicationRole), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusUserInApplicationRoleTupleFields.ApplicationRole_), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusUserInApplicationRoleTupleFields.Component_), IntermediateFieldType.String), | ||
17 | new IntermediateFieldDefinition(nameof(ComPlusUserInApplicationRoleTupleFields.User_), IntermediateFieldType.String), | ||
18 | }, | ||
19 | typeof(ComPlusUserInApplicationRoleTuple)); | ||
20 | } | ||
21 | } | ||
22 | |||
23 | namespace WixToolset.ComPlus.Tuples | ||
24 | { | ||
25 | using WixToolset.Data; | ||
26 | |||
27 | public enum ComPlusUserInApplicationRoleTupleFields | ||
28 | { | ||
29 | UserInApplicationRole, | ||
30 | ApplicationRole_, | ||
31 | Component_, | ||
32 | User_, | ||
33 | } | ||
34 | |||
35 | public class ComPlusUserInApplicationRoleTuple : IntermediateTuple | ||
36 | { | ||
37 | public ComPlusUserInApplicationRoleTuple() : base(ComPlusTupleDefinitions.ComPlusUserInApplicationRole, null, null) | ||
38 | { | ||
39 | } | ||
40 | |||
41 | public ComPlusUserInApplicationRoleTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusUserInApplicationRole, sourceLineNumber, id) | ||
42 | { | ||
43 | } | ||
44 | |||
45 | public IntermediateField this[ComPlusUserInApplicationRoleTupleFields index] => this.Fields[(int)index]; | ||
46 | |||
47 | public string UserInApplicationRole | ||
48 | { | ||
49 | get => this.Fields[(int)ComPlusUserInApplicationRoleTupleFields.UserInApplicationRole].AsString(); | ||
50 | set => this.Set((int)ComPlusUserInApplicationRoleTupleFields.UserInApplicationRole, value); | ||
51 | } | ||
52 | |||
53 | public string ApplicationRole_ | ||
54 | { | ||
55 | get => this.Fields[(int)ComPlusUserInApplicationRoleTupleFields.ApplicationRole_].AsString(); | ||
56 | set => this.Set((int)ComPlusUserInApplicationRoleTupleFields.ApplicationRole_, value); | ||
57 | } | ||
58 | |||
59 | public string Component_ | ||
60 | { | ||
61 | get => this.Fields[(int)ComPlusUserInApplicationRoleTupleFields.Component_].AsString(); | ||
62 | set => this.Set((int)ComPlusUserInApplicationRoleTupleFields.Component_, value); | ||
63 | } | ||
64 | |||
65 | public string User_ | ||
66 | { | ||
67 | get => this.Fields[(int)ComPlusUserInApplicationRoleTupleFields.User_].AsString(); | ||
68 | set => this.Set((int)ComPlusUserInApplicationRoleTupleFields.User_, value); | ||
69 | } | ||
70 | } | ||
71 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusUserInPartitionRoleTuple.cs b/src/wixext/Tuples/ComPlusUserInPartitionRoleTuple.cs new file mode 100644 index 00000000..06d742b8 --- /dev/null +++ b/src/wixext/Tuples/ComPlusUserInPartitionRoleTuple.cs | |||
@@ -0,0 +1,71 @@ | |||
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 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusUserInPartitionRole = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusUserInPartitionRole.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusUserInPartitionRoleTupleFields.UserInPartitionRole), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusUserInPartitionRoleTupleFields.PartitionRole_), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusUserInPartitionRoleTupleFields.Component_), IntermediateFieldType.String), | ||
17 | new IntermediateFieldDefinition(nameof(ComPlusUserInPartitionRoleTupleFields.User_), IntermediateFieldType.String), | ||
18 | }, | ||
19 | typeof(ComPlusUserInPartitionRoleTuple)); | ||
20 | } | ||
21 | } | ||
22 | |||
23 | namespace WixToolset.ComPlus.Tuples | ||
24 | { | ||
25 | using WixToolset.Data; | ||
26 | |||
27 | public enum ComPlusUserInPartitionRoleTupleFields | ||
28 | { | ||
29 | UserInPartitionRole, | ||
30 | PartitionRole_, | ||
31 | Component_, | ||
32 | User_, | ||
33 | } | ||
34 | |||
35 | public class ComPlusUserInPartitionRoleTuple : IntermediateTuple | ||
36 | { | ||
37 | public ComPlusUserInPartitionRoleTuple() : base(ComPlusTupleDefinitions.ComPlusUserInPartitionRole, null, null) | ||
38 | { | ||
39 | } | ||
40 | |||
41 | public ComPlusUserInPartitionRoleTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusUserInPartitionRole, sourceLineNumber, id) | ||
42 | { | ||
43 | } | ||
44 | |||
45 | public IntermediateField this[ComPlusUserInPartitionRoleTupleFields index] => this.Fields[(int)index]; | ||
46 | |||
47 | public string UserInPartitionRole | ||
48 | { | ||
49 | get => this.Fields[(int)ComPlusUserInPartitionRoleTupleFields.UserInPartitionRole].AsString(); | ||
50 | set => this.Set((int)ComPlusUserInPartitionRoleTupleFields.UserInPartitionRole, value); | ||
51 | } | ||
52 | |||
53 | public string PartitionRole_ | ||
54 | { | ||
55 | get => this.Fields[(int)ComPlusUserInPartitionRoleTupleFields.PartitionRole_].AsString(); | ||
56 | set => this.Set((int)ComPlusUserInPartitionRoleTupleFields.PartitionRole_, value); | ||
57 | } | ||
58 | |||
59 | public string Component_ | ||
60 | { | ||
61 | get => this.Fields[(int)ComPlusUserInPartitionRoleTupleFields.Component_].AsString(); | ||
62 | set => this.Set((int)ComPlusUserInPartitionRoleTupleFields.Component_, value); | ||
63 | } | ||
64 | |||
65 | public string User_ | ||
66 | { | ||
67 | get => this.Fields[(int)ComPlusUserInPartitionRoleTupleFields.User_].AsString(); | ||
68 | set => this.Set((int)ComPlusUserInPartitionRoleTupleFields.User_, value); | ||
69 | } | ||
70 | } | ||
71 | } \ No newline at end of file | ||
diff --git a/src/wixext/WixComPlusExtension.csproj b/src/wixext/WixComPlusExtension.csproj deleted file mode 100644 index 92cbacae..00000000 --- a/src/wixext/WixComPlusExtension.csproj +++ /dev/null | |||
@@ -1,50 +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 | <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0"> | ||
6 | <PropertyGroup> | ||
7 | <ProjectGuid>{1497B777-330B-4CFE-927A-22850CD24D64}</ProjectGuid> | ||
8 | <AssemblyName>WixComPlusExtension</AssemblyName> | ||
9 | <OutputType>Library</OutputType> | ||
10 | <RootNamespace>WixToolset.Extensions</RootNamespace> | ||
11 | </PropertyGroup> | ||
12 | <ItemGroup> | ||
13 | <Compile Include="AssemblyInfo.cs" /> | ||
14 | <Compile Include="ComPlusCompiler.cs" /> | ||
15 | <Compile Include="ComPlusDecompiler.cs" /> | ||
16 | <Compile Include="ComPlusExtensionData.cs" /> | ||
17 | <MsgGenSource Include="Data\messages.xml"> | ||
18 | <ResourcesLogicalName>$(RootNamespace).Data.Messages.resources</ResourcesLogicalName> | ||
19 | </MsgGenSource> | ||
20 | <EmbeddedFlattenedResource Include="Data\tables.xml"> | ||
21 | <LogicalName>$(RootNamespace).Data.tables.xml</LogicalName> | ||
22 | </EmbeddedFlattenedResource> | ||
23 | <EmbeddedFlattenedResource Include="Xsd\complus.xsd"> | ||
24 | <LogicalName>$(RootNamespace).Xsd.complus.xsd</LogicalName> | ||
25 | </EmbeddedFlattenedResource> | ||
26 | <XsdGenSource Include="Xsd\complus.xsd"> | ||
27 | <CommonNamespace>WixToolset.Data.Serialize</CommonNamespace> | ||
28 | <Namespace>WixToolset.Extensions.Serialize.ComPlus</Namespace> | ||
29 | </XsdGenSource> | ||
30 | <None Include="Xsd\complus.xsd"> | ||
31 | <Link>complus.xsd</Link> | ||
32 | <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> | ||
33 | </None> | ||
34 | <EmbeddedResource Include="$(OutputPath)\complus.wixlib"> | ||
35 | <Link>Data\complus.wixlib</Link> | ||
36 | </EmbeddedResource> | ||
37 | </ItemGroup> | ||
38 | <ItemGroup> | ||
39 | <Reference Include="System" /> | ||
40 | <Reference Include="System.Xml" /> | ||
41 | <Reference Include="System.Xml.Linq" /> | ||
42 | <ProjectReference Include="..\..\..\libs\WixToolset.Data\WixToolset.Data.csproj" /> | ||
43 | <ProjectReference Include="..\..\..\libs\WixToolset.Extensibility\WixToolset.Extensibility.csproj" /> | ||
44 | <ProjectReference Include="..\..\..\tools\wix\Wix.csproj" /> | ||
45 | <ProjectReference Include="..\wixlib\ComPlusExtension.wixproj"> | ||
46 | <ReferenceOutputAssembly>false</ReferenceOutputAssembly> | ||
47 | </ProjectReference> | ||
48 | </ItemGroup> | ||
49 | <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildProjectDirectory), wix.proj))\tools\WixBuild.targets" /> | ||
50 | </Project> | ||
diff --git a/src/wixext/WixToolset.ComPlus.wixext.csproj b/src/wixext/WixToolset.ComPlus.wixext.csproj new file mode 100644 index 00000000..882dc7e1 --- /dev/null +++ b/src/wixext/WixToolset.ComPlus.wixext.csproj | |||
@@ -0,0 +1,33 @@ | |||
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 | <Project Sdk="Microsoft.NET.Sdk"> | ||
5 | <PropertyGroup> | ||
6 | <TargetFramework>netstandard2.0</TargetFramework> | ||
7 | <RootNamespace>WixToolset.ComPlus</RootNamespace> | ||
8 | <Description>WiX Toolset ComPlus Extension</Description> | ||
9 | <Title>WiX Toolset ComPlus Extension</Title> | ||
10 | <IsTool>true</IsTool> | ||
11 | <ContentTargetFolders>build</ContentTargetFolders> | ||
12 | </PropertyGroup> | ||
13 | |||
14 | <ItemGroup> | ||
15 | <Content Include="$(MSBuildThisFileName).targets" /> | ||
16 | <Content Include="complus.xsd" PackagePath="tools" /> | ||
17 | <EmbeddedResource Include="tables.xml" /> | ||
18 | <EmbeddedResource Include="$(OutputPath)..\complus.wixlib" /> | ||
19 | </ItemGroup> | ||
20 | |||
21 | <ItemGroup> | ||
22 | <PackageReference Include="WixToolset.Data" Version="4.0.*" PrivateAssets="all" /> | ||
23 | <PackageReference Include="WixToolset.Extensibility" Version="4.0.*" PrivateAssets="all" /> | ||
24 | </ItemGroup> | ||
25 | |||
26 | <ItemGroup> | ||
27 | <ProjectReference Include="..\wixlib\complus.wixproj" ReferenceOutputAssembly="false" Condition=" '$(NCrunch)'=='' " /> | ||
28 | </ItemGroup> | ||
29 | |||
30 | <ItemGroup> | ||
31 | <PackageReference Include="Nerdbank.GitVersioning" Version="2.1.65" PrivateAssets="all" /> | ||
32 | </ItemGroup> | ||
33 | </Project> | ||
diff --git a/src/wixext/WixToolset.ComPlus.wixext.targets b/src/wixext/WixToolset.ComPlus.wixext.targets new file mode 100644 index 00000000..8115b715 --- /dev/null +++ b/src/wixext/WixToolset.ComPlus.wixext.targets | |||
@@ -0,0 +1,11 @@ | |||
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 | <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0"> | ||
5 | <PropertyGroup> | ||
6 | <WixToolsetComPlusWixextPath Condition=" '$(WixToolsetComPlusWixextPath)' == '' ">$(MSBuildThisFileDirectory)..\tools\WixToolset.ComPlus.wixext.dll</WixToolsetComPlusWixextPath> | ||
7 | </PropertyGroup> | ||
8 | <ItemGroup> | ||
9 | <WixExtension Include="$(WixToolsetComPlusWixextPath)" /> | ||
10 | </ItemGroup> | ||
11 | </Project> | ||
diff --git a/src/wixext/messages.xml b/src/wixext/messages.xml deleted file mode 100644 index 66c0a9e6..00000000 --- a/src/wixext/messages.xml +++ /dev/null | |||
@@ -1,77 +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 | <Messages Namespace="WixToolset.Extensions" Resources="Data.Messages" xmlns="http://schemas.microsoft.com/genmsgs/2004/07/messages"> | ||
6 | <Class Name="ComPlusErrors" ContainerName="ComPlusErrorEventArgs" BaseContainerName="MessageEventArgs"> | ||
7 | <Message Id="IllegalAttributeWithoutComponent" Number="6000"> | ||
8 | <Instance> | ||
9 | The {0}/@{1} attribute cannot be specified unless the element has a component as an ancestor. A {0} that does not have a component ancestor is not installed. | ||
10 | <Parameter Type="System.String" Name="elementName" /> | ||
11 | <Parameter Type="System.String" Name="attributeName" /> | ||
12 | </Instance> | ||
13 | </Message> | ||
14 | <Message Id="IllegalElementWithoutComponent" Number="6001"> | ||
15 | <Instance> | ||
16 | The {0} element cannot be specified unless the element has a component as an ancestor. A {0} that does not have a component ancestor is not installed. | ||
17 | <Parameter Type="System.String" Name="elementName" /> | ||
18 | </Instance> | ||
19 | </Message> | ||
20 | <Message Id="UnexpectedAttributeWithOtherValue" Number="6002"> | ||
21 | <Instance> | ||
22 | The {0}/@{1} attribute cannot coexist with the {2} attribute's value of '{3}'. | ||
23 | <Parameter Type="System.String" Name="elementName" /> | ||
24 | <Parameter Type="System.String" Name="attributeName" /> | ||
25 | <Parameter Type="System.String" Name="otherAttributeName" /> | ||
26 | <Parameter Type="System.String" Name="otherValue" /> | ||
27 | </Instance> | ||
28 | <Instance> | ||
29 | The {0}/@{1} attribute's value, '{2}', cannot coexist with the {3} attribute's value of '{4}'. | ||
30 | <Parameter Type="System.String" Name="elementName" /> | ||
31 | <Parameter Type="System.String" Name="attributeName" /> | ||
32 | <Parameter Type="System.String" Name="value" /> | ||
33 | <Parameter Type="System.String" Name="otherAttributeName" /> | ||
34 | <Parameter Type="System.String" Name="otherValue" /> | ||
35 | </Instance> | ||
36 | </Message> | ||
37 | <Message Id="UnexpectedAttributeWithoutOtherValue" Number="6003"> | ||
38 | <Instance> | ||
39 | The {0}/@{1} cannot be provided unless the {2} attribute is provided with a value of '{3}'. | ||
40 | <Parameter Type="System.String" Name="elementName" /> | ||
41 | <Parameter Type="System.String" Name="attributeName" /> | ||
42 | <Parameter Type="System.String" Name="otherAttributeName" /> | ||
43 | <Parameter Type="System.String" Name="otherValue" /> | ||
44 | </Instance> | ||
45 | </Message> | ||
46 | <Message Id="RequiredAttributeUnderComponent" Number="6004"> | ||
47 | <Instance> | ||
48 | The {0}/@{1} attribute must be provided when {0} element is nested under a component. | ||
49 | <Parameter Type="System.String" Name="elementName" /> | ||
50 | <Parameter Type="System.String" Name="attributeName" /> | ||
51 | </Instance> | ||
52 | </Message> | ||
53 | <Message Id="RequiredAttribute" Number="6005"> | ||
54 | <Instance> | ||
55 | A {0} element must have either a {1} attribute or a {2} attribute, or both set. | ||
56 | <Parameter Type="System.String" Name="elementName" /> | ||
57 | <Parameter Type="System.String" Name="attributeName1" /> | ||
58 | <Parameter Type="System.String" Name="attributeName2" /> | ||
59 | </Instance> | ||
60 | </Message> | ||
61 | <Message Id="RequiredAttributeNotUnderComponent" Number="6006"> | ||
62 | <Instance> | ||
63 | A {0} element not nested under a component must have either a {1} attribute or a {2} attribute, or both set. | ||
64 | <Parameter Type="System.String" Name="elementName" /> | ||
65 | <Parameter Type="System.String" Name="attributeName1" /> | ||
66 | <Parameter Type="System.String" Name="attributeName2" /> | ||
67 | </Instance> | ||
68 | </Message> | ||
69 | </Class> | ||
70 | <Class Name="ComPlusWarnings" ContainerName="ComPlusWarningEventArgs" BaseContainerName="MessageEventArgs"> | ||
71 | <Message Id="MissingComponents" Number="6007"> | ||
72 | <Instance>The ComPlusAssembly element has a Type attribute with a value of 'native', but the element does not contain any ComPlusComponent elements. All components contained in a native assembly must be listed, or they will not be correctly removed during uninstall.</Instance> | ||
73 | </Message> | ||
74 | </Class> | ||
75 | <Class Name="ComPlusVerboses" ContainerName="ComPlusVerboseEventArgs" BaseContainerName="MessageEventArgs"> | ||
76 | </Class> | ||
77 | </Messages> | ||
diff --git a/src/wixlib/ComPlusExtension.wixproj b/src/wixlib/ComPlusExtension.wixproj deleted file mode 100644 index 49c688cd..00000000 --- a/src/wixlib/ComPlusExtension.wixproj +++ /dev/null | |||
@@ -1,26 +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 | <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0"> | ||
6 | <PropertyGroup> | ||
7 | <ProjectGuid>{E191E61E-E098-4F71-888F-51A79F952022}</ProjectGuid> | ||
8 | <OutputName>complus</OutputName> | ||
9 | <OutputType>Library</OutputType> | ||
10 | <BindFiles>true</BindFiles> | ||
11 | <SuppressSpecificWarnings>1086</SuppressSpecificWarnings> | ||
12 | </PropertyGroup> | ||
13 | |||
14 | <ItemGroup> | ||
15 | <Compile Include="ComPlusExtension.wxs" /> | ||
16 | <EmbeddedResource Include="en-us.wxl" /> | ||
17 | <EmbeddedResource Include="es-es.wxl" /> | ||
18 | <EmbeddedResource Include="ja-jp.wxl" /> | ||
19 | </ItemGroup> | ||
20 | |||
21 | <ItemGroup> | ||
22 | <ProjectReference Include="..\ca\complusca.proj" /> | ||
23 | </ItemGroup> | ||
24 | |||
25 | <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildProjectDirectory), wix.proj))\tools\WixBuild.targets" /> | ||
26 | </Project> | ||
diff --git a/src/wixlib/ComPlusExtension.wxs b/src/wixlib/ComPlusExtension.wxs index 3a5c1512..2a5710c0 100644 --- a/src/wixlib/ComPlusExtension.wxs +++ b/src/wixlib/ComPlusExtension.wxs | |||
@@ -60,19 +60,19 @@ | |||
60 | <Fragment> | 60 | <Fragment> |
61 | <UIRef Id="ComPlusUI" /> | 61 | <UIRef Id="ComPlusUI" /> |
62 | 62 | ||
63 | <CustomAction Id="ConfigureComPlusInstall" BinaryKey="WixCPSched_x86" DllEntry="ConfigureComPlusInstall" Execute="immediate" Return="check" SuppressModularization="yes" /> | 63 | <CustomAction Id="ConfigureComPlusInstall" BinaryKey="ComPlusCA_x86" DllEntry="ConfigureComPlusInstall" Execute="immediate" Return="check" SuppressModularization="yes" /> |
64 | <CustomAction Id="ConfigureComPlusUninstall" BinaryKey="WixCPSched_x86" DllEntry="ConfigureComPlusUninstall" Execute="immediate" Return="check" SuppressModularization="yes" /> | 64 | <CustomAction Id="ConfigureComPlusUninstall" BinaryKey="ComPlusCA_x86" DllEntry="ConfigureComPlusUninstall" Execute="immediate" Return="check" SuppressModularization="yes" /> |
65 | <CustomAction Id="ComPlusInstallPrepare" BinaryKey="WixCPExec_x86" DllEntry="ComPlusPrepare" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 65 | <CustomAction Id="ComPlusInstallPrepare" BinaryKey="ComPlusCA_x86" DllEntry="ComPlusPrepare" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
66 | <CustomAction Id="ComPlusRollbackInstallPrepare" BinaryKey="WixCPExec_x86" DllEntry="ComPlusCleanup" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 66 | <CustomAction Id="ComPlusRollbackInstallPrepare" BinaryKey="ComPlusCA_x86" DllEntry="ComPlusCleanup" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
67 | <CustomAction Id="ComPlusInstallExecute" BinaryKey="WixCPExec_x86" DllEntry="ComPlusInstallExecute" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 67 | <CustomAction Id="ComPlusInstallExecute" BinaryKey="ComPlusCA_x86" DllEntry="ComPlusInstallExecute" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
68 | <CustomAction Id="ComPlusInstallExecuteCommit" BinaryKey="WixCPExec_x86" DllEntry="ComPlusInstallExecuteCommit" Execute="commit" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 68 | <CustomAction Id="ComPlusInstallExecuteCommit" BinaryKey="ComPlusCA_x86" DllEntry="ComPlusInstallExecuteCommit" Execute="commit" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
69 | <CustomAction Id="ComPlusRollbackInstallExecute" BinaryKey="WixCPExec_x86" DllEntry="ComPlusRollbackInstallExecute" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 69 | <CustomAction Id="ComPlusRollbackInstallExecute" BinaryKey="ComPlusCA_x86" DllEntry="ComPlusRollbackInstallExecute" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
70 | <CustomAction Id="ComPlusInstallCommit" BinaryKey="WixCPExec_x86" DllEntry="ComPlusCleanup" Execute="commit" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 70 | <CustomAction Id="ComPlusInstallCommit" BinaryKey="ComPlusCA_x86" DllEntry="ComPlusCleanup" Execute="commit" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
71 | <CustomAction Id="ComPlusUninstallPrepare" BinaryKey="WixCPExec_x86" DllEntry="ComPlusPrepare" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 71 | <CustomAction Id="ComPlusUninstallPrepare" BinaryKey="ComPlusCA_x86" DllEntry="ComPlusPrepare" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
72 | <CustomAction Id="ComPlusRollbackUninstallPrepare" BinaryKey="WixCPExec_x86" DllEntry="ComPlusCleanup" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 72 | <CustomAction Id="ComPlusRollbackUninstallPrepare" BinaryKey="ComPlusCA_x86" DllEntry="ComPlusCleanup" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
73 | <CustomAction Id="ComPlusUninstallExecute" BinaryKey="WixCPExec_x86" DllEntry="ComPlusUninstallExecute" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 73 | <CustomAction Id="ComPlusUninstallExecute" BinaryKey="ComPlusCA_x86" DllEntry="ComPlusUninstallExecute" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
74 | <CustomAction Id="ComPlusRollbackUninstallExecute" BinaryKey="WixCPExec_x86" DllEntry="ComPlusInstallExecute" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 74 | <CustomAction Id="ComPlusRollbackUninstallExecute" BinaryKey="ComPlusCA_x86" DllEntry="ComPlusInstallExecute" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
75 | <CustomAction Id="ComPlusUninstallCommit" BinaryKey="WixCPExec_x86" DllEntry="ComPlusCleanup" Execute="commit" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 75 | <CustomAction Id="ComPlusUninstallCommit" BinaryKey="ComPlusCA_x86" DllEntry="ComPlusCleanup" Execute="commit" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
76 | 76 | ||
77 | <Property Id="ComPlusInstallPrepare" Hidden="yes" SuppressModularization="yes" /> | 77 | <Property Id="ComPlusInstallPrepare" Hidden="yes" SuppressModularization="yes" /> |
78 | <Property Id="ComPlusRollbackInstallPrepare" Hidden="yes" SuppressModularization="yes" /> | 78 | <Property Id="ComPlusRollbackInstallPrepare" Hidden="yes" SuppressModularization="yes" /> |
@@ -95,19 +95,19 @@ | |||
95 | <Fragment> | 95 | <Fragment> |
96 | <UIRef Id="ComPlusUI" /> | 96 | <UIRef Id="ComPlusUI" /> |
97 | 97 | ||
98 | <CustomAction Id="ConfigureComPlusInstall_x64" BinaryKey="WixCPSched_x64" DllEntry="ConfigureComPlusInstall" Execute="immediate" Return="check" SuppressModularization="yes" /> | 98 | <CustomAction Id="ConfigureComPlusInstall_x64" BinaryKey="ComPlusCA_x64" DllEntry="ConfigureComPlusInstall" Execute="immediate" Return="check" SuppressModularization="yes" /> |
99 | <CustomAction Id="ConfigureComPlusUninstall_x64" BinaryKey="WixCPSched_x64" DllEntry="ConfigureComPlusUninstall" Execute="immediate" Return="check" SuppressModularization="yes" /> | 99 | <CustomAction Id="ConfigureComPlusUninstall_x64" BinaryKey="ComPlusCA_x64" DllEntry="ConfigureComPlusUninstall" Execute="immediate" Return="check" SuppressModularization="yes" /> |
100 | <CustomAction Id="ComPlusInstallPrepare_64" BinaryKey="WixCPExec_x64" DllEntry="ComPlusPrepare" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 100 | <CustomAction Id="ComPlusInstallPrepare_64" BinaryKey="ComPlusCA_x64" DllEntry="ComPlusPrepare" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
101 | <CustomAction Id="ComPlusRollbackInstallPrepare_64" BinaryKey="WixCPExec_x64" DllEntry="ComPlusCleanup" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 101 | <CustomAction Id="ComPlusRollbackInstallPrepare_64" BinaryKey="ComPlusCA_x64" DllEntry="ComPlusCleanup" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
102 | <CustomAction Id="ComPlusInstallExecute_64" BinaryKey="WixCPExec_x64" DllEntry="ComPlusInstallExecute" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 102 | <CustomAction Id="ComPlusInstallExecute_64" BinaryKey="ComPlusCA_x64" DllEntry="ComPlusInstallExecute" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
103 | <CustomAction Id="ComPlusInstallExecuteCommit_64" BinaryKey="WixCPExec_x64" DllEntry="ComPlusInstallExecuteCommit" Execute="commit" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 103 | <CustomAction Id="ComPlusInstallExecuteCommit_64" BinaryKey="ComPlusCA_x64" DllEntry="ComPlusInstallExecuteCommit" Execute="commit" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
104 | <CustomAction Id="ComPlusRollbackInstallExecute_64" BinaryKey="WixCPExec_x64" DllEntry="ComPlusRollbackInstallExecute" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 104 | <CustomAction Id="ComPlusRollbackInstallExecute_64" BinaryKey="ComPlusCA_x64" DllEntry="ComPlusRollbackInstallExecute" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
105 | <CustomAction Id="ComPlusInstallCommit_64" BinaryKey="WixCPExec_x64" DllEntry="ComPlusCleanup" Execute="commit" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 105 | <CustomAction Id="ComPlusInstallCommit_64" BinaryKey="ComPlusCA_x64" DllEntry="ComPlusCleanup" Execute="commit" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
106 | <CustomAction Id="ComPlusUninstallPrepare_64" BinaryKey="WixCPExec_x64" DllEntry="ComPlusPrepare" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 106 | <CustomAction Id="ComPlusUninstallPrepare_64" BinaryKey="ComPlusCA_x64" DllEntry="ComPlusPrepare" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
107 | <CustomAction Id="ComPlusRollbackUninstallPrepare_64" BinaryKey="WixCPExec_x64" DllEntry="ComPlusCleanup" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 107 | <CustomAction Id="ComPlusRollbackUninstallPrepare_64" BinaryKey="ComPlusCA_x64" DllEntry="ComPlusCleanup" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
108 | <CustomAction Id="ComPlusUninstallExecute_64" BinaryKey="WixCPExec_x64" DllEntry="ComPlusUninstallExecute" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 108 | <CustomAction Id="ComPlusUninstallExecute_64" BinaryKey="ComPlusCA_x64" DllEntry="ComPlusUninstallExecute" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
109 | <CustomAction Id="ComPlusRollbackUninstallExecute_64" BinaryKey="WixCPExec_x64" DllEntry="ComPlusInstallExecute" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 109 | <CustomAction Id="ComPlusRollbackUninstallExecute_64" BinaryKey="ComPlusCA_x64" DllEntry="ComPlusInstallExecute" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
110 | <CustomAction Id="ComPlusUninstallCommit_64" BinaryKey="WixCPExec_x64" DllEntry="ComPlusCleanup" Execute="commit" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 110 | <CustomAction Id="ComPlusUninstallCommit_64" BinaryKey="ComPlusCA_x64" DllEntry="ComPlusCleanup" Execute="commit" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
111 | 111 | ||
112 | <Property Id="ComPlusInstallPrepare_64" Hidden="yes" SuppressModularization="yes" /> | 112 | <Property Id="ComPlusInstallPrepare_64" Hidden="yes" SuppressModularization="yes" /> |
113 | <Property Id="ComPlusRollbackInstallPrepare_64" Hidden="yes" SuppressModularization="yes" /> | 113 | <Property Id="ComPlusRollbackInstallPrepare_64" Hidden="yes" SuppressModularization="yes" /> |
@@ -128,12 +128,10 @@ | |||
128 | </Fragment> | 128 | </Fragment> |
129 | 129 | ||
130 | <Fragment> | 130 | <Fragment> |
131 | <Binary Id="WixCPExec_x86" SourceFile="!(bindpath.x86)\cpexec.dll"/> | 131 | <Binary Id="ComPlusCA_x86" SourceFile="!(bindpath.x86)complusca.dll"/> |
132 | <Binary Id="WixCPSched_x86" SourceFile="!(bindpath.x86)\cpsched.dll"/> | ||
133 | </Fragment> | 132 | </Fragment> |
134 | 133 | ||
135 | <Fragment> | 134 | <Fragment> |
136 | <Binary Id="WixCPExec_x64" SourceFile="!(bindpath.x64)\cpexec.dll"/> | 135 | <Binary Id="ComPlusCA_x64" SourceFile="!(bindpath.x64)complusca.dll"/> |
137 | <Binary Id="WixCPSched_x64" SourceFile="!(bindpath.x64)\cpsched.dll"/> | ||
138 | </Fragment> | 136 | </Fragment> |
139 | </Wix> | 137 | </Wix> |
diff --git a/src/wixlib/caerr.wxi b/src/wixlib/caerr.wxi new file mode 100644 index 00000000..141942f2 --- /dev/null +++ b/src/wixlib/caerr.wxi | |||
@@ -0,0 +1,96 @@ | |||
1 | <Include> | ||
2 | <?define msierrSecureObjectsFailedCreateSD = 25520?> | ||
3 | <?define msierrSecureObjectsFailedSet = 25521?> | ||
4 | <?define msierrSecureObjectsUnknownType = 25522?> | ||
5 | <?define msierrXmlFileFailedRead = 25530?> | ||
6 | <?define msierrXmlFileFailedOpen = 25531?> | ||
7 | <?define msierrXmlFileFailedSelect = 25532?> | ||
8 | <?define msierrXmlFileFailedSave = 25533?> | ||
9 | <?define msierrXmlConfigFailedRead = 25540?> | ||
10 | <?define msierrXmlConfigFailedOpen = 25541?> | ||
11 | <?define msierrXmlConfigFailedSelect = 25542?> | ||
12 | <?define msierrXmlConfigFailedSave = 25543?> | ||
13 | <?define msierrFirewallCannotConnect = 25580?> | ||
14 | <?define msierrIISCannotConnect = 26001?> | ||
15 | <?define msierrIISFailedReadWebSite = 26002?> | ||
16 | <?define msierrIISFailedReadWebDirs = 26003?> | ||
17 | <?define msierrIISFailedReadVDirs = 26004?> | ||
18 | <?define msierrIISFailedReadFilters = 26005?> | ||
19 | <?define msierrIISFailedReadAppPool = 26006?> | ||
20 | <?define msierrIISFailedReadMimeMap = 26007?> | ||
21 | <?define msierrIISFailedReadProp = 26008?> | ||
22 | <?define msierrIISFailedReadWebSvcExt = 26009?> | ||
23 | <?define msierrIISFailedReadWebError = 26010?> | ||
24 | <?define msierrIISFailedReadHttpHeader = 26011?> | ||
25 | <?define msierrIISFailedSchedTransaction = 26031?> | ||
26 | <?define msierrIISFailedSchedInstallWebs = 26032?> | ||
27 | <?define msierrIISFailedSchedInstallWebDirs = 26033?> | ||
28 | <?define msierrIISFailedSchedInstallVDirs = 26034?> | ||
29 | <?define msierrIISFailedSchedInstallFilters = 26035?> | ||
30 | <?define msierrIISFailedSchedInstallAppPool = 26036?> | ||
31 | <?define msierrIISFailedSchedInstallProp = 26037?> | ||
32 | <?define msierrIISFailedSchedInstallWebSvcExt = 26038?> | ||
33 | <?define msierrIISFailedSchedUninstallWebs = 26051?> | ||
34 | <?define msierrIISFailedSchedUninstallWebDirs = 26052?> | ||
35 | <?define msierrIISFailedSchedUninstallVDirs = 26053?> | ||
36 | <?define msierrIISFailedSchedUninstallFilters = 26054?> | ||
37 | <?define msierrIISFailedSchedUninstallAppPool = 26055?> | ||
38 | <?define msierrIISFailedSchedUninstallProp = 26056?> | ||
39 | <?define msierrIISFailedSchedUninstallWebSvcExt = 26057?> | ||
40 | <?define msierrIISFailedStartTransaction = 26101?> | ||
41 | <?define msierrIISFailedOpenKey = 26102?> | ||
42 | <?define msierrIISFailedCreateKey = 26103?> | ||
43 | <?define msierrIISFailedWriteData = 26104?> | ||
44 | <?define msierrIISFailedCreateApp = 26105?> | ||
45 | <?define msierrIISFailedDeleteKey = 26106?> | ||
46 | <?define msierrIISFailedDeleteApp = 26107?> | ||
47 | <?define msierrIISFailedDeleteValue = 26108?> | ||
48 | <?define msierrIISFailedCommitInUse = 26109?> | ||
49 | <?define msierrSQLFailedCreateDatabase = 26201?> | ||
50 | <?define msierrSQLFailedDropDatabase = 26202?> | ||
51 | <?define msierrSQLFailedConnectDatabase = 26203?> | ||
52 | <?define msierrSQLFailedExecString = 26204?> | ||
53 | <?define msierrSQLDatabaseAlreadyExists = 26205?> | ||
54 | <?define msierrPERFMONFailedRegisterDLL = 26251?> | ||
55 | <?define msierrPERFMONFailedUnregisterDLL = 26252?> | ||
56 | <?define msierrInstallPerfCounterData = 26253?> | ||
57 | <?define msierrUninstallPerfCounterData = 26254?> | ||
58 | <?define msierrSMBFailedCreate = 26301?> | ||
59 | <?define msierrSMBFailedDrop = 26302?> | ||
60 | <?define msierrCERTFailedOpen = 26351?> | ||
61 | <?define msierrCERTFailedAdd = 26352?> | ||
62 | <?define msierrUSRFailedUserCreate = 26401?> | ||
63 | <?define msierrUSRFailedUserCreatePswd = 26402?> | ||
64 | <?define msierrUSRFailedUserGroupAdd = 26403?> | ||
65 | <?define msierrUSRFailedUserCreateExists = 26404?> | ||
66 | <?define msierrUSRFailedGrantLogonAsService = 26405?> | ||
67 | <?define msierrDependencyMissingDependencies = 26451?> | ||
68 | <?define msierrDependencyHasDependents = 26452?> | ||
69 | <?define msierrDotNetRuntimeRequired = 27000?> | ||
70 | <?define msierrComPlusCannotConnect = 28001?> | ||
71 | <?define msierrComPlusPartitionReadFailed = 28002?> | ||
72 | <?define msierrComPlusPartitionRoleReadFailed = 28003?> | ||
73 | <?define msierrComPlusUserInPartitionRoleReadFailed = 28004?> | ||
74 | <?define msierrComPlusPartitionUserReadFailed = 28005?> | ||
75 | <?define msierrComPlusApplicationReadFailed = 28006?> | ||
76 | <?define msierrComPlusApplicationRoleReadFailed = 28007?> | ||
77 | <?define msierrComPlusUserInApplicationRoleReadFailed = 28008?> | ||
78 | <?define msierrComPlusAssembliesReadFailed = 28009?> | ||
79 | <?define msierrComPlusSubscriptionReadFailed = 28010?> | ||
80 | <?define msierrComPlusPartitionDependency = 28011?> | ||
81 | <?define msierrComPlusPartitionNotFound = 28012?> | ||
82 | <?define msierrComPlusPartitionIdConflict = 28013?> | ||
83 | <?define msierrComPlusPartitionNameConflict = 28014?> | ||
84 | <?define msierrComPlusApplicationDependency = 28015?> | ||
85 | <?define msierrComPlusApplicationNotFound = 28016?> | ||
86 | <?define msierrComPlusApplicationIdConflict = 28017?> | ||
87 | <?define msierrComPlusApplicationNameConflict = 28018?> | ||
88 | <?define msierrComPlusApplicationRoleDependency = 28019?> | ||
89 | <?define msierrComPlusApplicationRoleNotFound = 28020?> | ||
90 | <?define msierrComPlusApplicationRoleConflict = 28021?> | ||
91 | <?define msierrComPlusAssemblyDependency = 28022?> | ||
92 | <?define msierrComPlusSubscriptionIdConflict = 28023?> | ||
93 | <?define msierrComPlusSubscriptionNameConflict = 28024?> | ||
94 | <?define msierrComPlusFailedLookupNames = 28025?> | ||
95 | <?define msierrMsmqCannotConnect = 28101?> | ||
96 | </Include> \ No newline at end of file | ||
diff --git a/src/wixlib/complus.wixproj b/src/wixlib/complus.wixproj new file mode 100644 index 00000000..2384eb47 --- /dev/null +++ b/src/wixlib/complus.wixproj | |||
@@ -0,0 +1,36 @@ | |||
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 | <Project DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="15.0"> | ||
4 | <Import Project="..\..\packages\WixToolset.MSBuild.4.0.0-build-0042\build\WixToolset.MSBuild.props" Condition="Exists('..\..\packages\WixToolset.MSBuild.4.0.0-build-0042\build\WixToolset.MSBuild.props')" /> | ||
5 | <Import Project="..\FindLocalWix.props" /> | ||
6 | <PropertyGroup> | ||
7 | <ProjectGuid>{E191E61E-E098-4F71-888F-51A79F952022}</ProjectGuid> | ||
8 | <OutputName>complus</OutputName> | ||
9 | <OutputType>Library</OutputType> | ||
10 | <BindFiles>true</BindFiles> | ||
11 | <SuppressSpecificWarnings>1086</SuppressSpecificWarnings> | ||
12 | </PropertyGroup> | ||
13 | |||
14 | <ItemGroup> | ||
15 | <Compile Include="ComPlusExtension.wxs" /> | ||
16 | <EmbeddedResource Include="en-us.wxl" /> | ||
17 | <EmbeddedResource Include="es-es.wxl" /> | ||
18 | <EmbeddedResource Include="ja-jp.wxl" /> | ||
19 | </ItemGroup> | ||
20 | <ItemGroup> | ||
21 | <None Include="packages.config" /> | ||
22 | </ItemGroup> | ||
23 | <Import Project="$(WixTargetsPath)" Condition=" '$(WixTargetsPath)' != '' AND Exists('$(WixTargetsPath)') " /> | ||
24 | <Import Project="$(MSBuildExtensionsPath32)\Microsoft\WiX\v3.x\wix.targets" Condition=" '$(WixTargetsPath)' == '' AND Exists('$(MSBuildExtensionsPath32)\Microsoft\WiX\v3.x\wix.targets') " /> | ||
25 | <Target Name="EnsureWixToolsetInstalled" Condition=" '$(WixTargetsImported)' != 'true' "> | ||
26 | <Error Text="WiX Toolset build tools (v4.0 or later) must be installed to build this project. To download the WiX Toolset, go to http://wixtoolset.org/releases/." /> | ||
27 | </Target> | ||
28 | <Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild"> | ||
29 | <PropertyGroup> | ||
30 | <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> | ||
31 | </PropertyGroup> | ||
32 | <Error Condition="!Exists('..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets'))" /> | ||
33 | <Error Condition="!Exists('..\..\packages\WixToolset.MSBuild.4.0.0-build-0042\build\WixToolset.MSBuild.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.MSBuild.4.0.0-build-0042\build\WixToolset.MSBuild.props'))" /> | ||
34 | </Target> | ||
35 | <Import Project="..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets" Condition="Exists('..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets')" /> | ||
36 | </Project> | ||
diff --git a/src/wixlib/packages.config b/src/wixlib/packages.config new file mode 100644 index 00000000..209dd820 --- /dev/null +++ b/src/wixlib/packages.config | |||
@@ -0,0 +1,5 @@ | |||
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | <packages> | ||
3 | <package id="Nerdbank.GitVersioning" version="2.1.65" developmentDependency="true" targetFramework="net40" /> | ||
4 | <package id="WixToolset.MSBuild" version="4.0.0-build-0042" developmentDependency="true" targetFramework="net40" /> | ||
5 | </packages> \ No newline at end of file | ||
diff --git a/version.json b/version.json new file mode 100644 index 00000000..5f857771 --- /dev/null +++ b/version.json | |||
@@ -0,0 +1,11 @@ | |||
1 | { | ||
2 | "version": "4.0", | ||
3 | "publicReleaseRefSpec": [ | ||
4 | "^refs/heads/master$" | ||
5 | ], | ||
6 | "cloudBuild": { | ||
7 | "buildNumber": { | ||
8 | "enabled": true | ||
9 | } | ||
10 | } | ||
11 | } | ||