diff options
Diffstat (limited to 'src/ext/Msmq')
-rw-r--r-- | src/ext/Msmq/Msmq.wixext.sln | 4 | ||||
-rw-r--r-- | src/ext/Msmq/ca/mqqueuesched.cpp | 6 | ||||
-rw-r--r-- | src/ext/Msmq/ca/mqutilexec.cpp | 4 | ||||
-rw-r--r-- | src/ext/Msmq/ca/mqutilsched.cpp | 43 | ||||
-rw-r--r-- | src/ext/Msmq/ca/mqutilsched.h | 9 | ||||
-rw-r--r-- | src/ext/Msmq/ca/msmqca.vcxproj | 30 | ||||
-rw-r--r-- | src/ext/Msmq/ca/precomp.h | 1 | ||||
-rw-r--r-- | src/ext/Msmq/test/WixToolsetTest.Msmq/MsmqExtensionFixture.cs | 16 | ||||
-rw-r--r-- | src/ext/Msmq/test/WixToolsetTest.Msmq/TestData/UsingMessageQueue/Package.wxs | 4 | ||||
-rw-r--r-- | src/ext/Msmq/wixext/MsmqCompiler.cs | 6 | ||||
-rw-r--r-- | src/ext/Msmq/wixext/MsmqTableDefinitions.cs | 6 | ||||
-rw-r--r-- | src/ext/Msmq/wixlib/MsmqExtension.wxs | 33 | ||||
-rw-r--r-- | src/ext/Msmq/wixlib/MsmqExtension_Platform.wxi | 26 | ||||
-rw-r--r-- | src/ext/Msmq/wixlib/MsmqExtension_arm64.wxs | 7 | ||||
-rw-r--r-- | src/ext/Msmq/wixlib/MsmqExtension_x64.wxs | 7 | ||||
-rw-r--r-- | src/ext/Msmq/wixlib/MsmqExtension_x86.wxs | 7 | ||||
-rw-r--r-- | src/ext/Msmq/wixlib/msmq.wixproj | 10 |
17 files changed, 109 insertions, 110 deletions
diff --git a/src/ext/Msmq/Msmq.wixext.sln b/src/ext/Msmq/Msmq.wixext.sln index d6728547..84ef7097 100644 --- a/src/ext/Msmq/Msmq.wixext.sln +++ b/src/ext/Msmq/Msmq.wixext.sln | |||
@@ -1,7 +1,7 @@ | |||
1 | | 1 | |
2 | Microsoft Visual Studio Solution File, Format Version 12.00 | 2 | Microsoft Visual Studio Solution File, Format Version 12.00 |
3 | # Visual Studio 15 | 3 | # Visual Studio Version 17 |
4 | VisualStudioVersion = 15.0.28010.2016 | 4 | VisualStudioVersion = 17.0.32126.317 |
5 | MinimumVisualStudioVersion = 10.0.40219.1 | 5 | MinimumVisualStudioVersion = 10.0.40219.1 |
6 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "msmqca", "ca\msmqca.vcxproj", "{CAD56A7E-342B-4324-9DCB-BCEB8F3BC80D}" | 6 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "msmqca", "ca\msmqca.vcxproj", "{CAD56A7E-342B-4324-9DCB-BCEB8F3BC80D}" |
7 | EndProject | 7 | EndProject |
diff --git a/src/ext/Msmq/ca/mqqueuesched.cpp b/src/ext/Msmq/ca/mqqueuesched.cpp index 01777ea4..ab4d1680 100644 --- a/src/ext/Msmq/ca/mqqueuesched.cpp +++ b/src/ext/Msmq/ca/mqqueuesched.cpp | |||
@@ -6,13 +6,13 @@ | |||
6 | // sql queries | 6 | // sql queries |
7 | 7 | ||
8 | LPCWSTR vcsMessageQueueQuery = | 8 | LPCWSTR vcsMessageQueueQuery = |
9 | L"SELECT `MessageQueue`, `Component_`, `BasePriority`, `JournalQuota`, `Label`, `MulticastAddress`, `PathName`, `PrivLevel`, `Quota`, `ServiceTypeGuid`, `Attributes` FROM `MessageQueue`"; | 9 | L"SELECT `MessageQueue`, `Component_`, `BasePriority`, `JournalQuota`, `Label`, `MulticastAddress`, `PathName`, `PrivLevel`, `Quota`, `ServiceTypeGuid`, `Attributes` FROM `Wix4MessageQueue`"; |
10 | enum eMessageQueueQuery { mqqMessageQueue = 1, mqqComponent, mqqBasePriority, mqqJournalQuota, mqqLabel, mqqMulticastAddress, mqqPathName, mqqPrivLevel, mqqQuota, mqqServiceTypeGuid, mqqAttributes }; | 10 | enum eMessageQueueQuery { mqqMessageQueue = 1, mqqComponent, mqqBasePriority, mqqJournalQuota, mqqLabel, mqqMulticastAddress, mqqPathName, mqqPrivLevel, mqqQuota, mqqServiceTypeGuid, mqqAttributes }; |
11 | 11 | ||
12 | LPCWSTR vcsMessageQueueUserPermissionQuery = | 12 | LPCWSTR vcsMessageQueueUserPermissionQuery = |
13 | L"SELECT `MessageQueueUserPermission`, `MessageQueue_`, `MessageQueueUserPermission`.`Component_`, `Domain`, `Name`, `Permissions` FROM `MessageQueueUserPermission`, `User` WHERE `User_` = `User`"; | 13 | L"SELECT `MessageQueueUserPermission`, `MessageQueue_`, `MessageQueueUserPermission`.`Component_`, `Domain`, `Name`, `Permissions` FROM `Wix4MessageQueueUserPermission`, `User` WHERE `User_` = `User`"; |
14 | LPCWSTR vcsMessageQueueGroupPermissionQuery = | 14 | LPCWSTR vcsMessageQueueGroupPermissionQuery = |
15 | L"SELECT `MessageQueueGroupPermission`, `MessageQueue_`, `MessageQueueGroupPermission`.`Component_`, `Domain`, `Name`, `Permissions` FROM `MessageQueueGroupPermission`, `Group` WHERE `Group_` = `Group`"; | 15 | L"SELECT `MessageQueueGroupPermission`, `MessageQueue_`, `MessageQueueGroupPermission`.`Component_`, `Domain`, `Name`, `Permissions` FROM `Wix4MessageQueueGroupPermission`, `Group` WHERE `Group_` = `Group`"; |
16 | enum eMessageQueuePermissionQuery { mqpqMessageQueuePermission = 1, mqpqMessageQueue, mqpqComponent, mqpqDomain, mqpqName, mqpqPermissions }; | 16 | enum eMessageQueuePermissionQuery { mqpqMessageQueuePermission = 1, mqpqMessageQueue, mqpqComponent, mqpqDomain, mqpqName, mqpqPermissions }; |
17 | 17 | ||
18 | 18 | ||
diff --git a/src/ext/Msmq/ca/mqutilexec.cpp b/src/ext/Msmq/ca/mqutilexec.cpp index a9c56e02..7055333b 100644 --- a/src/ext/Msmq/ca/mqutilexec.cpp +++ b/src/ext/Msmq/ca/mqutilexec.cpp | |||
@@ -40,7 +40,7 @@ static HRESULT CreateSidFromDomainRidPair( | |||
40 | static HRESULT InitLsaUnicodeString( | 40 | static HRESULT InitLsaUnicodeString( |
41 | PLSA_UNICODE_STRING plusStr, | 41 | PLSA_UNICODE_STRING plusStr, |
42 | LPCWSTR pwzStr, | 42 | LPCWSTR pwzStr, |
43 | DWORD dwLen | 43 | SIZE_T dwLen |
44 | ); | 44 | ); |
45 | static void FreeLsaUnicodeString( | 45 | static void FreeLsaUnicodeString( |
46 | PLSA_UNICODE_STRING plusStr | 46 | PLSA_UNICODE_STRING plusStr |
@@ -351,7 +351,7 @@ LExit: | |||
351 | static HRESULT InitLsaUnicodeString( | 351 | static HRESULT InitLsaUnicodeString( |
352 | PLSA_UNICODE_STRING plusStr, | 352 | PLSA_UNICODE_STRING plusStr, |
353 | LPCWSTR pwzStr, | 353 | LPCWSTR pwzStr, |
354 | DWORD dwLen | 354 | SIZE_T dwLen |
355 | ) | 355 | ) |
356 | { | 356 | { |
357 | HRESULT hr = S_OK; | 357 | HRESULT hr = S_OK; |
diff --git a/src/ext/Msmq/ca/mqutilsched.cpp b/src/ext/Msmq/ca/mqutilsched.cpp deleted file mode 100644 index 4353a6d6..00000000 --- a/src/ext/Msmq/ca/mqutilsched.cpp +++ /dev/null | |||
@@ -1,43 +0,0 @@ | |||
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 | // function definitions | ||
7 | |||
8 | HRESULT PcaGuidToRegFormat( | ||
9 | LPWSTR pwzGuid, | ||
10 | LPWSTR pwzDest, | ||
11 | SIZE_T cchDest | ||
12 | ) | ||
13 | { | ||
14 | HRESULT hr = S_OK; | ||
15 | |||
16 | GUID guid = GUID_NULL; | ||
17 | int cch = 0; | ||
18 | |||
19 | WCHAR wz[39]; | ||
20 | ::ZeroMemory(wz, sizeof(wz)); | ||
21 | |||
22 | cch = lstrlenW(pwzGuid); | ||
23 | |||
24 | if (38 == cch && L'{' == pwzGuid[0] && L'}' == pwzGuid[37]) | ||
25 | StringCchCopyW(wz, countof(wz), pwzGuid); | ||
26 | else if (36 == cch) | ||
27 | StringCchPrintfW(wz, countof(wz), L"{%s}", pwzGuid); | ||
28 | else | ||
29 | ExitFunction1(hr = E_INVALIDARG); | ||
30 | |||
31 | // convert string to guid | ||
32 | hr = ::CLSIDFromString(wz, &guid); | ||
33 | ExitOnFailure(hr, "Failed to parse guid string"); | ||
34 | |||
35 | // convert guid to string | ||
36 | if (0 == ::StringFromGUID2(guid, pwzDest, cchDest)) | ||
37 | ExitOnFailure(hr = E_FAIL, "Failed to convert guid to string"); | ||
38 | |||
39 | hr = S_OK; | ||
40 | |||
41 | LExit: | ||
42 | return hr; | ||
43 | } | ||
diff --git a/src/ext/Msmq/ca/mqutilsched.h b/src/ext/Msmq/ca/mqutilsched.h deleted file mode 100644 index e172257d..00000000 --- a/src/ext/Msmq/ca/mqutilsched.h +++ /dev/null | |||
@@ -1,9 +0,0 @@ | |||
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 | HRESULT PcaGuidToRegFormat( | ||
6 | LPWSTR pwzGuid, | ||
7 | LPWSTR pwzDest, | ||
8 | SIZE_T cchDest | ||
9 | ); | ||
diff --git a/src/ext/Msmq/ca/msmqca.vcxproj b/src/ext/Msmq/ca/msmqca.vcxproj index b00cd88e..0e712f63 100644 --- a/src/ext/Msmq/ca/msmqca.vcxproj +++ b/src/ext/Msmq/ca/msmqca.vcxproj | |||
@@ -1,10 +1,8 @@ | |||
1 | <?xml version="1.0" encoding="utf-8"?> | 1 | <?xml version="1.0" encoding="utf-8"?> |
2 | <!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. --> | 2 | <!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. --> |
3 | |||
4 | <Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> | 3 | <Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> |
5 | <Import Project="..\..\packages\WixToolset.DUtil.4.0.0-preview.0-build.1\build\WixToolset.DUtil.props" Condition="Exists('..\..\packages\WixToolset.DUtil.4.0.0-preview.0-build.1\build\WixToolset.DUtil.props')" /> | 4 | <Import Project="..\..\packages\WixToolset.DUtil.4.0.0-preview.0-build.1\build\WixToolset.DUtil.props" Condition="Exists('..\..\packages\WixToolset.DUtil.4.0.0-preview.0-build.1\build\WixToolset.DUtil.props')" /> |
6 | <Import Project="..\..\packages\WixToolset.WcaUtil.4.0.17\build\WixToolset.WcaUtil.props" Condition="Exists('..\..\packages\WixToolset.WcaUtil.4.0.17\build\WixToolset.WcaUtil.props')" /> | 5 | <Import Project="..\..\packages\WixToolset.WcaUtil.4.0.17\build\WixToolset.WcaUtil.props" Condition="Exists('..\..\packages\WixToolset.WcaUtil.4.0.17\build\WixToolset.WcaUtil.props')" /> |
7 | |||
8 | <ItemGroup Label="ProjectConfigurations"> | 6 | <ItemGroup Label="ProjectConfigurations"> |
9 | <ProjectConfiguration Include="Debug|Win32"> | 7 | <ProjectConfiguration Include="Debug|Win32"> |
10 | <Configuration>Debug</Configuration> | 8 | <Configuration>Debug</Configuration> |
@@ -14,8 +12,23 @@ | |||
14 | <Configuration>Release</Configuration> | 12 | <Configuration>Release</Configuration> |
15 | <Platform>Win32</Platform> | 13 | <Platform>Win32</Platform> |
16 | </ProjectConfiguration> | 14 | </ProjectConfiguration> |
15 | <ProjectConfiguration Include="Debug|X64"> | ||
16 | <Configuration>Debug</Configuration> | ||
17 | <Platform>X64</Platform> | ||
18 | </ProjectConfiguration> | ||
19 | <ProjectConfiguration Include="Release|X64"> | ||
20 | <Configuration>Release</Configuration> | ||
21 | <Platform>X64</Platform> | ||
22 | </ProjectConfiguration> | ||
23 | <ProjectConfiguration Include="Debug|ARM64"> | ||
24 | <Configuration>Debug</Configuration> | ||
25 | <Platform>ARM64</Platform> | ||
26 | </ProjectConfiguration> | ||
27 | <ProjectConfiguration Include="Release|ARM64"> | ||
28 | <Configuration>Release</Configuration> | ||
29 | <Platform>ARM64</Platform> | ||
30 | </ProjectConfiguration> | ||
17 | </ItemGroup> | 31 | </ItemGroup> |
18 | |||
19 | <PropertyGroup Label="Globals"> | 32 | <PropertyGroup Label="Globals"> |
20 | <ProjectGuid>{CAD56A7E-342B-4324-9DCB-BCEB8F3BC80D}</ProjectGuid> | 33 | <ProjectGuid>{CAD56A7E-342B-4324-9DCB-BCEB8F3BC80D}</ProjectGuid> |
21 | <ConfigurationType>DynamicLibrary</ConfigurationType> | 34 | <ConfigurationType>DynamicLibrary</ConfigurationType> |
@@ -24,14 +37,11 @@ | |||
24 | <ProjectModuleDefinitionFile>msmqca.def</ProjectModuleDefinitionFile> | 37 | <ProjectModuleDefinitionFile>msmqca.def</ProjectModuleDefinitionFile> |
25 | <Description>WiX Toolset MSMQ CustomAction</Description> | 38 | <Description>WiX Toolset MSMQ CustomAction</Description> |
26 | </PropertyGroup> | 39 | </PropertyGroup> |
27 | |||
28 | <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> | 40 | <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> |
29 | <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> | 41 | <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> |
30 | |||
31 | <PropertyGroup> | 42 | <PropertyGroup> |
32 | <ProjectAdditionalLinkLibraries>msi.lib</ProjectAdditionalLinkLibraries> | 43 | <ProjectAdditionalLinkLibraries>msi.lib</ProjectAdditionalLinkLibraries> |
33 | </PropertyGroup> | 44 | </PropertyGroup> |
34 | |||
35 | <ItemGroup> | 45 | <ItemGroup> |
36 | <ClCompile Include="dllmain.cpp"> | 46 | <ClCompile Include="dllmain.cpp"> |
37 | <PrecompiledHeader>Create</PrecompiledHeader> | 47 | <PrecompiledHeader>Create</PrecompiledHeader> |
@@ -41,28 +51,22 @@ | |||
41 | <ClCompile Include="mqqueuesched.cpp" /> | 51 | <ClCompile Include="mqqueuesched.cpp" /> |
42 | <ClCompile Include="mqsched.cpp" /> | 52 | <ClCompile Include="mqsched.cpp" /> |
43 | <ClCompile Include="mqutilexec.cpp" /> | 53 | <ClCompile Include="mqutilexec.cpp" /> |
44 | <ClCompile Include="mqutilsched.cpp" /> | ||
45 | </ItemGroup> | 54 | </ItemGroup> |
46 | |||
47 | <ItemGroup> | 55 | <ItemGroup> |
48 | <ClInclude Include="mqcost.h" /> | 56 | <ClInclude Include="mqcost.h" /> |
49 | <ClInclude Include="mqqueueexec.h" /> | 57 | <ClInclude Include="mqqueueexec.h" /> |
50 | <ClInclude Include="mqqueuesched.h" /> | 58 | <ClInclude Include="mqqueuesched.h" /> |
51 | <ClInclude Include="mqutilexec.h" /> | 59 | <ClInclude Include="mqutilexec.h" /> |
52 | <ClInclude Include="mqutilsched.h" /> | ||
53 | <ClInclude Include="precomp.h" /> | 60 | <ClInclude Include="precomp.h" /> |
54 | </ItemGroup> | 61 | </ItemGroup> |
55 | |||
56 | <ItemGroup> | 62 | <ItemGroup> |
57 | <None Include="msmqca.def" /> | 63 | <None Include="msmqca.def" /> |
58 | </ItemGroup> | 64 | </ItemGroup> |
59 | |||
60 | <ItemGroup> | 65 | <ItemGroup> |
61 | <PackageReference Include="WixToolset.Dutil" /> | 66 | <PackageReference Include="WixToolset.Dutil" /> |
62 | <PackageReference Include="WixToolset.WcaUtil" /> | 67 | <PackageReference Include="WixToolset.WcaUtil" /> |
63 | <PackageReference Include="Microsoft.SourceLink.GitHub" PrivateAssets="All" /> | 68 | <PackageReference Include="Microsoft.SourceLink.GitHub" PrivateAssets="All" /> |
64 | <PackageReference Include="GitInfo" PrivateAssets="All" /> | 69 | <PackageReference Include="GitInfo" PrivateAssets="All" /> |
65 | </ItemGroup> | 70 | </ItemGroup> |
66 | |||
67 | <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> | 71 | <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> |
68 | </Project> | 72 | </Project> \ No newline at end of file |
diff --git a/src/ext/Msmq/ca/precomp.h b/src/ext/Msmq/ca/precomp.h index cbbff6ea..6fbd418c 100644 --- a/src/ext/Msmq/ca/precomp.h +++ b/src/ext/Msmq/ca/precomp.h | |||
@@ -17,7 +17,6 @@ | |||
17 | #include "CustomMsiErrors.h" | 17 | #include "CustomMsiErrors.h" |
18 | 18 | ||
19 | #include "mqcost.h" | 19 | #include "mqcost.h" |
20 | #include "mqutilsched.h" | ||
21 | #include "mqqueuesched.h" | 20 | #include "mqqueuesched.h" |
22 | #include "mqutilexec.h" | 21 | #include "mqutilexec.h" |
23 | #include "mqqueueexec.h" | 22 | #include "mqqueueexec.h" |
diff --git a/src/ext/Msmq/test/WixToolsetTest.Msmq/MsmqExtensionFixture.cs b/src/ext/Msmq/test/WixToolsetTest.Msmq/MsmqExtensionFixture.cs index a0fac3ca..c9d40d10 100644 --- a/src/ext/Msmq/test/WixToolsetTest.Msmq/MsmqExtensionFixture.cs +++ b/src/ext/Msmq/test/WixToolsetTest.Msmq/MsmqExtensionFixture.cs | |||
@@ -16,17 +16,25 @@ namespace WixToolsetTest.Msmq | |||
16 | var folder = TestData.Get(@"TestData\UsingMessageQueue"); | 16 | var folder = TestData.Get(@"TestData\UsingMessageQueue"); |
17 | var build = new Builder(folder, typeof(MsmqExtensionFactory), new[] { folder }); | 17 | var build = new Builder(folder, typeof(MsmqExtensionFactory), new[] { folder }); |
18 | 18 | ||
19 | var results = build.BuildAndQuery(Build, "MessageQueue"); | 19 | var results = build.BuildAndQuery(Build, "Wix4MessageQueue", "CustomAction"); |
20 | WixAssert.CompareLineByLine(new[] | 20 | WixAssert.CompareLineByLine(new[] |
21 | { | 21 | { |
22 | "MessageQueue:TestMQ\tfilF5_pLhBuF5b4N9XEo52g_hUM5Lo\t\t\tMQLabel\t\tMQPath\t\t\t\t0", | 22 | "CustomAction:Wix4MessageQueuingExecuteInstall_A64\t3073\tWix4MsmqCA_A64\tMessageQueuingExecuteInstall\t", |
23 | "CustomAction:Wix4MessageQueuingExecuteUninstall_A64\t3073\tWix4MsmqCA_A64\tMessageQueuingExecuteUninstall\t", | ||
24 | "CustomAction:Wix4MessageQueuingInstall_A64\t1\tWix4MsmqCA_A64\tMessageQueuingInstall\t", | ||
25 | "CustomAction:Wix4MessageQueuingRollbackInstall_A64\t3329\tWix4MsmqCA_A64\tMessageQueuingRollbackInstall\t", | ||
26 | "CustomAction:Wix4MessageQueuingRollbackUninstall_A64\t3329\tWix4MsmqCA_A64\tMessageQueuingRollbackUninstall\t", | ||
27 | "CustomAction:Wix4MessageQueuingUninstall_A64\t1\tWix4MsmqCA_A64\tMessageQueuingUninstall\t", | ||
28 | "Wix4MessageQueue:TestMQ\tfilF5_pLhBuF5b4N9XEo52g_hUM5Lo\t\t\tMQLabel\t\tMQPath\t\t\t\t0", | ||
23 | }, results); | 29 | }, results); |
24 | } | 30 | } |
25 | 31 | ||
26 | private static void Build(string[] args) | 32 | private static void Build(string[] args) |
27 | { | 33 | { |
28 | var result = WixRunner.Execute(args) | 34 | args = args.Concat(new[] { "-arch", "arm64" }).ToArray(); |
29 | .AssertSuccess(); | 35 | |
36 | var result = WixRunner.Execute(args); | ||
37 | result.AssertSuccess(); | ||
30 | } | 38 | } |
31 | } | 39 | } |
32 | } | 40 | } |
diff --git a/src/ext/Msmq/test/WixToolsetTest.Msmq/TestData/UsingMessageQueue/Package.wxs b/src/ext/Msmq/test/WixToolsetTest.Msmq/TestData/UsingMessageQueue/Package.wxs index bd31e81f..9524f3a4 100644 --- a/src/ext/Msmq/test/WixToolsetTest.Msmq/TestData/UsingMessageQueue/Package.wxs +++ b/src/ext/Msmq/test/WixToolsetTest.Msmq/TestData/UsingMessageQueue/Package.wxs | |||
@@ -1,5 +1,5 @@ | |||
1 | <Wix xmlns="http://wixtoolset.org/schemas/v4/wxs"> | 1 | <Wix xmlns="http://wixtoolset.org/schemas/v4/wxs"> |
2 | <Package Name="MsiPackage" Language="1033" Version="1.0.0.0" Manufacturer="Example Corporation" UpgradeCode="047730a5-30fe-4a62-a520-da9381b8226a" InstallerVersion="200"> | 2 | <Package Name="MsiPackage" Language="1033" Version="1.0.0.0" Manufacturer="Example Corporation" UpgradeCode="047730a5-30fe-4a62-a520-da9381b8226a"> |
3 | <MajorUpgrade DowngradeErrorMessage="!(loc.DowngradeError)" /> | 3 | <MajorUpgrade DowngradeErrorMessage="!(loc.DowngradeError)" /> |
4 | 4 | ||
5 | <Feature Id="ProductFeature" Title="!(loc.FeatureTitle)"> | 5 | <Feature Id="ProductFeature" Title="!(loc.FeatureTitle)"> |
diff --git a/src/ext/Msmq/wixext/MsmqCompiler.cs b/src/ext/Msmq/wixext/MsmqCompiler.cs index cfc4ef65..8a811d40 100644 --- a/src/ext/Msmq/wixext/MsmqCompiler.cs +++ b/src/ext/Msmq/wixext/MsmqCompiler.cs | |||
@@ -7,6 +7,7 @@ namespace WixToolset.Msmq | |||
7 | using System.Xml.Linq; | 7 | using System.Xml.Linq; |
8 | using WixToolset.Data; | 8 | using WixToolset.Data; |
9 | using WixToolset.Extensibility; | 9 | using WixToolset.Extensibility; |
10 | using WixToolset.Extensibility.Data; | ||
10 | using WixToolset.Msmq.Symbols; | 11 | using WixToolset.Msmq.Symbols; |
11 | 12 | ||
12 | /// <summary> | 13 | /// <summary> |
@@ -71,7 +72,6 @@ namespace WixToolset.Msmq | |||
71 | { | 72 | { |
72 | case "Component": | 73 | case "Component": |
73 | var componentId = context["ComponentId"]; | 74 | var componentId = context["ComponentId"]; |
74 | var directoryId = context["DirectoryId"]; | ||
75 | 75 | ||
76 | switch (element.Name.LocalName) | 76 | switch (element.Name.LocalName) |
77 | { | 77 | { |
@@ -249,8 +249,8 @@ namespace WixToolset.Msmq | |||
249 | symbol.Quota = quota; | 249 | symbol.Quota = quota; |
250 | } | 250 | } |
251 | 251 | ||
252 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, SymbolDefinitions.CustomAction, "MessageQueuingInstall"); | 252 | this.ParseHelper.CreateCustomActionReference(sourceLineNumbers, section, "Wix4MessageQueuingInstall", this.Context.Platform, CustomActionPlatforms.X86 | CustomActionPlatforms.X64 | CustomActionPlatforms.ARM64); |
253 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, SymbolDefinitions.CustomAction, "MessageQueuingUninstall"); | 253 | this.ParseHelper.CreateCustomActionReference(sourceLineNumbers, section, "Wix4MessageQueuingUninstall", this.Context.Platform, CustomActionPlatforms.X86 | CustomActionPlatforms.X64 | CustomActionPlatforms.ARM64); |
254 | } | 254 | } |
255 | 255 | ||
256 | /// <summary> | 256 | /// <summary> |
diff --git a/src/ext/Msmq/wixext/MsmqTableDefinitions.cs b/src/ext/Msmq/wixext/MsmqTableDefinitions.cs index 46e2dd10..c48292bc 100644 --- a/src/ext/Msmq/wixext/MsmqTableDefinitions.cs +++ b/src/ext/Msmq/wixext/MsmqTableDefinitions.cs | |||
@@ -7,7 +7,7 @@ namespace WixToolset.Msmq | |||
7 | public static class MsmqTableDefinitions | 7 | public static class MsmqTableDefinitions |
8 | { | 8 | { |
9 | public static readonly TableDefinition MessageQueue = new TableDefinition( | 9 | public static readonly TableDefinition MessageQueue = new TableDefinition( |
10 | "MessageQueue", | 10 | "Wix4MessageQueue", |
11 | MsmqSymbolDefinitions.MessageQueue, | 11 | MsmqSymbolDefinitions.MessageQueue, |
12 | new[] | 12 | new[] |
13 | { | 13 | { |
@@ -27,7 +27,7 @@ namespace WixToolset.Msmq | |||
27 | ); | 27 | ); |
28 | 28 | ||
29 | public static readonly TableDefinition MessageQueueUserPermission = new TableDefinition( | 29 | public static readonly TableDefinition MessageQueueUserPermission = new TableDefinition( |
30 | "MessageQueueUserPermission", | 30 | "Wix4MessageQueueUserPermission", |
31 | MsmqSymbolDefinitions.MessageQueueUserPermission, | 31 | MsmqSymbolDefinitions.MessageQueueUserPermission, |
32 | new[] | 32 | new[] |
33 | { | 33 | { |
@@ -41,7 +41,7 @@ namespace WixToolset.Msmq | |||
41 | ); | 41 | ); |
42 | 42 | ||
43 | public static readonly TableDefinition MessageQueueGroupPermission = new TableDefinition( | 43 | public static readonly TableDefinition MessageQueueGroupPermission = new TableDefinition( |
44 | "MessageQueueGroupPermission", | 44 | "Wix4MessageQueueGroupPermission", |
45 | MsmqSymbolDefinitions.MessageQueueGroupPermission, | 45 | MsmqSymbolDefinitions.MessageQueueGroupPermission, |
46 | new[] | 46 | new[] |
47 | { | 47 | { |
diff --git a/src/ext/Msmq/wixlib/MsmqExtension.wxs b/src/ext/Msmq/wixlib/MsmqExtension.wxs index 87b2b382..a762575b 100644 --- a/src/ext/Msmq/wixlib/MsmqExtension.wxs +++ b/src/ext/Msmq/wixlib/MsmqExtension.wxs | |||
@@ -2,28 +2,13 @@ | |||
2 | 2 | ||
3 | 3 | ||
4 | <Wix xmlns="http://wixtoolset.org/schemas/v4/wxs"> | 4 | <Wix xmlns="http://wixtoolset.org/schemas/v4/wxs"> |
5 | <?include ..\..\caerr.wxi ?> | 5 | <?include ..\..\caDecor.wxi ?> |
6 | 6 | <?include ..\..\caerr.wxi ?> | |
7 | <Fragment> | 7 | |
8 | <UI> | 8 | <Fragment> |
9 | <ProgressText Action="MessageQueuingExecuteInstall" Template="!(loc.MessageQueuingExecuteInstallTemplate)" Message="!(loc.MessageQueuingExecuteInstall)" /> | 9 | <UI Id="MsmqUI"> |
10 | <ProgressText Action="MessageQueuingExecuteUninstall" Template="!(loc.MessageQueuingExecuteUninstallTemplate)" Message="!(loc.MessageQueuingExecuteUninstall)" /> | 10 | <ProgressText Action="$(var.Prefix)MessageQueuingExecuteInstall$(var.Suffix)" Template="!(loc.MessageQueuingExecuteInstallTemplate)" Message="!(loc.MessageQueuingExecuteInstall)" /> |
11 | </UI> | 11 | <ProgressText Action="$(var.Prefix)MessageQueuingExecuteUninstall$(var.Suffix)" Template="!(loc.MessageQueuingExecuteUninstallTemplate)" Message="!(loc.MessageQueuingExecuteUninstall)" /> |
12 | 12 | </UI> | |
13 | <CustomAction Id="MessageQueuingInstall" DllEntry="MessageQueuingInstall" Execute="immediate" Return="check" SuppressModularization="yes" BinaryRef="MsmqCA" /> | 13 | </Fragment> |
14 | <CustomAction Id="MessageQueuingUninstall" DllEntry="MessageQueuingUninstall" Execute="immediate" Return="check" SuppressModularization="yes" BinaryRef="MsmqCA" /> | ||
15 | <CustomAction Id="MessageQueuingExecuteInstall" DllEntry="MessageQueuingExecuteInstall" Execute="deferred" Return="check" Impersonate="no" SuppressModularization="yes" BinaryRef="MsmqCA" /> | ||
16 | <CustomAction Id="MessageQueuingRollbackInstall" DllEntry="MessageQueuingRollbackInstall" Execute="rollback" Return="check" Impersonate="no" SuppressModularization="yes" BinaryRef="MsmqCA" /> | ||
17 | <CustomAction Id="MessageQueuingExecuteUninstall" DllEntry="MessageQueuingExecuteUninstall" Execute="deferred" Return="check" Impersonate="no" SuppressModularization="yes" BinaryRef="MsmqCA" /> | ||
18 | <CustomAction Id="MessageQueuingRollbackUninstall" DllEntry="MessageQueuingRollbackUninstall" Execute="rollback" Return="check" Impersonate="no" SuppressModularization="yes" BinaryRef="MsmqCA" /> | ||
19 | |||
20 | <InstallExecuteSequence> | ||
21 | <Custom Action="MessageQueuingUninstall" After="DeleteServices" Overridable="yes" Condition="VersionNT >= 500" /> | ||
22 | <Custom Action="MessageQueuingInstall" Before="InstallServices" Overridable="yes" Condition="VersionNT >= 500" /> | ||
23 | </InstallExecuteSequence> | ||
24 | </Fragment> | ||
25 | |||
26 | <Fragment> | ||
27 | <Binary Id="MsmqCA" SourceFile="msmqca.dll" /> | ||
28 | </Fragment> | ||
29 | </Wix> | 14 | </Wix> |
diff --git a/src/ext/Msmq/wixlib/MsmqExtension_Platform.wxi b/src/ext/Msmq/wixlib/MsmqExtension_Platform.wxi new file mode 100644 index 00000000..278bb3a8 --- /dev/null +++ b/src/ext/Msmq/wixlib/MsmqExtension_Platform.wxi | |||
@@ -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 | |||
4 | <Include xmlns="http://wixtoolset.org/schemas/v4/wxs"> | ||
5 | <?include ..\..\caDecor.wxi ?> | ||
6 | |||
7 | <Fragment> | ||
8 | <UIRef Id="MsmqUI" /> | ||
9 | |||
10 | <CustomAction Id="$(var.Prefix)MessageQueuingInstall$(var.Suffix)" DllEntry="MessageQueuingInstall" Execute="immediate" Return="check" SuppressModularization="yes" BinaryRef="$(var.Prefix)MsmqCA$(var.Suffix)" /> | ||
11 | <CustomAction Id="$(var.Prefix)MessageQueuingUninstall$(var.Suffix)" DllEntry="MessageQueuingUninstall" Execute="immediate" Return="check" SuppressModularization="yes" BinaryRef="$(var.Prefix)MsmqCA$(var.Suffix)" /> | ||
12 | <CustomAction Id="$(var.Prefix)MessageQueuingExecuteInstall$(var.Suffix)" DllEntry="MessageQueuingExecuteInstall" Execute="deferred" Return="check" Impersonate="no" SuppressModularization="yes" BinaryRef="$(var.Prefix)MsmqCA$(var.Suffix)" /> | ||
13 | <CustomAction Id="$(var.Prefix)MessageQueuingRollbackInstall$(var.Suffix)" DllEntry="MessageQueuingRollbackInstall" Execute="rollback" Return="check" Impersonate="no" SuppressModularization="yes" BinaryRef="$(var.Prefix)MsmqCA$(var.Suffix)" /> | ||
14 | <CustomAction Id="$(var.Prefix)MessageQueuingExecuteUninstall$(var.Suffix)" DllEntry="MessageQueuingExecuteUninstall" Execute="deferred" Return="check" Impersonate="no" SuppressModularization="yes" BinaryRef="$(var.Prefix)MsmqCA$(var.Suffix)" /> | ||
15 | <CustomAction Id="$(var.Prefix)MessageQueuingRollbackUninstall$(var.Suffix)" DllEntry="MessageQueuingRollbackUninstall" Execute="rollback" Return="check" Impersonate="no" SuppressModularization="yes" BinaryRef="$(var.Prefix)MsmqCA$(var.Suffix)" /> | ||
16 | |||
17 | <InstallExecuteSequence> | ||
18 | <Custom Action="$(var.Prefix)MessageQueuingUninstall$(var.Suffix)" After="DeleteServices" Overridable="yes" Condition="VersionNT >= 500" /> | ||
19 | <Custom Action="$(var.Prefix)MessageQueuingInstall$(var.Suffix)" Before="InstallServices" Overridable="yes" Condition="VersionNT >= 500" /> | ||
20 | </InstallExecuteSequence> | ||
21 | </Fragment> | ||
22 | |||
23 | <Fragment> | ||
24 | <Binary Id="$(var.Prefix)MsmqCA$(var.Suffix)" SourceFile="!(bindpath.$(var.platform))msmqca.dll" /> | ||
25 | </Fragment> | ||
26 | </Include> | ||
diff --git a/src/ext/Msmq/wixlib/MsmqExtension_arm64.wxs b/src/ext/Msmq/wixlib/MsmqExtension_arm64.wxs new file mode 100644 index 00000000..f4ecad75 --- /dev/null +++ b/src/ext/Msmq/wixlib/MsmqExtension_arm64.wxs | |||
@@ -0,0 +1,7 @@ | |||
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 | |||
4 | <Wix xmlns="http://wixtoolset.org/schemas/v4/wxs"> | ||
5 | <?define platform=arm64 ?> | ||
6 | <?include MsmqExtension_Platform.wxi ?> | ||
7 | </Wix> | ||
diff --git a/src/ext/Msmq/wixlib/MsmqExtension_x64.wxs b/src/ext/Msmq/wixlib/MsmqExtension_x64.wxs new file mode 100644 index 00000000..3b1b3794 --- /dev/null +++ b/src/ext/Msmq/wixlib/MsmqExtension_x64.wxs | |||
@@ -0,0 +1,7 @@ | |||
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 | |||
4 | <Wix xmlns="http://wixtoolset.org/schemas/v4/wxs"> | ||
5 | <?define platform=x64 ?> | ||
6 | <?include MsmqExtension_Platform.wxi ?> | ||
7 | </Wix> | ||
diff --git a/src/ext/Msmq/wixlib/MsmqExtension_x86.wxs b/src/ext/Msmq/wixlib/MsmqExtension_x86.wxs new file mode 100644 index 00000000..a5c27ab5 --- /dev/null +++ b/src/ext/Msmq/wixlib/MsmqExtension_x86.wxs | |||
@@ -0,0 +1,7 @@ | |||
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 | |||
4 | <Wix xmlns="http://wixtoolset.org/schemas/v4/wxs"> | ||
5 | <?define platform=x86 ?> | ||
6 | <?include MsmqExtension_Platform.wxi ?> | ||
7 | </Wix> | ||
diff --git a/src/ext/Msmq/wixlib/msmq.wixproj b/src/ext/Msmq/wixlib/msmq.wixproj index 15111cb5..e2887823 100644 --- a/src/ext/Msmq/wixlib/msmq.wixproj +++ b/src/ext/Msmq/wixlib/msmq.wixproj | |||
@@ -7,7 +7,15 @@ | |||
7 | </PropertyGroup> | 7 | </PropertyGroup> |
8 | 8 | ||
9 | <ItemGroup> | 9 | <ItemGroup> |
10 | <ProjectReference Include="..\ca\msmqca.vcxproj" ReferenceOutputAssembly="false" /> | 10 | <BindInputPaths Include="$(OutputPath)x86" BindName='x86' /> |
11 | <BindInputPaths Include="$(OutputPath)x64" BindName='x64' /> | ||
12 | <BindInputPaths Include="$(OutputPath)arm64" BindName='arm64' /> | ||
13 | </ItemGroup> | ||
14 | |||
15 | <ItemGroup> | ||
16 | <ProjectReference Include="..\ca\msmqca.vcxproj" Properties="Platform=ARM64" /> | ||
17 | <ProjectReference Include="..\ca\msmqca.vcxproj" Properties="Platform=x86" /> | ||
18 | <ProjectReference Include="..\ca\msmqca.vcxproj" Properties="Platform=x64" /> | ||
11 | </ItemGroup> | 19 | </ItemGroup> |
12 | 20 | ||
13 | <ItemGroup> | 21 | <ItemGroup> |