From b9c712f26d921f7ffe0509d1cc45456680e8139f Mon Sep 17 00:00:00 2001 From: Bob Arnson Date: Wed, 22 Dec 2021 23:52:40 -0500 Subject: Version extension ids. https://github.com/wixtoolset/issues/issues/5933 - Add support for detecting VS2022. - Add x64 custom actions. - Remove ancient Help 2.0 support. - Update WixCop to add the new element to trigger custom action. --- src/ext/VisualStudio/VisualStudio.wixext.sln | 18 +- src/ext/VisualStudio/ca/vsca.cpp | 81 ++++ src/ext/VisualStudio/ca/vsca.vcxproj | 8 + .../TestData/UsingVsixPackage/Package.wxs | 4 +- .../UsingVsixPackage/PackageComponents.wxs | 1 - .../VisualStudioExtensionFixture.cs | 3 +- .../VisualStudio/wixext/Symbols/HelpFileSymbol.cs | 95 ---- .../wixext/Symbols/HelpFileToNamespaceSymbol.cs | 55 --- .../wixext/Symbols/HelpFilterSymbol.cs | 55 --- .../wixext/Symbols/HelpFilterToNamespaceSymbol.cs | 55 --- .../wixext/Symbols/HelpNamespaceSymbol.cs | 63 --- .../wixext/Symbols/HelpPluginSymbol.cs | 79 ---- .../wixext/Symbols/VSSymbolDefinitions.cs | 59 --- src/ext/VisualStudio/wixext/VSCompiler.cs | 508 +-------------------- src/ext/VisualStudio/wixext/VSExtensionData.cs | 6 - src/ext/VisualStudio/wixext/VSExtensionFactory.cs | 1 - src/ext/VisualStudio/wixext/VSTableDefinitions.cs | 97 ---- .../VSWindowsInstallerBackendBinderExtension.cs | 13 - .../wixlib/HTML_Help_Registration__RTL_X86.wxs | 67 --- .../VisualStudio/wixlib/Redist/BIN_File_107602.dll | Bin 866816 -> 0 bytes .../VisualStudio/wixlib/Redist/BIN_File_46001.dll | Bin 129536 -> 0 bytes .../VisualStudio/wixlib/Redist/BIN_File_46002.dll | Bin 108544 -> 0 bytes src/ext/VisualStudio/wixlib/VS2017.wxs | 5 +- src/ext/VisualStudio/wixlib/VS2019.wxs | 5 +- src/ext/VisualStudio/wixlib/VS2022.wxs | 141 ++++++ .../VisualStudio/wixlib/VSExtension_Platform.wxi | 10 +- src/ext/VisualStudio/wixlib/VSExtension_x64.wxs | 8 + src/ext/VisualStudio/wixlib/caSuffix.wxi | 28 -- src/ext/VisualStudio/wixlib/vs.wixproj | 3 +- .../vs2005/VS2005_VSIPCC_Collection_Files_RTL.wxs | 63 --- .../wixlib/vs2005/redist/BIN_File_60377.dll | Bin 45056 -> 0 bytes .../wixlib/vs2005/redist/vsipCCSamples.HxK | 14 - .../VisualStudio/wixlib/vs2005/redist/vsipcc.hxc | 33 -- .../VisualStudio/wixlib/vs2005/redist/vsipcc.hxt | 15 - .../wixlib/vs2005/redist/vsipccALinks.hxk | 13 - .../wixlib/vs2005/redist/vsipccBLinks.hxk | 13 - .../wixlib/vs2005/redist/vsipccFLinks.hxk | 14 - .../wixlib/vs2005/redist/vsipccKLinks.hxk | 13 - .../wixlib/vs2005/redist/vsipccNamedURLs.hxk | 13 - .../wixlib/vs2005/redist/vsipccSlinks.hxk | 14 - .../wixlib/vs2005/redist/vsipcc_reg.hxs | Bin 18400 -> 0 bytes .../vs2008/VS2008_VSIPCC_Collection_Files_RTL.wxs | 60 --- .../wixlib/vs2008/redist/BIN_435439_x86_enu.dll | Bin 103944 -> 0 bytes .../VisualStudio/wixlib/vs2008/redist/_ALinks.hxk | 10 - .../VisualStudio/wixlib/vs2008/redist/_BLinks.hxk | 10 - .../VisualStudio/wixlib/vs2008/redist/_CLinks.hxk | 13 - .../VisualStudio/wixlib/vs2008/redist/_FLinks.hxk | 10 - .../VisualStudio/wixlib/vs2008/redist/_KLinks.hxk | 10 - .../VisualStudio/wixlib/vs2008/redist/_SLinks.hxk | 13 - .../wixlib/vs2008/redist/_vsipcc90.hxc | 33 -- .../wixlib/vs2008/redist/_vsipcc90.hxt | 15 - .../wixlib/vs2008/redist/_vsipcc_namedUrls.hxk | 13 - .../wixlib/vs2008/redist/_vsipcc_samples.HxK | 14 - .../wixlib/vs2008/redist/vsipcc_reg.hxs | Bin 18488 -> 0 bytes 54 files changed, 268 insertions(+), 1606 deletions(-) delete mode 100644 src/ext/VisualStudio/wixext/Symbols/HelpFileSymbol.cs delete mode 100644 src/ext/VisualStudio/wixext/Symbols/HelpFileToNamespaceSymbol.cs delete mode 100644 src/ext/VisualStudio/wixext/Symbols/HelpFilterSymbol.cs delete mode 100644 src/ext/VisualStudio/wixext/Symbols/HelpFilterToNamespaceSymbol.cs delete mode 100644 src/ext/VisualStudio/wixext/Symbols/HelpNamespaceSymbol.cs delete mode 100644 src/ext/VisualStudio/wixext/Symbols/HelpPluginSymbol.cs delete mode 100644 src/ext/VisualStudio/wixext/Symbols/VSSymbolDefinitions.cs delete mode 100644 src/ext/VisualStudio/wixext/VSTableDefinitions.cs delete mode 100644 src/ext/VisualStudio/wixext/VSWindowsInstallerBackendBinderExtension.cs delete mode 100644 src/ext/VisualStudio/wixlib/HTML_Help_Registration__RTL_X86.wxs delete mode 100644 src/ext/VisualStudio/wixlib/Redist/BIN_File_107602.dll delete mode 100644 src/ext/VisualStudio/wixlib/Redist/BIN_File_46001.dll delete mode 100644 src/ext/VisualStudio/wixlib/Redist/BIN_File_46002.dll create mode 100644 src/ext/VisualStudio/wixlib/VS2022.wxs create mode 100644 src/ext/VisualStudio/wixlib/VSExtension_x64.wxs delete mode 100644 src/ext/VisualStudio/wixlib/caSuffix.wxi delete mode 100644 src/ext/VisualStudio/wixlib/vs2005/VS2005_VSIPCC_Collection_Files_RTL.wxs delete mode 100644 src/ext/VisualStudio/wixlib/vs2005/redist/BIN_File_60377.dll delete mode 100644 src/ext/VisualStudio/wixlib/vs2005/redist/vsipCCSamples.HxK delete mode 100644 src/ext/VisualStudio/wixlib/vs2005/redist/vsipcc.hxc delete mode 100644 src/ext/VisualStudio/wixlib/vs2005/redist/vsipcc.hxt delete mode 100644 src/ext/VisualStudio/wixlib/vs2005/redist/vsipccALinks.hxk delete mode 100644 src/ext/VisualStudio/wixlib/vs2005/redist/vsipccBLinks.hxk delete mode 100644 src/ext/VisualStudio/wixlib/vs2005/redist/vsipccFLinks.hxk delete mode 100644 src/ext/VisualStudio/wixlib/vs2005/redist/vsipccKLinks.hxk delete mode 100644 src/ext/VisualStudio/wixlib/vs2005/redist/vsipccNamedURLs.hxk delete mode 100644 src/ext/VisualStudio/wixlib/vs2005/redist/vsipccSlinks.hxk delete mode 100644 src/ext/VisualStudio/wixlib/vs2005/redist/vsipcc_reg.hxs delete mode 100644 src/ext/VisualStudio/wixlib/vs2008/VS2008_VSIPCC_Collection_Files_RTL.wxs delete mode 100644 src/ext/VisualStudio/wixlib/vs2008/redist/BIN_435439_x86_enu.dll delete mode 100644 src/ext/VisualStudio/wixlib/vs2008/redist/_ALinks.hxk delete mode 100644 src/ext/VisualStudio/wixlib/vs2008/redist/_BLinks.hxk delete mode 100644 src/ext/VisualStudio/wixlib/vs2008/redist/_CLinks.hxk delete mode 100644 src/ext/VisualStudio/wixlib/vs2008/redist/_FLinks.hxk delete mode 100644 src/ext/VisualStudio/wixlib/vs2008/redist/_KLinks.hxk delete mode 100644 src/ext/VisualStudio/wixlib/vs2008/redist/_SLinks.hxk delete mode 100644 src/ext/VisualStudio/wixlib/vs2008/redist/_vsipcc90.hxc delete mode 100644 src/ext/VisualStudio/wixlib/vs2008/redist/_vsipcc90.hxt delete mode 100644 src/ext/VisualStudio/wixlib/vs2008/redist/_vsipcc_namedUrls.hxk delete mode 100644 src/ext/VisualStudio/wixlib/vs2008/redist/_vsipcc_samples.HxK delete mode 100644 src/ext/VisualStudio/wixlib/vs2008/redist/vsipcc_reg.hxs (limited to 'src/ext') diff --git a/src/ext/VisualStudio/VisualStudio.wixext.sln b/src/ext/VisualStudio/VisualStudio.wixext.sln index 5f30fbcf..9bdd6228 100644 --- a/src/ext/VisualStudio/VisualStudio.wixext.sln +++ b/src/ext/VisualStudio/VisualStudio.wixext.sln @@ -30,6 +30,15 @@ Global {45308B85-0628-4978-8FC8-6AD9E1AD5949}.Release|x64.ActiveCfg = Release|Win32 {45308B85-0628-4978-8FC8-6AD9E1AD5949}.Release|x86.ActiveCfg = Release|Win32 {45308B85-0628-4978-8FC8-6AD9E1AD5949}.Release|x86.Build.0 = Release|Win32 + {14345C9D-8AF8-435A-BB1B-E067CE7EB321}.Debug|Any CPU.ActiveCfg = Debug|x86 + {14345C9D-8AF8-435A-BB1B-E067CE7EB321}.Debug|Any CPU.Build.0 = Debug|x86 + {14345C9D-8AF8-435A-BB1B-E067CE7EB321}.Debug|x64.ActiveCfg = Debug|x86 + {14345C9D-8AF8-435A-BB1B-E067CE7EB321}.Debug|x86.ActiveCfg = Debug|x86 + {14345C9D-8AF8-435A-BB1B-E067CE7EB321}.Debug|x86.Build.0 = Debug|x86 + {14345C9D-8AF8-435A-BB1B-E067CE7EB321}.Release|Any CPU.ActiveCfg = Release|x86 + {14345C9D-8AF8-435A-BB1B-E067CE7EB321}.Release|x64.ActiveCfg = Release|x86 + {14345C9D-8AF8-435A-BB1B-E067CE7EB321}.Release|x86.ActiveCfg = Release|x86 + {14345C9D-8AF8-435A-BB1B-E067CE7EB321}.Release|x86.Build.0 = Release|x86 {61BFD377-9DE1-48B4-8687-560DF68D6F3B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {61BFD377-9DE1-48B4-8687-560DF68D6F3B}.Debug|Any CPU.Build.0 = Debug|Any CPU {61BFD377-9DE1-48B4-8687-560DF68D6F3B}.Debug|x64.ActiveCfg = Debug|Any CPU @@ -42,15 +51,6 @@ Global {61BFD377-9DE1-48B4-8687-560DF68D6F3B}.Release|x64.Build.0 = Release|Any CPU {61BFD377-9DE1-48B4-8687-560DF68D6F3B}.Release|x86.ActiveCfg = Release|Any CPU {61BFD377-9DE1-48B4-8687-560DF68D6F3B}.Release|x86.Build.0 = Release|Any CPU - {14345C9D-8AF8-435A-BB1B-E067CE7EB321}.Debug|Any CPU.ActiveCfg = Debug|x86 - {14345C9D-8AF8-435A-BB1B-E067CE7EB321}.Debug|Any CPU.Build.0 = Debug|x86 - {14345C9D-8AF8-435A-BB1B-E067CE7EB321}.Debug|x64.ActiveCfg = Debug|x86 - {14345C9D-8AF8-435A-BB1B-E067CE7EB321}.Debug|x86.ActiveCfg = Debug|x86 - {14345C9D-8AF8-435A-BB1B-E067CE7EB321}.Debug|x86.Build.0 = Debug|x86 - {14345C9D-8AF8-435A-BB1B-E067CE7EB321}.Release|Any CPU.ActiveCfg = Release|x86 - {14345C9D-8AF8-435A-BB1B-E067CE7EB321}.Release|x64.ActiveCfg = Release|x86 - {14345C9D-8AF8-435A-BB1B-E067CE7EB321}.Release|x86.ActiveCfg = Release|x86 - {14345C9D-8AF8-435A-BB1B-E067CE7EB321}.Release|x86.Build.0 = Release|x86 {DD2BD0F7-1E4A-4D11-954C-3505323C4E1B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {DD2BD0F7-1E4A-4D11-954C-3505323C4E1B}.Debug|Any CPU.Build.0 = Debug|Any CPU {DD2BD0F7-1E4A-4D11-954C-3505323C4E1B}.Debug|x64.ActiveCfg = Debug|Any CPU diff --git a/src/ext/VisualStudio/ca/vsca.cpp b/src/ext/VisualStudio/ca/vsca.cpp index 54a54a34..736add1f 100644 --- a/src/ext/VisualStudio/ca/vsca.cpp +++ b/src/ext/VisualStudio/ca/vsca.cpp @@ -53,6 +53,12 @@ static HRESULT ProcessVS2019( __in BOOL fComplete ); +static HRESULT ProcessVS2022( + __in_opt ISetupInstance* pInstance, + __in DWORD64 qwVersion, + __in BOOL fComplete + ); + static HRESULT SetPropertyForComponent( __in DWORD cComponents, __in VS_COMPONENT_PROPERTY* rgComponents, @@ -63,6 +69,7 @@ static VS_INSTANCE vrgInstances[] = { { FILEMAKEVERSION(15, 0, 0, 0), FILEMAKEVERSION(15, 0xffff, 0xffff, 0xffff), ProcessVS2017 }, { FILEMAKEVERSION(16, 0, 0, 0), FILEMAKEVERSION(16, 0xffff, 0xffff, 0xffff), ProcessVS2019 }, + { FILEMAKEVERSION(17, 0, 0, 0), FILEMAKEVERSION(17, 0xffff, 0xffff, 0xffff), ProcessVS2022 }, }; /****************************************************************** @@ -485,6 +492,80 @@ LExit: return hr; } +static HRESULT ProcessVS2022( + __in_opt ISetupInstance* pInstance, + __in DWORD64 qwVersion, + __in BOOL fComplete + ) +{ + static ISetupInstance* pLatest = NULL; + static DWORD64 qwLatest = 0; + + static LPCWSTR rgwzProducts[] = + { + L"Microsoft.VisualStudio.Product.Community", + L"Microsoft.VisualStudio.Product.Professional", + L"Microsoft.VisualStudio.Product.Enterprise", + }; + + // TODO: Consider making table-driven with these defaults per-version for easy customization. + static VS_COMPONENT_PROPERTY rgComponents[] = + { + { L"Microsoft.VisualStudio.Component.FSharp", L"VS2022_IDE_FSHARP_PROJECTSYSTEM_INSTALLED" }, + { L"Microsoft.VisualStudio.Component.Roslyn.LanguageServices", L"VS2022_IDE_VB_PROJECTSYSTEM_INSTALLED" }, + { L"Microsoft.VisualStudio.Component.Roslyn.LanguageServices", L"VS2022_IDE_VCSHARP_PROJECTSYSTEM_INSTALLED" }, + { L"Microsoft.VisualStudio.PackageGroup.TestTools.Core", L"VS2022_IDE_VSTS_TESTSYSTEM_INSTALLED" }, + { L"Microsoft.VisualStudio.Component.VC.CoreIde", L"VS2022_IDE_VC_PROJECTSYSTEM_INSTALLED" }, + { L"Microsoft.VisualStudio.Component.Web", L"VS2022_IDE_VWD_PROJECTSYSTEM_INSTALLED" }, + { L"Microsoft.VisualStudio.PackageGroup.DslRuntime", L"VS2022_IDE_MODELING_PROJECTSYSTEM_INSTALLED" }, + }; + + HRESULT hr = S_OK; + + if (fComplete) + { + if (pLatest) + { + hr = ProcessInstance(pLatest, L"VS2022_ROOT_FOLDER", countof(rgComponents), rgComponents); + ExitOnFailure(hr, "Failed to process VS2022 instance."); + } + } + else if (pInstance) + { + hr = InstanceInProducts(pInstance, countof(rgwzProducts), rgwzProducts); + ExitOnFailure(hr, "Failed to compare product IDs."); + + if (S_FALSE == hr) + { + ExitFunction(); + } + + hr = InstanceIsGreater(pLatest, qwLatest, pInstance, qwVersion); + ExitOnFailure(hr, "Failed to compare instances."); + + if (S_FALSE == hr) + { + ExitFunction(); + } + + ReleaseNullObject(pLatest); + + pLatest = pInstance; + qwLatest = qwVersion; + + // Caller will do a final Release() otherwise. + pLatest->AddRef(); + } + +LExit: + if (fComplete) + { + ReleaseObject(pLatest); + } + + return hr; +} + static HRESULT SetPropertyForComponent( __in DWORD cComponents, __in VS_COMPONENT_PROPERTY* rgComponents, diff --git a/src/ext/VisualStudio/ca/vsca.vcxproj b/src/ext/VisualStudio/ca/vsca.vcxproj index 8d6a3500..0b838b82 100644 --- a/src/ext/VisualStudio/ca/vsca.vcxproj +++ b/src/ext/VisualStudio/ca/vsca.vcxproj @@ -11,6 +11,14 @@ Release Win32 + + Debug + x64 + + + Release + x64 + diff --git a/src/ext/VisualStudio/test/WixToolsetTest.VisualStudio/TestData/UsingVsixPackage/Package.wxs b/src/ext/VisualStudio/test/WixToolsetTest.VisualStudio/TestData/UsingVsixPackage/Package.wxs index c2196807..0434f81f 100644 --- a/src/ext/VisualStudio/test/WixToolsetTest.VisualStudio/TestData/UsingVsixPackage/Package.wxs +++ b/src/ext/VisualStudio/test/WixToolsetTest.VisualStudio/TestData/UsingVsixPackage/Package.wxs @@ -1,8 +1,10 @@ - + + + diff --git a/src/ext/VisualStudio/test/WixToolsetTest.VisualStudio/TestData/UsingVsixPackage/PackageComponents.wxs b/src/ext/VisualStudio/test/WixToolsetTest.VisualStudio/TestData/UsingVsixPackage/PackageComponents.wxs index c8c72cc0..d647e422 100644 --- a/src/ext/VisualStudio/test/WixToolsetTest.VisualStudio/TestData/UsingVsixPackage/PackageComponents.wxs +++ b/src/ext/VisualStudio/test/WixToolsetTest.VisualStudio/TestData/UsingVsixPackage/PackageComponents.wxs @@ -7,7 +7,6 @@ - diff --git a/src/ext/VisualStudio/test/WixToolsetTest.VisualStudio/VisualStudioExtensionFixture.cs b/src/ext/VisualStudio/test/WixToolsetTest.VisualStudio/VisualStudioExtensionFixture.cs index 306962e3..1a574261 100644 --- a/src/ext/VisualStudio/test/WixToolsetTest.VisualStudio/VisualStudioExtensionFixture.cs +++ b/src/ext/VisualStudio/test/WixToolsetTest.VisualStudio/VisualStudioExtensionFixture.cs @@ -2,7 +2,6 @@ namespace WixToolsetTest.VisualStudio { - using System.Linq; using WixBuildTools.TestSupport; using WixToolset.Core.TestPackage; using WixToolset.VisualStudio; @@ -27,12 +26,12 @@ namespace WixToolsetTest.VisualStudio "CustomAction:viuMpl8IvFSDAzTulrmpAzBwAmCRTQ\t1074\tVS_VSIX_INSTALLER_PATH\t/q \"[#filzi8nwT8Ta133xcfp7qSIdGdRiC0]\"\t", "CustomAction:vrmLa9TyFoAVwf8JmA0_ZJHA69J2fo\t3442\tVS_VSIX_INSTALLER_PATH\t/q /u:\"ExampleVsix\" /admin\t", "CustomAction:vruMpl8IvFSDAzTulrmpAzBwAmCRTQ\t1394\tVS_VSIX_INSTALLER_PATH\t/q /u:\"ExampleVsix\"\t", - "CustomAction:VSFindInstances\t257\tVSCA\tFindInstances\t", "CustomAction:vumLa9TyFoAVwf8JmA0_ZJHA69J2fo\t3186\tVS_VSIX_INSTALLER_PATH\t/q /u:\"ExampleVsix\" /admin\t", "CustomAction:vuuMpl8IvFSDAzTulrmpAzBwAmCRTQ\t1138\tVS_VSIX_INSTALLER_PATH\t/q /u:\"ExampleVsix\"\t", "CustomAction:Vwd2012VsixWhenVSAbsent\t51\tVS_VSIX_INSTALLER_PATH\t[VWD2012_VSIX_INSTALL_ROOT]\\Common7\\IDE\\VSIXInstaller.exe\t", "CustomAction:Vwd2013VsixWhenVSAbsent\t51\tVS_VSIX_INSTALLER_PATH\t[VWD2013_VSIX_INSTALL_ROOT]\\Common7\\IDE\\VSIXInstaller.exe\t", "CustomAction:Vwd2015VsixWhenVSAbsent\t51\tVS_VSIX_INSTALLER_PATH\t[VWD2015_VSIX_INSTALL_ROOT]\\Common7\\IDE\\VSIXInstaller.exe\t", + "CustomAction:Wix4VSFindInstances_X86\t257\tVSCA_X86\tFindInstances\t", }, results); } diff --git a/src/ext/VisualStudio/wixext/Symbols/HelpFileSymbol.cs b/src/ext/VisualStudio/wixext/Symbols/HelpFileSymbol.cs deleted file mode 100644 index 8078f4ab..00000000 --- a/src/ext/VisualStudio/wixext/Symbols/HelpFileSymbol.cs +++ /dev/null @@ -1,95 +0,0 @@ -// 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. - -namespace WixToolset.VisualStudio -{ - using WixToolset.Data; - using WixToolset.VisualStudio.Symbols; - - public static partial class VSSymbolDefinitions - { - public static readonly IntermediateSymbolDefinition HelpFile = new IntermediateSymbolDefinition( - VSSymbolDefinitionType.HelpFile.ToString(), - new[] - { - new IntermediateFieldDefinition(nameof(HelpFileSymbolFields.HelpFileName), IntermediateFieldType.String), - new IntermediateFieldDefinition(nameof(HelpFileSymbolFields.LangID), IntermediateFieldType.Number), - new IntermediateFieldDefinition(nameof(HelpFileSymbolFields.HxSFileRef), IntermediateFieldType.String), - new IntermediateFieldDefinition(nameof(HelpFileSymbolFields.HxIFileRef), IntermediateFieldType.String), - new IntermediateFieldDefinition(nameof(HelpFileSymbolFields.HxQFileRef), IntermediateFieldType.String), - new IntermediateFieldDefinition(nameof(HelpFileSymbolFields.HxRFileRef), IntermediateFieldType.String), - new IntermediateFieldDefinition(nameof(HelpFileSymbolFields.SamplesFileRef), IntermediateFieldType.String), - }, - typeof(HelpFileSymbol)); - } -} - -namespace WixToolset.VisualStudio.Symbols -{ - using WixToolset.Data; - - public enum HelpFileSymbolFields - { - HelpFileName, - LangID, - HxSFileRef, - HxIFileRef, - HxQFileRef, - HxRFileRef, - SamplesFileRef, - } - - public class HelpFileSymbol : IntermediateSymbol - { - public HelpFileSymbol() : base(VSSymbolDefinitions.HelpFile, null, null) - { - } - - public HelpFileSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(VSSymbolDefinitions.HelpFile, sourceLineNumber, id) - { - } - - public IntermediateField this[HelpFileSymbolFields index] => this.Fields[(int)index]; - - public string HelpFileName - { - get => this.Fields[(int)HelpFileSymbolFields.HelpFileName].AsString(); - set => this.Set((int)HelpFileSymbolFields.HelpFileName, value); - } - - public int? LangID - { - get => this.Fields[(int)HelpFileSymbolFields.LangID].AsNullableNumber(); - set => this.Set((int)HelpFileSymbolFields.LangID, value); - } - - public string HxSFileRef - { - get => this.Fields[(int)HelpFileSymbolFields.HxSFileRef].AsString(); - set => this.Set((int)HelpFileSymbolFields.HxSFileRef, value); - } - - public string HxIFileRef - { - get => this.Fields[(int)HelpFileSymbolFields.HxIFileRef].AsString(); - set => this.Set((int)HelpFileSymbolFields.HxIFileRef, value); - } - - public string HxQFileRef - { - get => this.Fields[(int)HelpFileSymbolFields.HxQFileRef].AsString(); - set => this.Set((int)HelpFileSymbolFields.HxQFileRef, value); - } - - public string HxRFileRef - { - get => this.Fields[(int)HelpFileSymbolFields.HxRFileRef].AsString(); - set => this.Set((int)HelpFileSymbolFields.HxRFileRef, value); - } - - public string SamplesFileRef - { - get => this.Fields[(int)HelpFileSymbolFields.SamplesFileRef].AsString(); - set => this.Set((int)HelpFileSymbolFields.SamplesFileRef, value); - } - } -} \ No newline at end of file diff --git a/src/ext/VisualStudio/wixext/Symbols/HelpFileToNamespaceSymbol.cs b/src/ext/VisualStudio/wixext/Symbols/HelpFileToNamespaceSymbol.cs deleted file mode 100644 index f18d6701..00000000 --- a/src/ext/VisualStudio/wixext/Symbols/HelpFileToNamespaceSymbol.cs +++ /dev/null @@ -1,55 +0,0 @@ -// 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. - -namespace WixToolset.VisualStudio -{ - using WixToolset.Data; - using WixToolset.VisualStudio.Symbols; - - public static partial class VSSymbolDefinitions - { - public static readonly IntermediateSymbolDefinition HelpFileToNamespace = new IntermediateSymbolDefinition( - VSSymbolDefinitionType.HelpFileToNamespace.ToString(), - new[] - { - new IntermediateFieldDefinition(nameof(HelpFileToNamespaceSymbolFields.HelpFileRef), IntermediateFieldType.String), - new IntermediateFieldDefinition(nameof(HelpFileToNamespaceSymbolFields.HelpNamespaceRef), IntermediateFieldType.String), - }, - typeof(HelpFileToNamespaceSymbol)); - } -} - -namespace WixToolset.VisualStudio.Symbols -{ - using WixToolset.Data; - - public enum HelpFileToNamespaceSymbolFields - { - HelpFileRef, - HelpNamespaceRef, - } - - public class HelpFileToNamespaceSymbol : IntermediateSymbol - { - public HelpFileToNamespaceSymbol() : base(VSSymbolDefinitions.HelpFileToNamespace, null, null) - { - } - - public HelpFileToNamespaceSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(VSSymbolDefinitions.HelpFileToNamespace, sourceLineNumber, id) - { - } - - public IntermediateField this[HelpFileToNamespaceSymbolFields index] => this.Fields[(int)index]; - - public string HelpFileRef - { - get => this.Fields[(int)HelpFileToNamespaceSymbolFields.HelpFileRef].AsString(); - set => this.Set((int)HelpFileToNamespaceSymbolFields.HelpFileRef, value); - } - - public string HelpNamespaceRef - { - get => this.Fields[(int)HelpFileToNamespaceSymbolFields.HelpNamespaceRef].AsString(); - set => this.Set((int)HelpFileToNamespaceSymbolFields.HelpNamespaceRef, value); - } - } -} \ No newline at end of file diff --git a/src/ext/VisualStudio/wixext/Symbols/HelpFilterSymbol.cs b/src/ext/VisualStudio/wixext/Symbols/HelpFilterSymbol.cs deleted file mode 100644 index 9deb47d0..00000000 --- a/src/ext/VisualStudio/wixext/Symbols/HelpFilterSymbol.cs +++ /dev/null @@ -1,55 +0,0 @@ -// 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. - -namespace WixToolset.VisualStudio -{ - using WixToolset.Data; - using WixToolset.VisualStudio.Symbols; - - public static partial class VSSymbolDefinitions - { - public static readonly IntermediateSymbolDefinition HelpFilter = new IntermediateSymbolDefinition( - VSSymbolDefinitionType.HelpFilter.ToString(), - new[] - { - new IntermediateFieldDefinition(nameof(HelpFilterSymbolFields.Description), IntermediateFieldType.String), - new IntermediateFieldDefinition(nameof(HelpFilterSymbolFields.QueryString), IntermediateFieldType.String), - }, - typeof(HelpFilterSymbol)); - } -} - -namespace WixToolset.VisualStudio.Symbols -{ - using WixToolset.Data; - - public enum HelpFilterSymbolFields - { - Description, - QueryString, - } - - public class HelpFilterSymbol : IntermediateSymbol - { - public HelpFilterSymbol() : base(VSSymbolDefinitions.HelpFilter, null, null) - { - } - - public HelpFilterSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(VSSymbolDefinitions.HelpFilter, sourceLineNumber, id) - { - } - - public IntermediateField this[HelpFilterSymbolFields index] => this.Fields[(int)index]; - - public string Description - { - get => this.Fields[(int)HelpFilterSymbolFields.Description].AsString(); - set => this.Set((int)HelpFilterSymbolFields.Description, value); - } - - public string QueryString - { - get => this.Fields[(int)HelpFilterSymbolFields.QueryString].AsString(); - set => this.Set((int)HelpFilterSymbolFields.QueryString, value); - } - } -} \ No newline at end of file diff --git a/src/ext/VisualStudio/wixext/Symbols/HelpFilterToNamespaceSymbol.cs b/src/ext/VisualStudio/wixext/Symbols/HelpFilterToNamespaceSymbol.cs deleted file mode 100644 index f3d21289..00000000 --- a/src/ext/VisualStudio/wixext/Symbols/HelpFilterToNamespaceSymbol.cs +++ /dev/null @@ -1,55 +0,0 @@ -// 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. - -namespace WixToolset.VisualStudio -{ - using WixToolset.Data; - using WixToolset.VisualStudio.Symbols; - - public static partial class VSSymbolDefinitions - { - public static readonly IntermediateSymbolDefinition HelpFilterToNamespace = new IntermediateSymbolDefinition( - VSSymbolDefinitionType.HelpFilterToNamespace.ToString(), - new[] - { - new IntermediateFieldDefinition(nameof(HelpFilterToNamespaceSymbolFields.HelpFilterRef), IntermediateFieldType.String), - new IntermediateFieldDefinition(nameof(HelpFilterToNamespaceSymbolFields.HelpNamespaceRef), IntermediateFieldType.String), - }, - typeof(HelpFilterToNamespaceSymbol)); - } -} - -namespace WixToolset.VisualStudio.Symbols -{ - using WixToolset.Data; - - public enum HelpFilterToNamespaceSymbolFields - { - HelpFilterRef, - HelpNamespaceRef, - } - - public class HelpFilterToNamespaceSymbol : IntermediateSymbol - { - public HelpFilterToNamespaceSymbol() : base(VSSymbolDefinitions.HelpFilterToNamespace, null, null) - { - } - - public HelpFilterToNamespaceSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(VSSymbolDefinitions.HelpFilterToNamespace, sourceLineNumber, id) - { - } - - public IntermediateField this[HelpFilterToNamespaceSymbolFields index] => this.Fields[(int)index]; - - public string HelpFilterRef - { - get => this.Fields[(int)HelpFilterToNamespaceSymbolFields.HelpFilterRef].AsString(); - set => this.Set((int)HelpFilterToNamespaceSymbolFields.HelpFilterRef, value); - } - - public string HelpNamespaceRef - { - get => this.Fields[(int)HelpFilterToNamespaceSymbolFields.HelpNamespaceRef].AsString(); - set => this.Set((int)HelpFilterToNamespaceSymbolFields.HelpNamespaceRef, value); - } - } -} \ No newline at end of file diff --git a/src/ext/VisualStudio/wixext/Symbols/HelpNamespaceSymbol.cs b/src/ext/VisualStudio/wixext/Symbols/HelpNamespaceSymbol.cs deleted file mode 100644 index 8d2c2f80..00000000 --- a/src/ext/VisualStudio/wixext/Symbols/HelpNamespaceSymbol.cs +++ /dev/null @@ -1,63 +0,0 @@ -// 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. - -namespace WixToolset.VisualStudio -{ - using WixToolset.Data; - using WixToolset.VisualStudio.Symbols; - - public static partial class VSSymbolDefinitions - { - public static readonly IntermediateSymbolDefinition HelpNamespace = new IntermediateSymbolDefinition( - VSSymbolDefinitionType.HelpNamespace.ToString(), - new[] - { - new IntermediateFieldDefinition(nameof(HelpNamespaceSymbolFields.NamespaceName), IntermediateFieldType.String), - new IntermediateFieldDefinition(nameof(HelpNamespaceSymbolFields.CollectionFileRef), IntermediateFieldType.String), - new IntermediateFieldDefinition(nameof(HelpNamespaceSymbolFields.Description), IntermediateFieldType.String), - }, - typeof(HelpNamespaceSymbol)); - } -} - -namespace WixToolset.VisualStudio.Symbols -{ - using WixToolset.Data; - - public enum HelpNamespaceSymbolFields - { - NamespaceName, - CollectionFileRef, - Description, - } - - public class HelpNamespaceSymbol : IntermediateSymbol - { - public HelpNamespaceSymbol() : base(VSSymbolDefinitions.HelpNamespace, null, null) - { - } - - public HelpNamespaceSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(VSSymbolDefinitions.HelpNamespace, sourceLineNumber, id) - { - } - - public IntermediateField this[HelpNamespaceSymbolFields index] => this.Fields[(int)index]; - - public string NamespaceName - { - get => this.Fields[(int)HelpNamespaceSymbolFields.NamespaceName].AsString(); - set => this.Set((int)HelpNamespaceSymbolFields.NamespaceName, value); - } - - public string CollectionFileRef - { - get => this.Fields[(int)HelpNamespaceSymbolFields.CollectionFileRef].AsString(); - set => this.Set((int)HelpNamespaceSymbolFields.CollectionFileRef, value); - } - - public string Description - { - get => this.Fields[(int)HelpNamespaceSymbolFields.Description].AsString(); - set => this.Set((int)HelpNamespaceSymbolFields.Description, value); - } - } -} \ No newline at end of file diff --git a/src/ext/VisualStudio/wixext/Symbols/HelpPluginSymbol.cs b/src/ext/VisualStudio/wixext/Symbols/HelpPluginSymbol.cs deleted file mode 100644 index a452fbd5..00000000 --- a/src/ext/VisualStudio/wixext/Symbols/HelpPluginSymbol.cs +++ /dev/null @@ -1,79 +0,0 @@ -// 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. - -namespace WixToolset.VisualStudio -{ - using WixToolset.Data; - using WixToolset.VisualStudio.Symbols; - - public static partial class VSSymbolDefinitions - { - public static readonly IntermediateSymbolDefinition HelpPlugin = new IntermediateSymbolDefinition( - VSSymbolDefinitionType.HelpPlugin.ToString(), - new[] - { - new IntermediateFieldDefinition(nameof(HelpPluginSymbolFields.HelpNamespaceRef), IntermediateFieldType.String), - new IntermediateFieldDefinition(nameof(HelpPluginSymbolFields.ParentHelpNamespaceRef), IntermediateFieldType.String), - new IntermediateFieldDefinition(nameof(HelpPluginSymbolFields.HxTFileRef), IntermediateFieldType.String), - new IntermediateFieldDefinition(nameof(HelpPluginSymbolFields.HxAFileRef), IntermediateFieldType.String), - new IntermediateFieldDefinition(nameof(HelpPluginSymbolFields.ParentHxTFileRef), IntermediateFieldType.String), - }, - typeof(HelpPluginSymbol)); - } -} - -namespace WixToolset.VisualStudio.Symbols -{ - using WixToolset.Data; - - public enum HelpPluginSymbolFields - { - HelpNamespaceRef, - ParentHelpNamespaceRef, - HxTFileRef, - HxAFileRef, - ParentHxTFileRef, - } - - public class HelpPluginSymbol : IntermediateSymbol - { - public HelpPluginSymbol() : base(VSSymbolDefinitions.HelpPlugin, null, null) - { - } - - public HelpPluginSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(VSSymbolDefinitions.HelpPlugin, sourceLineNumber, id) - { - } - - public IntermediateField this[HelpPluginSymbolFields index] => this.Fields[(int)index]; - - public string HelpNamespaceRef - { - get => this.Fields[(int)HelpPluginSymbolFields.HelpNamespaceRef].AsString(); - set => this.Set((int)HelpPluginSymbolFields.HelpNamespaceRef, value); - } - - public string ParentHelpNamespaceRef - { - get => this.Fields[(int)HelpPluginSymbolFields.ParentHelpNamespaceRef].AsString(); - set => this.Set((int)HelpPluginSymbolFields.ParentHelpNamespaceRef, value); - } - - public string HxTFileRef - { - get => this.Fields[(int)HelpPluginSymbolFields.HxTFileRef].AsString(); - set => this.Set((int)HelpPluginSymbolFields.HxTFileRef, value); - } - - public string HxAFileRef - { - get => this.Fields[(int)HelpPluginSymbolFields.HxAFileRef].AsString(); - set => this.Set((int)HelpPluginSymbolFields.HxAFileRef, value); - } - - public string ParentHxTFileRef - { - get => this.Fields[(int)HelpPluginSymbolFields.ParentHxTFileRef].AsString(); - set => this.Set((int)HelpPluginSymbolFields.ParentHxTFileRef, value); - } - } -} \ No newline at end of file diff --git a/src/ext/VisualStudio/wixext/Symbols/VSSymbolDefinitions.cs b/src/ext/VisualStudio/wixext/Symbols/VSSymbolDefinitions.cs deleted file mode 100644 index cea6a2b6..00000000 --- a/src/ext/VisualStudio/wixext/Symbols/VSSymbolDefinitions.cs +++ /dev/null @@ -1,59 +0,0 @@ -// 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. - -namespace WixToolset.VisualStudio -{ - using System; - using WixToolset.Data; - - public enum VSSymbolDefinitionType - { - HelpFile, - HelpFileToNamespace, - HelpFilter, - HelpFilterToNamespace, - HelpNamespace, - HelpPlugin, - } - - public static partial class VSSymbolDefinitions - { - public static readonly Version Version = new Version("4.0.0"); - - public static IntermediateSymbolDefinition ByName(string name) - { - if (!Enum.TryParse(name, out VSSymbolDefinitionType type)) - { - return null; - } - - return ByType(type); - } - - public static IntermediateSymbolDefinition ByType(VSSymbolDefinitionType type) - { - switch (type) - { - case VSSymbolDefinitionType.HelpFile: - return VSSymbolDefinitions.HelpFile; - - case VSSymbolDefinitionType.HelpFileToNamespace: - return VSSymbolDefinitions.HelpFileToNamespace; - - case VSSymbolDefinitionType.HelpFilter: - return VSSymbolDefinitions.HelpFilter; - - case VSSymbolDefinitionType.HelpFilterToNamespace: - return VSSymbolDefinitions.HelpFilterToNamespace; - - case VSSymbolDefinitionType.HelpNamespace: - return VSSymbolDefinitions.HelpNamespace; - - case VSSymbolDefinitionType.HelpPlugin: - return VSSymbolDefinitions.HelpPlugin; - - default: - throw new ArgumentOutOfRangeException(nameof(type)); - } - } - } -} diff --git a/src/ext/VisualStudio/wixext/VSCompiler.cs b/src/ext/VisualStudio/wixext/VSCompiler.cs index 65f0f97d..1901a700 100644 --- a/src/ext/VisualStudio/wixext/VSCompiler.cs +++ b/src/ext/VisualStudio/wixext/VSCompiler.cs @@ -4,13 +4,12 @@ namespace WixToolset.VisualStudio { using System; using System.Collections.Generic; - using System.Globalization; using System.Xml.Linq; using WixToolset.Data; using WixToolset.Data.Symbols; using WixToolset.Data.WindowsInstaller; using WixToolset.Extensibility; - using WixToolset.VisualStudio.Symbols; + using WixToolset.Extensibility.Data; /// /// The compiler for the WiX Toolset Visual Studio Extension. @@ -44,12 +43,6 @@ namespace WixToolset.VisualStudio case "File": switch (element.Name.LocalName) { - case "HelpCollection": - this.ParseHelpCollectionElement(intermediate, section, element, context["FileId"]); - break; - case "HelpFile": - this.ParseHelpFileElement(intermediate, section, element, context["FileId"]); - break; case "VsixPackage": this.ParseVsixPackageElement(intermediate, section, element, context["ComponentId"], context["FileId"]); break; @@ -63,11 +56,8 @@ namespace WixToolset.VisualStudio case "Package": switch (element.Name.LocalName) { - case "HelpCollectionRef": - this.ParseHelpCollectionRefElement(intermediate, section, element); - break; - case "HelpFilter": - this.ParseHelpFilterElement(intermediate, section, element); + case "FindVisualStudio": + this.ParseFindVisualStudioElement(intermediate, section, element); break; default: this.ParseHelper.UnexpectedElement(parentElement, element); @@ -80,496 +70,13 @@ namespace WixToolset.VisualStudio } } - private void ParseHelpCollectionRefElement(Intermediate intermediate, IntermediateSection section, XElement element) - { - var sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); - Identifier id = null; - - foreach (var attrib in element.Attributes()) - { - if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) - { - switch (attrib.Name.LocalName) - { - case "Id": - id = this.ParseHelper.GetAttributeIdentifier(sourceLineNumbers, attrib); - this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, VSSymbolDefinitions.HelpNamespace, id.Id); - break; - default: - this.ParseHelper.UnexpectedAttribute(element, attrib); - break; - } - } - else - { - this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, element, attrib); - } - } - - if (null == id) - { - this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, element.Name.LocalName, "Id")); - } - - foreach (var child in element.Elements()) - { - if (this.Namespace == child.Name.Namespace) - { - switch (child.Name.LocalName) - { - case "HelpFileRef": - this.ParseHelpFileRefElement(intermediate, section, child, id); - break; - default: - this.ParseHelper.UnexpectedElement(element, child); - break; - } - } - else - { - this.ParseHelper.ParseExtensionElement(this.Context.Extensions, intermediate, section, element, child); - } - } - } - - private void ParseHelpCollectionElement(Intermediate intermediate, IntermediateSection section, XElement element, string fileId) - { - var sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); - Identifier id = null; - string description = null; - string name = null; - var suppressCAs = YesNoType.No; - - foreach (var attrib in element.Attributes()) - { - if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) - { - switch (attrib.Name.LocalName) - { - case "Id": - id = this.ParseHelper.GetAttributeIdentifier(sourceLineNumbers, attrib); - break; - case "Description": - description = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); - break; - case "Name": - name = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); - break; - case "SuppressCustomActions": - suppressCAs = this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib); - break; - default: - this.ParseHelper.UnexpectedAttribute(element, attrib); - break; - } - } - else - { - this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, element, attrib); - } - } - - if (null == id) - { - id = this.ParseHelper.CreateIdentifier("vshc", fileId, description, name); - } - - if (null == description) - { - this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, element.Name.LocalName, "Description")); - } - - if (null == name) - { - this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, element.Name.LocalName, "Name")); - } - - foreach (var child in element.Elements()) - { - if (this.Namespace == child.Name.Namespace) - { - switch (child.Name.LocalName) - { - case "HelpFileRef": - this.ParseHelpFileRefElement(intermediate, section, child, id); - break; - case "HelpFilterRef": - this.ParseHelpFilterRefElement(intermediate, section, child, id); - break; - case "PlugCollectionInto": - this.ParsePlugCollectionIntoElement(intermediate, section, child, id); - break; - default: - this.ParseHelper.UnexpectedElement(element, child); - break; - } - } - else - { - this.ParseHelper.ParseExtensionElement(this.Context.Extensions, intermediate, section, element, child); - } - } - - if (!this.Messaging.EncounteredError) - { - section.AddSymbol(new HelpNamespaceSymbol(sourceLineNumbers, id) - { - NamespaceName = name, - CollectionFileRef = fileId, - Description = description, - }); - - if (YesNoType.No == suppressCAs) - { - this.AddReferenceToRegisterMicrosoftHelp(section, sourceLineNumbers); - } - } - } - - private void ParseHelpFileElement(Intermediate intermediate, IntermediateSection section, XElement element, string fileId) - { - var sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); - Identifier id = null; - string name = null; - var language = CompilerConstants.IntegerNotSet; - string hxi = null; - string hxq = null; - string hxr = null; - string samples = null; - var suppressCAs = YesNoType.No; - - foreach (var attrib in element.Attributes()) - { - if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) - { - switch (attrib.Name.LocalName) - { - case "Id": - id = this.ParseHelper.GetAttributeIdentifier(sourceLineNumbers, attrib); - break; - case "AttributeIndex": - hxr = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); - this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, SymbolDefinitions.File, hxr); - break; - case "Index": - hxi = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); - this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, SymbolDefinitions.File, hxi); - break; - case "Language": - language = this.ParseHelper.GetAttributeIntegerValue(sourceLineNumbers, attrib, 0, short.MaxValue); - break; - case "Name": - name = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); - break; - case "SampleLocation": - samples = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); - this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, SymbolDefinitions.File, samples); - break; - case "Search": - hxq = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); - this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, SymbolDefinitions.File, hxq); - break; - case "SuppressCustomActions": - suppressCAs = this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib); - break; - default: - this.ParseHelper.UnexpectedAttribute(element, attrib); - break; - } - } - else - { - this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, element, attrib); - } - } - - if (null == id) - { - id = this.ParseHelper.CreateIdentifier("vshf", fileId, name, language.ToString(CultureInfo.InvariantCulture.NumberFormat)); - } - - if (null == name) - { - this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, element.Name.LocalName, "Name")); - } - - // Uninstall will always fail silently, leaving file registered, if Language is not set - if (CompilerConstants.IntegerNotSet == language) - { - this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, element.Name.LocalName, "Language")); - } - - this.ParseHelper.ParseForExtensionElements(this.Context.Extensions, intermediate, section, element); - - if (!this.Messaging.EncounteredError) - { - section.AddSymbol(new HelpFileSymbol(sourceLineNumbers, id) - { - HelpFileName = name, - LangID = language, - HxSFileRef = fileId, - HxIFileRef = hxi, - HxQFileRef = hxq, - HxRFileRef = hxr, - SamplesFileRef = samples, - }); - - if (YesNoType.No == suppressCAs) - { - this.AddReferenceToRegisterMicrosoftHelp(section, sourceLineNumbers); - } - } - } - - private void ParseHelpFileRefElement(Intermediate intermediate, IntermediateSection section, XElement element, Identifier collectionId) - { - var sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); - Identifier id = null; - - foreach (var attrib in element.Attributes()) - { - if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) - { - switch (attrib.Name.LocalName) - { - case "Id": - id = this.ParseHelper.GetAttributeIdentifier(sourceLineNumbers, attrib); - this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, VSSymbolDefinitions.HelpFile, id.Id); - break; - default: - this.ParseHelper.UnexpectedAttribute(element, attrib); - break; - } - } - else - { - this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, element, attrib); - } - } - - if (null == id) - { - this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, element.Name.LocalName, "Id")); - } - - this.ParseHelper.ParseForExtensionElements(this.Context.Extensions, intermediate, section, element); - - if (!this.Messaging.EncounteredError) - { - section.AddSymbol(new HelpFileToNamespaceSymbol(sourceLineNumbers, id) - { - HelpFileRef = id.Id, - HelpNamespaceRef = collectionId.Id, - }); - } - } - - private void ParseHelpFilterElement(Intermediate intermediate, IntermediateSection section, XElement element) - { - var sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); - Identifier id = null; - string filterDefinition = null; - string name = null; - var suppressCAs = YesNoType.No; - - foreach (var attrib in element.Attributes()) - { - if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) - { - switch (attrib.Name.LocalName) - { - case "Id": - id = this.ParseHelper.GetAttributeIdentifier(sourceLineNumbers, attrib); - break; - case "FilterDefinition": - filterDefinition = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); - break; - case "Name": - name = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); - break; - case "SuppressCustomActions": - suppressCAs = this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib); - break; - default: - this.ParseHelper.UnexpectedAttribute(element, attrib); - break; - } - } - else - { - this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, element, attrib); - } - } - - if (null == id) - { - id = this.ParseHelper.CreateIdentifier("hfl", name, filterDefinition); - } - - if (null == name) - { - this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, element.Name.LocalName, "Name")); - } - - this.ParseHelper.ParseForExtensionElements(this.Context.Extensions, intermediate, section, element); - - if (!this.Messaging.EncounteredError) - { - section.AddSymbol(new HelpFilterSymbol(sourceLineNumbers, id) - { - Description = name, - QueryString = filterDefinition, - }); - - if (YesNoType.No == suppressCAs) - { - this.AddReferenceToRegisterMicrosoftHelp(section, sourceLineNumbers); - } - } - } - - private void ParseHelpFilterRefElement(Intermediate intermediate, IntermediateSection section, XElement element, Identifier collectionId) - { - var sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); - Identifier id = null; - - foreach (var attrib in element.Attributes()) - { - if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) - { - switch (attrib.Name.LocalName) - { - case "Id": - id = this.ParseHelper.GetAttributeIdentifier(sourceLineNumbers, attrib); - this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, VSSymbolDefinitions.HelpFilter, id.Id); - break; - default: - this.ParseHelper.UnexpectedAttribute(element, attrib); - break; - } - } - else - { - this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, element, attrib); - } - } - - if (null == id) - { - this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, element.Name.LocalName, "Id")); - } - - this.ParseHelper.ParseForExtensionElements(this.Context.Extensions, intermediate, section, element); - - if (!this.Messaging.EncounteredError) - { - section.AddSymbol(new HelpFilterToNamespaceSymbol(sourceLineNumbers, id) - { - HelpFilterRef = id.Id, - HelpNamespaceRef = collectionId.Id, - }); - } - } - - private void ParsePlugCollectionIntoElement(Intermediate intermediate, IntermediateSection section, XElement element, Identifier parentId) + private void ParseFindVisualStudioElement(Intermediate intermediate, IntermediateSection section, XElement element) { var sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); - string hxa = null; - string hxt = null; - string hxtParent = null; - string namespaceParent = null; - string feature = null; - var suppressExternalNamespaces = YesNoType.No; - - foreach (var attrib in element.Attributes()) - { - if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) - { - switch (attrib.Name.LocalName) - { - case "Attributes": - hxa = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); - break; - case "TableOfContents": - hxt = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); - break; - case "TargetCollection": - namespaceParent = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); - break; - case "TargetTableOfContents": - hxtParent = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); - break; - case "TargetFeature": - feature = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); - break; - case "SuppressExternalNamespaces": - suppressExternalNamespaces = this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib); - break; - default: - this.ParseHelper.UnexpectedAttribute(element, attrib); - break; - } - } - else - { - this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, element, attrib); - } - } - - var pluginVS05 = namespaceParent.Equals("MS_VSIPCC_v80", StringComparison.Ordinal); - var pluginVS08 = namespaceParent.Equals("MS.VSIPCC.v90", StringComparison.Ordinal); - - if (null == namespaceParent) - { - this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, element.Name.LocalName, "TargetCollection")); - } - - if (null == feature && (pluginVS05 || pluginVS08) && YesNoType.No == suppressExternalNamespaces) - { - this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, element.Name.LocalName, "TargetFeature")); - } this.ParseHelper.ParseForExtensionElements(this.Context.Extensions, intermediate, section, element); - if (!this.Messaging.EncounteredError) - { - section.AddSymbol(new HelpPluginSymbol(sourceLineNumbers, parentId) - { - HelpNamespaceRef = parentId.Id, - ParentHelpNamespaceRef = namespaceParent, - HxTFileRef = hxt, - HxAFileRef = hxa, - ParentHxTFileRef = hxtParent, - }); - - if (pluginVS05) - { - if (YesNoType.No == suppressExternalNamespaces) - { - // Bring in the help 2 base namespace components for VS 2005 - this.ParseHelper.CreateComplexReference(section, sourceLineNumbers, ComplexReferenceParentType.Feature, feature, String.Empty, - ComplexReferenceChildType.ComponentGroup, "Help2_VS2005_Namespace_Components", false); - // Reference CustomAction since nothing will happen without it - this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, SymbolDefinitions.CustomAction, "CA_HxMerge_VSIPCC_VSCC"); - } - } - else if (pluginVS08) - { - if (YesNoType.No == suppressExternalNamespaces) - { - // Bring in the help 2 base namespace components for VS 2008 - this.ParseHelper.CreateComplexReference(section, sourceLineNumbers, ComplexReferenceParentType.Feature, feature, String.Empty, - ComplexReferenceChildType.ComponentGroup, "Help2_VS2008_Namespace_Components", false); - // Reference CustomAction since nothing will happen without it - this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, SymbolDefinitions.CustomAction, "CA_ScheduleExtHelpPlugin_VSCC_VSIPCC"); - } - } - else - { - // Reference the parent namespace to enforce the foreign key relationship - this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, VSSymbolDefinitions.HelpNamespace, namespaceParent); - } - } + this.ParseHelper.CreateCustomActionReference(sourceLineNumbers, section, "Wix4VSFindInstances", this.Context.Platform, CustomActionPlatforms.X86 | CustomActionPlatforms.X64); } private void ParseVsixPackageElement(Intermediate intermediate, IntermediateSection section, XElement element, string componentId, string fileId) @@ -819,10 +326,5 @@ namespace WixToolset.VisualStudio } } } - - private void AddReferenceToRegisterMicrosoftHelp(IntermediateSection section, SourceLineNumber sourceLineNumbers) - { - this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, SymbolDefinitions.CustomAction, "CA_RegisterMicrosoftHelp.3643236F_FC70_11D3_A536_0090278A1BB8"); - } } } diff --git a/src/ext/VisualStudio/wixext/VSExtensionData.cs b/src/ext/VisualStudio/wixext/VSExtensionData.cs index 51199d2c..82c5b118 100644 --- a/src/ext/VisualStudio/wixext/VSExtensionData.cs +++ b/src/ext/VisualStudio/wixext/VSExtensionData.cs @@ -13,12 +13,6 @@ namespace WixToolset.VisualStudio /// The default culture. public override string DefaultCulture => "en-US"; - public override bool TryGetSymbolDefinitionByName(string name, out IntermediateSymbolDefinition symbolDefinition) - { - symbolDefinition = VSSymbolDefinitions.ByName(name); - return symbolDefinition != null; - } - public override Intermediate GetLibrary(ISymbolDefinitionCreator symbolDefinitions) { return Intermediate.Load(typeof(VSExtensionData).Assembly, "WixToolset.VisualStudio.vs.wixlib", symbolDefinitions); diff --git a/src/ext/VisualStudio/wixext/VSExtensionFactory.cs b/src/ext/VisualStudio/wixext/VSExtensionFactory.cs index c6e0cc31..57d2732d 100644 --- a/src/ext/VisualStudio/wixext/VSExtensionFactory.cs +++ b/src/ext/VisualStudio/wixext/VSExtensionFactory.cs @@ -12,7 +12,6 @@ namespace WixToolset.VisualStudio { typeof(VSCompiler), typeof(VSExtensionData), - typeof(VSWindowsInstallerBackendBinderExtension), }; } } diff --git a/src/ext/VisualStudio/wixext/VSTableDefinitions.cs b/src/ext/VisualStudio/wixext/VSTableDefinitions.cs deleted file mode 100644 index 0c3ca907..00000000 --- a/src/ext/VisualStudio/wixext/VSTableDefinitions.cs +++ /dev/null @@ -1,97 +0,0 @@ -// 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. - -namespace WixToolset.VisualStudio -{ - using WixToolset.Data.WindowsInstaller; - - public static class VSTableDefinitions - { - public static readonly TableDefinition HelpFile = new TableDefinition( - "HelpFile", - VSSymbolDefinitions.HelpFile, - new[] - { - new ColumnDefinition("HelpFileKey", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, description: "Primary Key for HelpFile Table (required).", modularizeType: ColumnModularizeType.Column), - new ColumnDefinition("HelpFileName", ColumnType.String, 72, primaryKey: false, nullable: false, ColumnCategory.Text, description: "Internal Microsoft Help ID for this HelpFile (required)."), - new ColumnDefinition("LangID", ColumnType.Number, 2, primaryKey: false, nullable: true, ColumnCategory.Language, description: "Language ID for content file (optional)."), - new ColumnDefinition("File_HxS", ColumnType.String, 72, primaryKey: false, nullable: false, ColumnCategory.Identifier, keyTable: "File", keyColumn: 1, description: "Key for HxS (Title) file (required).", modularizeType: ColumnModularizeType.Column), - new ColumnDefinition("File_HxI", ColumnType.String, 72, primaryKey: false, nullable: true, ColumnCategory.Identifier, keyTable: "File", keyColumn: 1, description: "Key for HxI (Index) file (optional).", modularizeType: ColumnModularizeType.Column), - new ColumnDefinition("File_HxQ", ColumnType.String, 72, primaryKey: false, nullable: true, ColumnCategory.Identifier, keyTable: "File", keyColumn: 1, description: "Key for HxQ (Query) file (optional).", modularizeType: ColumnModularizeType.Column), - new ColumnDefinition("File_HxR", ColumnType.String, 72, primaryKey: false, nullable: true, ColumnCategory.Identifier, keyTable: "File", keyColumn: 1, description: "Key for HxR (Attributes) file (optional).", modularizeType: ColumnModularizeType.Column), - new ColumnDefinition("File_Samples", ColumnType.String, 72, primaryKey: false, nullable: true, ColumnCategory.Identifier, keyTable: "File", keyColumn: 1, description: "Key for a file that is in the 'root' of the samples directory for this HelpFile (optional).", modularizeType: ColumnModularizeType.Column), - }, - symbolIdIsPrimaryKey: true - ); - - public static readonly TableDefinition HelpFileToNamespace = new TableDefinition( - "HelpFileToNamespace", - VSSymbolDefinitions.HelpFileToNamespace, - new[] - { - new ColumnDefinition("HelpFile_", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, keyTable: "HelpFile", keyColumn: 1, description: "Foreign key into HelpFile table (required).", modularizeType: ColumnModularizeType.Column), - new ColumnDefinition("HelpNamespace_", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, keyTable: "HelpNamespace", keyColumn: 1, description: "Foreign key into HelpNamespace table (required)."), - }, - symbolIdIsPrimaryKey: false - ); - - public static readonly TableDefinition HelpFilter = new TableDefinition( - "HelpFilter", - VSSymbolDefinitions.HelpFilter, - new[] - { - new ColumnDefinition("FilterKey", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, description: "Primary Key for HelpFilter (required).", modularizeType: ColumnModularizeType.Column), - new ColumnDefinition("Description", ColumnType.Localized, 0, primaryKey: false, nullable: false, ColumnCategory.Text, description: "Friendly name for Filter (required)."), - new ColumnDefinition("QueryString", ColumnType.String, 0, primaryKey: false, nullable: true, ColumnCategory.Text, description: "Query String for Help Filter (optional)."), - }, - symbolIdIsPrimaryKey: true - ); - - public static readonly TableDefinition HelpFilterToNamespace = new TableDefinition( - "HelpFilterToNamespace", - VSSymbolDefinitions.HelpFilterToNamespace, - new[] - { - new ColumnDefinition("HelpFilter_", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, keyTable: "HelpFilter", keyColumn: 1, description: "Foreign key into HelpFilter table (required).", modularizeType: ColumnModularizeType.Column), - new ColumnDefinition("HelpNamespace_", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, keyTable: "HelpNamespace", keyColumn: 1, description: "Foreign key into HelpNamespace table (required)."), - }, - symbolIdIsPrimaryKey: false - ); - - public static readonly TableDefinition HelpNamespace = new TableDefinition( - "HelpNamespace", - VSSymbolDefinitions.HelpNamespace, - new[] - { - new ColumnDefinition("NamespaceKey", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, description: "Primary Key for HelpNamespace (required)."), - new ColumnDefinition("NamespaceName", ColumnType.String, 0, primaryKey: false, nullable: false, ColumnCategory.Text, description: "Internal Microsoft Help ID for this Namespace (required)."), - new ColumnDefinition("File_Collection", ColumnType.String, 72, primaryKey: false, nullable: false, ColumnCategory.Identifier, keyTable: "File", keyColumn: 1, description: "Key for HxC (Collection) file (required).", modularizeType: ColumnModularizeType.Column), - new ColumnDefinition("Description", ColumnType.Localized, 0, primaryKey: false, nullable: true, ColumnCategory.Text, description: "Friendly name for Namespace (optional)."), - }, - symbolIdIsPrimaryKey: true - ); - - public static readonly TableDefinition HelpPlugin = new TableDefinition( - "HelpPlugin", - VSSymbolDefinitions.HelpPlugin, - new[] - { - new ColumnDefinition("HelpNamespace_", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, keyTable: "HelpNamespace", keyColumn: 1, description: "Foreign key into HelpNamespace table for the child namespace that will be plugged into the parent namespace (required)."), - new ColumnDefinition("HelpNamespace_Parent", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, keyTable: "HelpNamespace", keyColumn: 1, description: "Foreign key into HelpNamespace table for the parent namespace into which the child will be inserted (required)."), - new ColumnDefinition("File_HxT", ColumnType.String, 72, primaryKey: false, nullable: true, ColumnCategory.Identifier, keyTable: "File", keyColumn: 1, description: "Key for HxT file of child namespace (optional).", modularizeType: ColumnModularizeType.Column), - new ColumnDefinition("File_HxA", ColumnType.String, 72, primaryKey: false, nullable: true, ColumnCategory.Identifier, keyTable: "File", keyColumn: 1, description: "Key for HxA (Attributes) file of child namespace (optional).", modularizeType: ColumnModularizeType.Column), - new ColumnDefinition("File_ParentHxT", ColumnType.String, 72, primaryKey: false, nullable: true, ColumnCategory.Identifier, keyTable: "File", keyColumn: 1, description: "Key for HxT file of parent namespace that now includes the new child namespace (optional).", modularizeType: ColumnModularizeType.Column), - }, - symbolIdIsPrimaryKey: false - ); - - public static readonly TableDefinition[] All = new[] - { - HelpFile, - HelpFileToNamespace, - HelpFilter, - HelpFilterToNamespace, - HelpNamespace, - HelpPlugin, - }; - } -} diff --git a/src/ext/VisualStudio/wixext/VSWindowsInstallerBackendBinderExtension.cs b/src/ext/VisualStudio/wixext/VSWindowsInstallerBackendBinderExtension.cs deleted file mode 100644 index d0d8648c..00000000 --- a/src/ext/VisualStudio/wixext/VSWindowsInstallerBackendBinderExtension.cs +++ /dev/null @@ -1,13 +0,0 @@ -// 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. - -namespace WixToolset.VisualStudio -{ - using System.Collections.Generic; - using WixToolset.Data.WindowsInstaller; - using WixToolset.Extensibility; - - public class VSWindowsInstallerBackendBinderExtension : BaseWindowsInstallerBackendBinderExtension - { - public override IReadOnlyCollection TableDefinitions => VSTableDefinitions.All; - } -} diff --git a/src/ext/VisualStudio/wixlib/HTML_Help_Registration__RTL_X86.wxs b/src/ext/VisualStudio/wixlib/HTML_Help_Registration__RTL_X86.wxs deleted file mode 100644 index 881da279..00000000 --- a/src/ext/VisualStudio/wixlib/HTML_Help_Registration__RTL_X86.wxs +++ /dev/null @@ -1,67 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/ext/VisualStudio/wixlib/Redist/BIN_File_107602.dll b/src/ext/VisualStudio/wixlib/Redist/BIN_File_107602.dll deleted file mode 100644 index aef2cf29..00000000 Binary files a/src/ext/VisualStudio/wixlib/Redist/BIN_File_107602.dll and /dev/null differ diff --git a/src/ext/VisualStudio/wixlib/Redist/BIN_File_46001.dll b/src/ext/VisualStudio/wixlib/Redist/BIN_File_46001.dll deleted file mode 100644 index 9e470267..00000000 Binary files a/src/ext/VisualStudio/wixlib/Redist/BIN_File_46001.dll and /dev/null differ diff --git a/src/ext/VisualStudio/wixlib/Redist/BIN_File_46002.dll b/src/ext/VisualStudio/wixlib/Redist/BIN_File_46002.dll deleted file mode 100644 index ae9c30dd..00000000 Binary files a/src/ext/VisualStudio/wixlib/Redist/BIN_File_46002.dll and /dev/null differ diff --git a/src/ext/VisualStudio/wixlib/VS2017.wxs b/src/ext/VisualStudio/wixlib/VS2017.wxs index 5524361d..46cf8b33 100644 --- a/src/ext/VisualStudio/wixlib/VS2017.wxs +++ b/src/ext/VisualStudio/wixlib/VS2017.wxs @@ -2,11 +2,10 @@ + + - - - diff --git a/src/ext/VisualStudio/wixlib/VS2019.wxs b/src/ext/VisualStudio/wixlib/VS2019.wxs index 0be63dec..0deef2cc 100644 --- a/src/ext/VisualStudio/wixlib/VS2019.wxs +++ b/src/ext/VisualStudio/wixlib/VS2019.wxs @@ -2,11 +2,10 @@ + + - - - diff --git a/src/ext/VisualStudio/wixlib/VS2022.wxs b/src/ext/VisualStudio/wixlib/VS2022.wxs new file mode 100644 index 00000000..cad25441 --- /dev/null +++ b/src/ext/VisualStudio/wixlib/VS2022.wxs @@ -0,0 +1,141 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/ext/VisualStudio/wixlib/VSExtension_Platform.wxi b/src/ext/VisualStudio/wixlib/VSExtension_Platform.wxi index f9cd96f4..32aedb65 100644 --- a/src/ext/VisualStudio/wixlib/VSExtension_Platform.wxi +++ b/src/ext/VisualStudio/wixlib/VSExtension_Platform.wxi @@ -1,16 +1,18 @@  - + + - + - + - + + diff --git a/src/ext/VisualStudio/wixlib/VSExtension_x64.wxs b/src/ext/VisualStudio/wixlib/VSExtension_x64.wxs new file mode 100644 index 00000000..c9df54ca --- /dev/null +++ b/src/ext/VisualStudio/wixlib/VSExtension_x64.wxs @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/ext/VisualStudio/wixlib/caSuffix.wxi b/src/ext/VisualStudio/wixlib/caSuffix.wxi deleted file mode 100644 index a56a2393..00000000 --- a/src/ext/VisualStudio/wixlib/caSuffix.wxi +++ /dev/null @@ -1,28 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/ext/VisualStudio/wixlib/vs.wixproj b/src/ext/VisualStudio/wixlib/vs.wixproj index f2852683..8af4d7ef 100644 --- a/src/ext/VisualStudio/wixlib/vs.wixproj +++ b/src/ext/VisualStudio/wixlib/vs.wixproj @@ -9,7 +9,8 @@ - + + diff --git a/src/ext/VisualStudio/wixlib/vs2005/VS2005_VSIPCC_Collection_Files_RTL.wxs b/src/ext/VisualStudio/wixlib/vs2005/VS2005_VSIPCC_Collection_Files_RTL.wxs deleted file mode 100644 index 66757349..00000000 --- a/src/ext/VisualStudio/wixlib/vs2005/VS2005_VSIPCC_Collection_Files_RTL.wxs +++ /dev/null @@ -1,63 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/ext/VisualStudio/wixlib/vs2005/redist/BIN_File_60377.dll b/src/ext/VisualStudio/wixlib/vs2005/redist/BIN_File_60377.dll deleted file mode 100644 index dfdddf66..00000000 Binary files a/src/ext/VisualStudio/wixlib/vs2005/redist/BIN_File_60377.dll and /dev/null differ diff --git a/src/ext/VisualStudio/wixlib/vs2005/redist/vsipCCSamples.HxK b/src/ext/VisualStudio/wixlib/vs2005/redist/vsipCCSamples.HxK deleted file mode 100644 index 00db745c..00000000 --- a/src/ext/VisualStudio/wixlib/vs2005/redist/vsipCCSamples.HxK +++ /dev/null @@ -1,14 +0,0 @@ - - - - \ No newline at end of file diff --git a/src/ext/VisualStudio/wixlib/vs2005/redist/vsipcc.hxc b/src/ext/VisualStudio/wixlib/vs2005/redist/vsipcc.hxc deleted file mode 100644 index 406e7f2b..00000000 --- a/src/ext/VisualStudio/wixlib/vs2005/redist/vsipcc.hxc +++ /dev/null @@ -1,33 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/ext/VisualStudio/wixlib/vs2005/redist/vsipcc.hxt b/src/ext/VisualStudio/wixlib/vs2005/redist/vsipcc.hxt deleted file mode 100644 index 613dcfbb..00000000 --- a/src/ext/VisualStudio/wixlib/vs2005/redist/vsipcc.hxt +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - diff --git a/src/ext/VisualStudio/wixlib/vs2005/redist/vsipccALinks.hxk b/src/ext/VisualStudio/wixlib/vs2005/redist/vsipccALinks.hxk deleted file mode 100644 index 27017f76..00000000 --- a/src/ext/VisualStudio/wixlib/vs2005/redist/vsipccALinks.hxk +++ /dev/null @@ -1,13 +0,0 @@ - - - - \ No newline at end of file diff --git a/src/ext/VisualStudio/wixlib/vs2005/redist/vsipccBLinks.hxk b/src/ext/VisualStudio/wixlib/vs2005/redist/vsipccBLinks.hxk deleted file mode 100644 index b37d2e18..00000000 --- a/src/ext/VisualStudio/wixlib/vs2005/redist/vsipccBLinks.hxk +++ /dev/null @@ -1,13 +0,0 @@ - - - - diff --git a/src/ext/VisualStudio/wixlib/vs2005/redist/vsipccFLinks.hxk b/src/ext/VisualStudio/wixlib/vs2005/redist/vsipccFLinks.hxk deleted file mode 100644 index 2d37efbf..00000000 --- a/src/ext/VisualStudio/wixlib/vs2005/redist/vsipccFLinks.hxk +++ /dev/null @@ -1,14 +0,0 @@ - - - - \ No newline at end of file diff --git a/src/ext/VisualStudio/wixlib/vs2005/redist/vsipccKLinks.hxk b/src/ext/VisualStudio/wixlib/vs2005/redist/vsipccKLinks.hxk deleted file mode 100644 index 2938eff3..00000000 --- a/src/ext/VisualStudio/wixlib/vs2005/redist/vsipccKLinks.hxk +++ /dev/null @@ -1,13 +0,0 @@ - - - - \ No newline at end of file diff --git a/src/ext/VisualStudio/wixlib/vs2005/redist/vsipccNamedURLs.hxk b/src/ext/VisualStudio/wixlib/vs2005/redist/vsipccNamedURLs.hxk deleted file mode 100644 index 8691c54c..00000000 --- a/src/ext/VisualStudio/wixlib/vs2005/redist/vsipccNamedURLs.hxk +++ /dev/null @@ -1,13 +0,0 @@ - - - - \ No newline at end of file diff --git a/src/ext/VisualStudio/wixlib/vs2005/redist/vsipccSlinks.hxk b/src/ext/VisualStudio/wixlib/vs2005/redist/vsipccSlinks.hxk deleted file mode 100644 index 9d193521..00000000 --- a/src/ext/VisualStudio/wixlib/vs2005/redist/vsipccSlinks.hxk +++ /dev/null @@ -1,14 +0,0 @@ - - - - - diff --git a/src/ext/VisualStudio/wixlib/vs2005/redist/vsipcc_reg.hxs b/src/ext/VisualStudio/wixlib/vs2005/redist/vsipcc_reg.hxs deleted file mode 100644 index 3f2905c4..00000000 Binary files a/src/ext/VisualStudio/wixlib/vs2005/redist/vsipcc_reg.hxs and /dev/null differ diff --git a/src/ext/VisualStudio/wixlib/vs2008/VS2008_VSIPCC_Collection_Files_RTL.wxs b/src/ext/VisualStudio/wixlib/vs2008/VS2008_VSIPCC_Collection_Files_RTL.wxs deleted file mode 100644 index 9fb1a0e5..00000000 --- a/src/ext/VisualStudio/wixlib/vs2008/VS2008_VSIPCC_Collection_Files_RTL.wxs +++ /dev/null @@ -1,60 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/ext/VisualStudio/wixlib/vs2008/redist/BIN_435439_x86_enu.dll b/src/ext/VisualStudio/wixlib/vs2008/redist/BIN_435439_x86_enu.dll deleted file mode 100644 index 7f5e9436..00000000 Binary files a/src/ext/VisualStudio/wixlib/vs2008/redist/BIN_435439_x86_enu.dll and /dev/null differ diff --git a/src/ext/VisualStudio/wixlib/vs2008/redist/_ALinks.hxk b/src/ext/VisualStudio/wixlib/vs2008/redist/_ALinks.hxk deleted file mode 100644 index dd6df168..00000000 --- a/src/ext/VisualStudio/wixlib/vs2008/redist/_ALinks.hxk +++ /dev/null @@ -1,10 +0,0 @@ - - - - \ No newline at end of file diff --git a/src/ext/VisualStudio/wixlib/vs2008/redist/_BLinks.hxk b/src/ext/VisualStudio/wixlib/vs2008/redist/_BLinks.hxk deleted file mode 100644 index a2288162..00000000 --- a/src/ext/VisualStudio/wixlib/vs2008/redist/_BLinks.hxk +++ /dev/null @@ -1,10 +0,0 @@ - - - - \ No newline at end of file diff --git a/src/ext/VisualStudio/wixlib/vs2008/redist/_CLinks.hxk b/src/ext/VisualStudio/wixlib/vs2008/redist/_CLinks.hxk deleted file mode 100644 index da0df730..00000000 --- a/src/ext/VisualStudio/wixlib/vs2008/redist/_CLinks.hxk +++ /dev/null @@ -1,13 +0,0 @@ - - - - diff --git a/src/ext/VisualStudio/wixlib/vs2008/redist/_FLinks.hxk b/src/ext/VisualStudio/wixlib/vs2008/redist/_FLinks.hxk deleted file mode 100644 index 37dfda34..00000000 --- a/src/ext/VisualStudio/wixlib/vs2008/redist/_FLinks.hxk +++ /dev/null @@ -1,10 +0,0 @@ - - - - \ No newline at end of file diff --git a/src/ext/VisualStudio/wixlib/vs2008/redist/_KLinks.hxk b/src/ext/VisualStudio/wixlib/vs2008/redist/_KLinks.hxk deleted file mode 100644 index 2303ed0c..00000000 --- a/src/ext/VisualStudio/wixlib/vs2008/redist/_KLinks.hxk +++ /dev/null @@ -1,10 +0,0 @@ - - - - \ No newline at end of file diff --git a/src/ext/VisualStudio/wixlib/vs2008/redist/_SLinks.hxk b/src/ext/VisualStudio/wixlib/vs2008/redist/_SLinks.hxk deleted file mode 100644 index 9f65eca3..00000000 --- a/src/ext/VisualStudio/wixlib/vs2008/redist/_SLinks.hxk +++ /dev/null @@ -1,13 +0,0 @@ - - - - \ No newline at end of file diff --git a/src/ext/VisualStudio/wixlib/vs2008/redist/_vsipcc90.hxc b/src/ext/VisualStudio/wixlib/vs2008/redist/_vsipcc90.hxc deleted file mode 100644 index 9ad6869e..00000000 --- a/src/ext/VisualStudio/wixlib/vs2008/redist/_vsipcc90.hxc +++ /dev/null @@ -1,33 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/ext/VisualStudio/wixlib/vs2008/redist/_vsipcc90.hxt b/src/ext/VisualStudio/wixlib/vs2008/redist/_vsipcc90.hxt deleted file mode 100644 index 3ac4d5d6..00000000 --- a/src/ext/VisualStudio/wixlib/vs2008/redist/_vsipcc90.hxt +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - diff --git a/src/ext/VisualStudio/wixlib/vs2008/redist/_vsipcc_namedUrls.hxk b/src/ext/VisualStudio/wixlib/vs2008/redist/_vsipcc_namedUrls.hxk deleted file mode 100644 index aaa79158..00000000 --- a/src/ext/VisualStudio/wixlib/vs2008/redist/_vsipcc_namedUrls.hxk +++ /dev/null @@ -1,13 +0,0 @@ - - - - \ No newline at end of file diff --git a/src/ext/VisualStudio/wixlib/vs2008/redist/_vsipcc_samples.HxK b/src/ext/VisualStudio/wixlib/vs2008/redist/_vsipcc_samples.HxK deleted file mode 100644 index 00db745c..00000000 --- a/src/ext/VisualStudio/wixlib/vs2008/redist/_vsipcc_samples.HxK +++ /dev/null @@ -1,14 +0,0 @@ - - - - \ No newline at end of file diff --git a/src/ext/VisualStudio/wixlib/vs2008/redist/vsipcc_reg.hxs b/src/ext/VisualStudio/wixlib/vs2008/redist/vsipcc_reg.hxs deleted file mode 100644 index f6446867..00000000 Binary files a/src/ext/VisualStudio/wixlib/vs2008/redist/vsipcc_reg.hxs and /dev/null differ -- cgit v1.2.3-55-g6feb