diff options
Diffstat (limited to 'src')
24 files changed, 607 insertions, 60 deletions
diff --git a/src/Samples/bafunctions/bafunctions.vcxproj b/src/Samples/bafunctions/bafunctions.vcxproj index 5550ff60..22be1a35 100644 --- a/src/Samples/bafunctions/bafunctions.vcxproj +++ b/src/Samples/bafunctions/bafunctions.vcxproj | |||
| @@ -2,8 +2,8 @@ | |||
| 2 | <!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. --> | 2 | <!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. --> |
| 3 | 3 | ||
| 4 | <Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> | 4 | <Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> |
| 5 | <Import Project="..\..\..\packages\WixToolset.BalUtil.4.0.9\build\WixToolset.BalUtil.props" Condition="Exists('..\..\..\packages\WixToolset.BalUtil.4.0.9\build\WixToolset.BalUtil.props')" /> | 5 | <Import Project="..\..\..\packages\WixToolset.BalUtil.4.0.12\build\WixToolset.BalUtil.props" Condition="Exists('..\..\..\packages\WixToolset.BalUtil.4.0.12\build\WixToolset.BalUtil.props')" /> |
| 6 | <Import Project="..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.8\build\WixToolset.BootstrapperCore.Native.props" Condition="Exists('..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.8\build\WixToolset.BootstrapperCore.Native.props')" /> | 6 | <Import Project="..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.10\build\WixToolset.BootstrapperCore.Native.props" Condition="Exists('..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.10\build\WixToolset.BootstrapperCore.Native.props')" /> |
| 7 | <Import Project="..\..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props" Condition="Exists('..\..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props')" /> | 7 | <Import Project="..\..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props" Condition="Exists('..\..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props')" /> |
| 8 | 8 | ||
| 9 | <ItemGroup Label="ProjectConfigurations"> | 9 | <ItemGroup Label="ProjectConfigurations"> |
| @@ -57,8 +57,8 @@ | |||
| 57 | <PropertyGroup> | 57 | <PropertyGroup> |
| 58 | <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText> | 58 | <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText> |
| 59 | </PropertyGroup> | 59 | </PropertyGroup> |
| 60 | <Error Condition="!Exists('..\..\..\packages\WixToolset.BalUtil.4.0.9\build\WixToolset.BalUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WixToolset.BalUtil.4.0.9\build\WixToolset.BalUtil.props'))" /> | 60 | <Error Condition="!Exists('..\..\..\packages\WixToolset.BalUtil.4.0.12\build\WixToolset.BalUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WixToolset.BalUtil.4.0.12\build\WixToolset.BalUtil.props'))" /> |
| 61 | <Error Condition="!Exists('..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.8\build\WixToolset.BootstrapperCore.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.8\build\WixToolset.BootstrapperCore.Native.props'))" /> | 61 | <Error Condition="!Exists('..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.10\build\WixToolset.BootstrapperCore.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.10\build\WixToolset.BootstrapperCore.Native.props'))" /> |
| 62 | <Error Condition="!Exists('..\..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props'))" /> | 62 | <Error Condition="!Exists('..\..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props'))" /> |
| 63 | <Error Condition="!Exists('..\..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets'))" /> | 63 | <Error Condition="!Exists('..\..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets'))" /> |
| 64 | </Target> | 64 | </Target> |
diff --git a/src/Samples/bafunctions/packages.config b/src/Samples/bafunctions/packages.config index 7c46d4c5..f209d5fb 100644 --- a/src/Samples/bafunctions/packages.config +++ b/src/Samples/bafunctions/packages.config | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | <?xml version="1.0" encoding="utf-8"?> | 1 | <?xml version="1.0" encoding="utf-8"?> |
| 2 | <packages> | 2 | <packages> |
| 3 | <package id="Nerdbank.GitVersioning" version="2.1.65" targetFramework="native" developmentDependency="true" /> | 3 | <package id="Nerdbank.GitVersioning" version="2.1.65" targetFramework="native" developmentDependency="true" /> |
| 4 | <package id="WixToolset.BootstrapperCore.Native" version="4.0.8" targetFramework="native" /> | 4 | <package id="WixToolset.BootstrapperCore.Native" version="4.0.10" targetFramework="native" /> |
| 5 | <package id="WixToolset.BalUtil" version="4.0.9" targetFramework="native" /> | 5 | <package id="WixToolset.BalUtil" version="4.0.12" targetFramework="native" /> |
| 6 | <package id="WixToolset.DUtil" version="4.0.18" targetFramework="native" /> | 6 | <package id="WixToolset.DUtil" version="4.0.18" targetFramework="native" /> |
| 7 | </packages> \ No newline at end of file | 7 | </packages> \ No newline at end of file |
diff --git a/src/WixToolset.Mba.Host/BootstrapperApplicationFactory.cs b/src/WixToolset.Mba.Host/BootstrapperApplicationFactory.cs new file mode 100644 index 00000000..9385d1d1 --- /dev/null +++ b/src/WixToolset.Mba.Host/BootstrapperApplicationFactory.cs | |||
| @@ -0,0 +1,85 @@ | |||
| 1 | // Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. | ||
| 2 | |||
| 3 | namespace WixToolset.Mba.Host | ||
| 4 | { | ||
| 5 | using System; | ||
| 6 | using System.Configuration; | ||
| 7 | using System.Reflection; | ||
| 8 | using System.Runtime.InteropServices; | ||
| 9 | using WixToolset.Mba.Core; | ||
| 10 | |||
| 11 | /// <summary> | ||
| 12 | /// Entry point for the MBA host to create and return the BA to the engine. | ||
| 13 | /// </summary> | ||
| 14 | [ClassInterface(ClassInterfaceType.None)] | ||
| 15 | public sealed class BootstrapperApplicationFactory : MarshalByRefObject, IBootstrapperApplicationFactory | ||
| 16 | { | ||
| 17 | /// <summary> | ||
| 18 | /// Creates a new instance of the <see cref="BootstrapperApplicationFactory"/> class. | ||
| 19 | /// </summary> | ||
| 20 | public BootstrapperApplicationFactory() | ||
| 21 | { | ||
| 22 | } | ||
| 23 | |||
| 24 | /// <summary> | ||
| 25 | /// Loads the bootstrapper application assembly and calls its IBootstrapperApplicationFactory.Create method. | ||
| 26 | /// </summary> | ||
| 27 | /// <param name="pArgs">Pointer to BOOTSTRAPPER_CREATE_ARGS struct.</param> | ||
| 28 | /// <param name="pResults">Pointer to BOOTSTRAPPER_CREATE_RESULTS struct.</param> | ||
| 29 | /// <exception cref="MissingAttributeException">The bootstrapper application assembly | ||
| 30 | /// does not define the <see cref="BootstrapperApplicationFactoryAttribute"/>.</exception> | ||
| 31 | public void Create(IntPtr pArgs, IntPtr pResults) | ||
| 32 | { | ||
| 33 | // Get the wix.boostrapper section group to get the name of the bootstrapper application assembly to host. | ||
| 34 | var section = ConfigurationManager.GetSection("wix.bootstrapper/host") as HostSection; | ||
| 35 | if (null == section) | ||
| 36 | { | ||
| 37 | throw new MissingAttributeException(); // TODO: throw a more specific exception than this. | ||
| 38 | } | ||
| 39 | |||
| 40 | // Load the BA's IBootstrapperApplicationFactory. | ||
| 41 | var baFactoryType = BootstrapperApplicationFactory.GetBAFactoryTypeFromAssembly(section.AssemblyName); | ||
| 42 | var baFactory = (IBootstrapperApplicationFactory)Activator.CreateInstance(baFactoryType); | ||
| 43 | if (null == baFactory) | ||
| 44 | { | ||
| 45 | throw new InvalidBootstrapperApplicationFactoryException(); | ||
| 46 | } | ||
| 47 | |||
| 48 | baFactory.Create(pArgs, pResults); | ||
| 49 | } | ||
| 50 | |||
| 51 | /// <summary> | ||
| 52 | /// Locates the <see cref="BootstrapperApplicationFactoryAttribute"/> and returns the specified type. | ||
| 53 | /// </summary> | ||
| 54 | /// <param name="assemblyName">The assembly that defines the IBootstrapperApplicationFactory implementation.</param> | ||
| 55 | /// <returns>The bootstrapper application factory <see cref="Type"/>.</returns> | ||
| 56 | private static Type GetBAFactoryTypeFromAssembly(string assemblyName) | ||
| 57 | { | ||
| 58 | Type baFactoryType = null; | ||
| 59 | |||
| 60 | // Load the requested assembly. | ||
| 61 | Assembly asm = AppDomain.CurrentDomain.Load(assemblyName); | ||
| 62 | |||
| 63 | // If an assembly was loaded and is not the current assembly, check for the required attribute. | ||
| 64 | // This is done to avoid using the BootstrapperApplicationFactoryAttribute which we use at build time | ||
| 65 | // to specify the BootstrapperApplicationFactory assembly in the manifest. | ||
| 66 | if (!Assembly.GetExecutingAssembly().Equals(asm)) | ||
| 67 | { | ||
| 68 | // There must be one and only one BootstrapperApplicationFactoryAttribute. | ||
| 69 | // The attribute prevents multiple declarations already. | ||
| 70 | var attrs = (BootstrapperApplicationFactoryAttribute[])asm.GetCustomAttributes(typeof(BootstrapperApplicationFactoryAttribute), false); | ||
| 71 | if (null != attrs) | ||
| 72 | { | ||
| 73 | baFactoryType = attrs[0].BootstrapperApplicationFactoryType; | ||
| 74 | } | ||
| 75 | } | ||
| 76 | |||
| 77 | if (null == baFactoryType) | ||
| 78 | { | ||
| 79 | throw new MissingAttributeException(); | ||
| 80 | } | ||
| 81 | |||
| 82 | return baFactoryType; | ||
| 83 | } | ||
| 84 | } | ||
| 85 | } | ||
diff --git a/src/WixToolset.Mba.Host/BootstrapperSectionGroup.cs b/src/WixToolset.Mba.Host/BootstrapperSectionGroup.cs new file mode 100644 index 00000000..5cf1bc9c --- /dev/null +++ b/src/WixToolset.Mba.Host/BootstrapperSectionGroup.cs | |||
| @@ -0,0 +1,29 @@ | |||
| 1 | // Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. | ||
| 2 | |||
| 3 | namespace WixToolset.Mba.Host | ||
| 4 | { | ||
| 5 | using System; | ||
| 6 | using System.Configuration; | ||
| 7 | |||
| 8 | /// <summary> | ||
| 9 | /// Handler for the wix.bootstrapper configuration section group. | ||
| 10 | /// </summary> | ||
| 11 | public class BootstrapperSectionGroup : ConfigurationSectionGroup | ||
| 12 | { | ||
| 13 | /// <summary> | ||
| 14 | /// Creates a new instance of the <see cref="BootstrapperSectionGroup"/> class. | ||
| 15 | /// </summary> | ||
| 16 | public BootstrapperSectionGroup() | ||
| 17 | { | ||
| 18 | } | ||
| 19 | |||
| 20 | /// <summary> | ||
| 21 | /// Gets the <see cref="HostSection"/> handler for the mba configuration section. | ||
| 22 | /// </summary> | ||
| 23 | [ConfigurationProperty("host")] | ||
| 24 | public HostSection Host | ||
| 25 | { | ||
| 26 | get { return (HostSection)base.Sections["host"]; } | ||
| 27 | } | ||
| 28 | } | ||
| 29 | } | ||
diff --git a/src/WixToolset.Mba.Host/Exceptions.cs b/src/WixToolset.Mba.Host/Exceptions.cs new file mode 100644 index 00000000..c68951f0 --- /dev/null +++ b/src/WixToolset.Mba.Host/Exceptions.cs | |||
| @@ -0,0 +1,145 @@ | |||
| 1 | // Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. | ||
| 2 | |||
| 3 | namespace WixToolset.Mba.Host | ||
| 4 | { | ||
| 5 | using System; | ||
| 6 | using System.Runtime.Serialization; | ||
| 7 | |||
| 8 | /// <summary> | ||
| 9 | /// Base class for exception returned to the bootstrapper application host. | ||
| 10 | /// </summary> | ||
| 11 | [Serializable] | ||
| 12 | public abstract class BootstrapperException : Exception | ||
| 13 | { | ||
| 14 | /// <summary> | ||
| 15 | /// Creates an instance of the <see cref="BootstrapperException"/> base class with the given HRESULT. | ||
| 16 | /// </summary> | ||
| 17 | /// <param name="hr">The HRESULT for the exception that is used by the bootstrapper application host.</param> | ||
| 18 | public BootstrapperException(int hr) | ||
| 19 | { | ||
| 20 | this.HResult = hr; | ||
| 21 | } | ||
| 22 | |||
| 23 | /// <summary> | ||
| 24 | /// Initializes a new instance of the <see cref="BootstrapperException"/> class. | ||
| 25 | /// </summary> | ||
| 26 | /// <param name="message">Exception message.</param> | ||
| 27 | public BootstrapperException(string message) | ||
| 28 | : base(message) | ||
| 29 | { | ||
| 30 | } | ||
| 31 | |||
| 32 | /// <summary> | ||
| 33 | /// Initializes a new instance of the <see cref="BootstrapperException"/> class. | ||
| 34 | /// </summary> | ||
| 35 | /// <param name="message">Exception message</param> | ||
| 36 | /// <param name="innerException">Inner exception associated with this one</param> | ||
| 37 | public BootstrapperException(string message, Exception innerException) | ||
| 38 | : base(message, innerException) | ||
| 39 | { | ||
| 40 | } | ||
| 41 | |||
| 42 | /// <summary> | ||
| 43 | /// Initializes a new instance of the <see cref="BootstrapperException"/> class. | ||
| 44 | /// </summary> | ||
| 45 | /// <param name="info">Serialization information for this exception</param> | ||
| 46 | /// <param name="context">Streaming context to serialize to</param> | ||
| 47 | protected BootstrapperException(SerializationInfo info, StreamingContext context) | ||
| 48 | : base(info, context) | ||
| 49 | { | ||
| 50 | } | ||
| 51 | } | ||
| 52 | |||
| 53 | /// <summary> | ||
| 54 | /// The bootstrapper application assembly loaded by the host does not contain exactly one instance of the | ||
| 55 | /// <see cref="Core.BootstrapperApplicationFactoryAttribute"/> class. | ||
| 56 | /// </summary> | ||
| 57 | /// <seealso cref="Core.BootstrapperApplicationFactoryAttribute"/> | ||
| 58 | [Serializable] | ||
| 59 | public class MissingAttributeException : BootstrapperException | ||
| 60 | { | ||
| 61 | /// <summary> | ||
| 62 | /// Creates a new instance of the <see cref="MissingAttributeException"/> class. | ||
| 63 | /// </summary> | ||
| 64 | public MissingAttributeException() | ||
| 65 | : base(NativeMethods.E_NOTFOUND) | ||
| 66 | { | ||
| 67 | } | ||
| 68 | |||
| 69 | /// <summary> | ||
| 70 | /// Initializes a new instance of the <see cref="MissingAttributeException"/> class. | ||
| 71 | /// </summary> | ||
| 72 | /// <param name="message">Exception message.</param> | ||
| 73 | public MissingAttributeException(string message) | ||
| 74 | : base(message) | ||
| 75 | { | ||
| 76 | } | ||
| 77 | |||
| 78 | /// <summary> | ||
| 79 | /// Initializes a new instance of the <see cref="MissingAttributeException"/> class. | ||
| 80 | /// </summary> | ||
| 81 | /// <param name="message">Exception message</param> | ||
| 82 | /// <param name="innerException">Inner exception associated with this one</param> | ||
| 83 | public MissingAttributeException(string message, Exception innerException) | ||
| 84 | : base(message, innerException) | ||
| 85 | { | ||
| 86 | } | ||
| 87 | |||
| 88 | /// <summary> | ||
| 89 | /// Initializes a new instance of the <see cref="MissingAttributeException"/> class. | ||
| 90 | /// </summary> | ||
| 91 | /// <param name="info">Serialization information for this exception</param> | ||
| 92 | /// <param name="context">Streaming context to serialize to</param> | ||
| 93 | protected MissingAttributeException(SerializationInfo info, StreamingContext context) | ||
| 94 | : base(info, context) | ||
| 95 | { | ||
| 96 | } | ||
| 97 | } | ||
| 98 | |||
| 99 | /// <summary> | ||
| 100 | /// The bootstrapper application factory specified by the <see cref="Core.BootstrapperApplicationFactoryAttribute"/> | ||
| 101 | /// does not extend the <see cref="Core.IBootstrapperApplicationFactory"/> base class. | ||
| 102 | /// </summary> | ||
| 103 | /// <seealso cref="Core.BaseBootstrapperApplicationFactory"/> | ||
| 104 | /// <seealso cref="Core.BootstrapperApplicationFactoryAttribute"/> | ||
| 105 | [Serializable] | ||
| 106 | public class InvalidBootstrapperApplicationFactoryException : BootstrapperException | ||
| 107 | { | ||
| 108 | /// <summary> | ||
| 109 | /// Creates a new instance of the <see cref="InvalidBootstrapperApplicationFactoryException"/> class. | ||
| 110 | /// </summary> | ||
| 111 | public InvalidBootstrapperApplicationFactoryException() | ||
| 112 | : base(NativeMethods.E_UNEXPECTED) | ||
| 113 | { | ||
| 114 | } | ||
| 115 | |||
| 116 | /// <summary> | ||
| 117 | /// Initializes a new instance of the <see cref="InvalidBootstrapperApplicationFactoryException"/> class. | ||
| 118 | /// </summary> | ||
| 119 | /// <param name="message">Exception message.</param> | ||
| 120 | public InvalidBootstrapperApplicationFactoryException(string message) | ||
| 121 | : base(message) | ||
| 122 | { | ||
| 123 | } | ||
| 124 | |||
| 125 | /// <summary> | ||
| 126 | /// Initializes a new instance of the <see cref="InvalidBootstrapperApplicationFactoryException"/> class. | ||
| 127 | /// </summary> | ||
| 128 | /// <param name="message">Exception message</param> | ||
| 129 | /// <param name="innerException">Inner exception associated with this one</param> | ||
| 130 | public InvalidBootstrapperApplicationFactoryException(string message, Exception innerException) | ||
| 131 | : base(message, innerException) | ||
| 132 | { | ||
| 133 | } | ||
| 134 | |||
| 135 | /// <summary> | ||
| 136 | /// Initializes a new instance of the <see cref="InvalidBootstrapperApplicationFactoryException"/> class. | ||
| 137 | /// </summary> | ||
| 138 | /// <param name="info">Serialization information for this exception</param> | ||
| 139 | /// <param name="context">Streaming context to serialize to</param> | ||
| 140 | protected InvalidBootstrapperApplicationFactoryException(SerializationInfo info, StreamingContext context) | ||
| 141 | : base(info, context) | ||
| 142 | { | ||
| 143 | } | ||
| 144 | } | ||
| 145 | } | ||
diff --git a/src/WixToolset.Mba.Host/HostSection.cs b/src/WixToolset.Mba.Host/HostSection.cs new file mode 100644 index 00000000..632025c7 --- /dev/null +++ b/src/WixToolset.Mba.Host/HostSection.cs | |||
| @@ -0,0 +1,47 @@ | |||
| 1 | // Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. | ||
| 2 | |||
| 3 | namespace WixToolset.Mba.Host | ||
| 4 | { | ||
| 5 | using System; | ||
| 6 | using System.Configuration; | ||
| 7 | |||
| 8 | /// <summary> | ||
| 9 | /// Handler for the Host configuration section. | ||
| 10 | /// </summary> | ||
| 11 | public sealed class HostSection : ConfigurationSection | ||
| 12 | { | ||
| 13 | private static readonly ConfigurationProperty assemblyNameProperty = new ConfigurationProperty("assemblyName", typeof(string), null, ConfigurationPropertyOptions.IsRequired); | ||
| 14 | private static readonly ConfigurationProperty supportedFrameworksProperty = new ConfigurationProperty("", typeof(SupportedFrameworkElementCollection), null, ConfigurationPropertyOptions.IsDefaultCollection); | ||
| 15 | |||
| 16 | /// <summary> | ||
| 17 | /// Creates a new instance of the <see cref="HostSection"/> class. | ||
| 18 | /// </summary> | ||
| 19 | public HostSection() | ||
| 20 | { | ||
| 21 | } | ||
| 22 | |||
| 23 | /// <summary> | ||
| 24 | /// Gets the name of the assembly that contians the <see cref="Core.IBootstrapperApplicationFactory"/> child class. | ||
| 25 | /// </summary> | ||
| 26 | /// <remarks> | ||
| 27 | /// The assembly specified by this name must contain the <see cref="Core.BootstrapperApplicationFactoryAttribute"/> to identify | ||
| 28 | /// the type of the <see cref="Core.IBootstrapperApplicationFactory"/> child class. | ||
| 29 | /// </remarks> | ||
| 30 | [ConfigurationProperty("assemblyName", IsRequired = true)] | ||
| 31 | public string AssemblyName | ||
| 32 | { | ||
| 33 | get { return (string)base[assemblyNameProperty]; } | ||
| 34 | set { base[assemblyNameProperty] = value; } | ||
| 35 | } | ||
| 36 | |||
| 37 | /// <summary> | ||
| 38 | /// Gets the <see cref="SupportedFrameworkElementCollection"/> of supported frameworks for the host configuration. | ||
| 39 | /// </summary> | ||
| 40 | [ConfigurationProperty("", IsDefaultCollection = true)] | ||
| 41 | [ConfigurationCollection(typeof(SupportedFrameworkElement))] | ||
| 42 | public SupportedFrameworkElementCollection SupportedFrameworks | ||
| 43 | { | ||
| 44 | get { return (SupportedFrameworkElementCollection)base[supportedFrameworksProperty]; } | ||
| 45 | } | ||
| 46 | } | ||
| 47 | } | ||
diff --git a/src/WixToolset.Mba.Host/NativeMethods.cs b/src/WixToolset.Mba.Host/NativeMethods.cs new file mode 100644 index 00000000..b9fc85a0 --- /dev/null +++ b/src/WixToolset.Mba.Host/NativeMethods.cs | |||
| @@ -0,0 +1,18 @@ | |||
| 1 | // Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. | ||
| 2 | |||
| 3 | namespace WixToolset.Mba.Host | ||
| 4 | { | ||
| 5 | using System; | ||
| 6 | using System.Runtime.InteropServices; | ||
| 7 | |||
| 8 | /// <summary> | ||
| 9 | /// Contains native constants, functions, and structures for this assembly. | ||
| 10 | /// </summary> | ||
| 11 | internal static class NativeMethods | ||
| 12 | { | ||
| 13 | #region Error Constants | ||
| 14 | internal const int E_NOTFOUND = unchecked((int)0x80070490); | ||
| 15 | internal const int E_UNEXPECTED = unchecked((int)0x8000ffff); | ||
| 16 | #endregion | ||
| 17 | } | ||
| 18 | } | ||
diff --git a/src/WixToolset.Mba.Host/Properties/AssemblyInfo.cs b/src/WixToolset.Mba.Host/Properties/AssemblyInfo.cs new file mode 100644 index 00000000..8cee0ae9 --- /dev/null +++ b/src/WixToolset.Mba.Host/Properties/AssemblyInfo.cs | |||
| @@ -0,0 +1,17 @@ | |||
| 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 | using System; | ||
| 4 | using System.Reflection; | ||
| 5 | using System.Runtime.InteropServices; | ||
| 6 | |||
| 7 | [assembly: AssemblyTitle("Managed Bootstrapper Application Host (WiX)")] | ||
| 8 | [assembly: AssemblyDescription("Managed Bootstrapper Application Host")] | ||
| 9 | [assembly: AssemblyProduct("WiX Toolset")] | ||
| 10 | [assembly: AssemblyCompany("WiX Toolset Team")] | ||
| 11 | [assembly: AssemblyCopyright("Copyright (c) .NET Foundation and contributors. All rights reserved.")] | ||
| 12 | |||
| 13 | // Types should not be visible to COM by default. | ||
| 14 | [assembly: ComVisible(false)] | ||
| 15 | [assembly: Guid("6f4e0cc9-8ad4-4b5a-a669-3aafff67a76f")] | ||
| 16 | |||
| 17 | [assembly: CLSCompliantAttribute(true)] | ||
diff --git a/src/WixToolset.Mba.Host/SupportedFrameworkElement.cs b/src/WixToolset.Mba.Host/SupportedFrameworkElement.cs new file mode 100644 index 00000000..fe7fd2eb --- /dev/null +++ b/src/WixToolset.Mba.Host/SupportedFrameworkElement.cs | |||
| @@ -0,0 +1,47 @@ | |||
| 1 | // Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. | ||
| 2 | |||
| 3 | namespace WixToolset.Mba.Host | ||
| 4 | { | ||
| 5 | using System; | ||
| 6 | using System.Configuration; | ||
| 7 | |||
| 8 | /// <summary> | ||
| 9 | /// Handler for the supportedFramework configuration section. | ||
| 10 | /// </summary> | ||
| 11 | public sealed class SupportedFrameworkElement : ConfigurationElement | ||
| 12 | { | ||
| 13 | private static readonly ConfigurationProperty versionProperty = new ConfigurationProperty("version", typeof(string), null, ConfigurationPropertyOptions.IsRequired); | ||
| 14 | private static readonly ConfigurationProperty runtimeVersionProperty = new ConfigurationProperty("runtimeVersion", typeof(string)); | ||
| 15 | |||
| 16 | /// <summary> | ||
| 17 | /// Creates a new instance of the <see cref="SupportedFrameworkElement"/> class. | ||
| 18 | /// </summary> | ||
| 19 | public SupportedFrameworkElement() | ||
| 20 | { | ||
| 21 | } | ||
| 22 | |||
| 23 | /// <summary> | ||
| 24 | /// Gets the version of the supported framework. | ||
| 25 | /// </summary> | ||
| 26 | /// <remarks> | ||
| 27 | /// The assembly specified by this name must contain a value matching the NETFX version registry key under | ||
| 28 | /// "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP". | ||
| 29 | /// </remarks> | ||
| 30 | [ConfigurationProperty("version", IsRequired = true)] | ||
| 31 | public string Version | ||
| 32 | { | ||
| 33 | get { return (string)base[versionProperty]; } | ||
| 34 | set { base[versionProperty] = value; } | ||
| 35 | } | ||
| 36 | |||
| 37 | /// <summary> | ||
| 38 | /// Gets the runtime version required by this supported framework. | ||
| 39 | /// </summary> | ||
| 40 | [ConfigurationProperty("runtimeVersion", IsRequired = false)] | ||
| 41 | public string RuntimeVersion | ||
| 42 | { | ||
| 43 | get { return (string)base[runtimeVersionProperty]; } | ||
| 44 | set { base[runtimeVersionProperty] = value; } | ||
| 45 | } | ||
| 46 | } | ||
| 47 | } | ||
diff --git a/src/WixToolset.Mba.Host/SupportedFrameworkElementCollection.cs b/src/WixToolset.Mba.Host/SupportedFrameworkElementCollection.cs new file mode 100644 index 00000000..12c7cf3e --- /dev/null +++ b/src/WixToolset.Mba.Host/SupportedFrameworkElementCollection.cs | |||
| @@ -0,0 +1,36 @@ | |||
| 1 | // Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. | ||
| 2 | |||
| 3 | namespace WixToolset.Mba.Host | ||
| 4 | { | ||
| 5 | using System; | ||
| 6 | using System.Configuration; | ||
| 7 | using System.Diagnostics.CodeAnalysis; | ||
| 8 | |||
| 9 | /// <summary> | ||
| 10 | /// Handler for the supportedFramework collection. | ||
| 11 | /// </summary> | ||
| 12 | [SuppressMessage("Microsoft.Design", "CA1010:CollectionsShouldImplementGenericInterface")] | ||
| 13 | [ConfigurationCollection(typeof(SupportedFrameworkElement), AddItemName = "supportedFramework", CollectionType = ConfigurationElementCollectionType.BasicMap)] | ||
| 14 | public sealed class SupportedFrameworkElementCollection : ConfigurationElementCollection | ||
| 15 | { | ||
| 16 | public override ConfigurationElementCollectionType CollectionType | ||
| 17 | { | ||
| 18 | get { return ConfigurationElementCollectionType.BasicMap; } | ||
| 19 | } | ||
| 20 | |||
| 21 | protected override string ElementName | ||
| 22 | { | ||
| 23 | get { return "supportedFramework"; } | ||
| 24 | } | ||
| 25 | |||
| 26 | protected override ConfigurationElement CreateNewElement() | ||
| 27 | { | ||
| 28 | return new SupportedFrameworkElement(); | ||
| 29 | } | ||
| 30 | |||
| 31 | protected override object GetElementKey(ConfigurationElement element) | ||
| 32 | { | ||
| 33 | return (element as SupportedFrameworkElement).Version; | ||
| 34 | } | ||
| 35 | } | ||
| 36 | } | ||
diff --git a/src/WixToolset.Mba.Host/WixToolset.Mba.Host.config b/src/WixToolset.Mba.Host/WixToolset.Mba.Host.config new file mode 100644 index 00000000..a19b66f1 --- /dev/null +++ b/src/WixToolset.Mba.Host/WixToolset.Mba.Host.config | |||
| @@ -0,0 +1,26 @@ | |||
| 1 | <?xml version="1.0" encoding="utf-8" ?> | ||
| 2 | <!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. --> | ||
| 3 | |||
| 4 | |||
| 5 | <configuration> | ||
| 6 | <configSections> | ||
| 7 | <sectionGroup name="wix.bootstrapper" type="WixToolset.Mba.Host.BootstrapperSectionGroup, WixToolset.Mba.Host"> | ||
| 8 | <section name="host" type="WixToolset.Mba.Host.HostSection, WixToolset.Mba.Host" /> | ||
| 9 | </sectionGroup> | ||
| 10 | </configSections> | ||
| 11 | <startup useLegacyV2RuntimeActivationPolicy="true"> | ||
| 12 | <supportedRuntime version="v4.0" /> | ||
| 13 | <supportedRuntime version="v2.0.50727" /> | ||
| 14 | </startup> | ||
| 15 | <wix.bootstrapper> | ||
| 16 | <!-- Example only. Use only if the startup/supportedRuntime above cannot discern supported frameworks. --> | ||
| 17 | <!-- | ||
| 18 | <supportedFramework version="v4\Client" /> | ||
| 19 | <supportedFramework version="v3.5" /> | ||
| 20 | <supportedFramework version="v3.0" /> | ||
| 21 | --> | ||
| 22 | |||
| 23 | <!-- Example only. Replace the host/@assemblyName attribute with assembly that implements IBootstrapperApplicationFactory. --> | ||
| 24 | <host assemblyName="AssemblyWithClassThatInheritsFromBootstrapperApplicationFactory" /> | ||
| 25 | </wix.bootstrapper> | ||
| 26 | </configuration> | ||
diff --git a/src/WixToolset.Mba.Host/WixToolset.Mba.Host.csproj b/src/WixToolset.Mba.Host/WixToolset.Mba.Host.csproj new file mode 100644 index 00000000..ccdd67cf --- /dev/null +++ b/src/WixToolset.Mba.Host/WixToolset.Mba.Host.csproj | |||
| @@ -0,0 +1,89 @@ | |||
| 1 | <?xml version="1.0" encoding="utf-8"?> | ||
| 2 | <!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. --> | ||
| 3 | |||
| 4 | |||
| 5 | <Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> | ||
| 6 | <PropertyGroup> | ||
| 7 | <ProjectGuid>{F2BA1935-70FA-4156-B161-FD03850B4FAA}</ProjectGuid> | ||
| 8 | <AssemblyName>WixToolset.Mba.Host</AssemblyName> | ||
| 9 | <OutputType>Library</OutputType> | ||
| 10 | <RootNamespace>WixToolset.Mba.Host</RootNamespace> | ||
| 11 | <NoWarn>0693;1591</NoWarn> | ||
| 12 | <TargetFrameworkVersion>v2.0</TargetFrameworkVersion> | ||
| 13 | <Description>Managed Bootstrapper Application entry point</Description> | ||
| 14 | </PropertyGroup> | ||
| 15 | <PropertyGroup Condition=" '$(Configuration)' == 'Debug' "> | ||
| 16 | <DebugSymbols>true</DebugSymbols> | ||
| 17 | <Optimize>false</Optimize> | ||
| 18 | <DefineConstants>$(DefineConstants);DEBUG;TRACE</DefineConstants> | ||
| 19 | </PropertyGroup> | ||
| 20 | <PropertyGroup Condition=" '$(Configuration)' == 'Release' "> | ||
| 21 | <DebugSymbols>true</DebugSymbols> | ||
| 22 | <Optimize>true</Optimize> | ||
| 23 | <DefineConstants>$(DefineConstants);TRACE</DefineConstants> | ||
| 24 | </PropertyGroup> | ||
| 25 | <ItemGroup> | ||
| 26 | <Compile Include="BootstrapperApplicationFactory.cs" /> | ||
| 27 | <Compile Include="BootstrapperSectionGroup.cs" /> | ||
| 28 | <Compile Include="Exceptions.cs" /> | ||
| 29 | <Compile Include="HostSection.cs" /> | ||
| 30 | <Compile Include="NativeMethods.cs" /> | ||
| 31 | <Compile Include="Properties\AssemblyInfo.cs" /> | ||
| 32 | <Compile Include="SupportedFrameworkElementCollection.cs" /> | ||
| 33 | <Compile Include="SupportedFrameworkElement.cs" /> | ||
| 34 | </ItemGroup> | ||
| 35 | <ItemGroup> | ||
| 36 | <None Include="WixToolset.Mba.Host.config" /> | ||
| 37 | </ItemGroup> | ||
| 38 | <ItemGroup> | ||
| 39 | <None Include="packages.config" /> | ||
| 40 | </ItemGroup> | ||
| 41 | <ItemGroup> | ||
| 42 | <Reference Include="System" /> | ||
| 43 | <Reference Include="System.Configuration" /> | ||
| 44 | <Reference Include="System.Data" /> | ||
| 45 | <Reference Include="System.Xml" /> | ||
| 46 | <Reference Include="WixToolset.Mba.Core"> | ||
| 47 | <HintPath>..\..\packages\WixToolset.Mba.Core.4.0.12\lib\net20\WixToolset.Mba.Core.dll</HintPath> | ||
| 48 | </Reference> | ||
| 49 | </ItemGroup> | ||
| 50 | <ItemGroup> | ||
| 51 | <HeaderPath Include="$(BaseOutputPath)obj\$(AssemblyName).h"> | ||
| 52 | <Visible>False</Visible> | ||
| 53 | </HeaderPath> | ||
| 54 | </ItemGroup> | ||
| 55 | |||
| 56 | <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" /> | ||
| 57 | |||
| 58 | <Target Name="GenerateIdentityHeader" AfterTargets="Build" Inputs="$(TargetPath)" Outputs="@(HeaderPath)"> | ||
| 59 | <GetAssemblyIdentity AssemblyFiles="$(TargetPath)"> | ||
| 60 | <Output TaskParameter="Assemblies" ItemName="AssemblyIdentity" /> | ||
| 61 | </GetAssemblyIdentity> | ||
| 62 | <ItemGroup> | ||
| 63 | <Line Include="#define MBA_ASSEMBLY_FULL_NAME L"%(AssemblyIdentity.Identity)"" /> | ||
| 64 | <Line Include="#define MBA_CONFIG_FILE_NAME L"$(AssemblyName).config"" /> | ||
| 65 | <Line Include="#define MBA_ENTRY_TYPE L"$(RootNamespace).BootstrapperApplicationFactory"" /> | ||
| 66 | </ItemGroup> | ||
| 67 | <Message Importance="normal" Text="Generating identity definitions into @(HeaderPath->'%(FullPath)')" /> | ||
| 68 | <WriteLinesToFile File="@(HeaderPath)" Lines="@(Line)" Overwrite="True" /> | ||
| 69 | <ItemGroup> | ||
| 70 | <FileWrites Include="@(HeaderPath)" /> | ||
| 71 | </ItemGroup> | ||
| 72 | </Target> | ||
| 73 | |||
| 74 | <Target Name="Pack" DependsOnTargets="GetBuildVersion"> | ||
| 75 | <Exec Command='nuget pack $(AssemblyName).nuspec -OutputDirectory "$(BaseOutputPath)$(Configuration)" -Properties Configuration=$(Configuration);Id=$(AssemblyName);Version="$(BuildVersionSimple)";Authors="$(Authors)";Copyright="$(Copyright)";Description="$(Description)";Title="$(Title)"' /> | ||
| 76 | </Target> | ||
| 77 | |||
| 78 | <Import Project="..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets" Condition="Exists('..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets')" /> | ||
| 79 | <Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild"> | ||
| 80 | <PropertyGroup> | ||
| 81 | <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText> | ||
| 82 | </PropertyGroup> | ||
| 83 | <Error Condition="!Exists('..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets'))" /> | ||
| 84 | </Target> | ||
| 85 | |||
| 86 | <PropertyGroup Condition=" '$(CreateDocumentation)'!='false' "> | ||
| 87 | <DocumentationFile>$(OutputPath)\$(AssemblyName).xml</DocumentationFile> | ||
| 88 | </PropertyGroup> | ||
| 89 | </Project> \ No newline at end of file | ||
diff --git a/src/WixToolset.Mba.Host/WixToolset.Mba.Host.nuspec b/src/WixToolset.Mba.Host/WixToolset.Mba.Host.nuspec new file mode 100644 index 00000000..101a6671 --- /dev/null +++ b/src/WixToolset.Mba.Host/WixToolset.Mba.Host.nuspec | |||
| @@ -0,0 +1,20 @@ | |||
| 1 | <?xml version="1.0"?> | ||
| 2 | <package > | ||
| 3 | <metadata> | ||
| 4 | <id>$id$</id> | ||
| 5 | <version>$version$</version> | ||
| 6 | <authors>WiX Toolset Team</authors> | ||
| 7 | <owners>WiX Toolset Team</owners> | ||
| 8 | <!-- <license type="expression">MS-RL</license> --> | ||
| 9 | <licenseUrl>https://licenses.nuget.org/MS-RL</licenseUrl> | ||
| 10 | <projectUrl>https://github.com/wixtoolset/Bal.wixext</projectUrl> | ||
| 11 | <requireLicenseAcceptance>false</requireLicenseAcceptance> | ||
| 12 | <description>$description$</description> | ||
| 13 | <copyright>$copyright$</copyright> | ||
| 14 | </metadata> | ||
| 15 | |||
| 16 | <files> | ||
| 17 | <file src="$id$.config" target="samples" /> | ||
| 18 | <file src="..\..\build\$configuration$\$id$.dll" target="lib\net20" /> | ||
| 19 | </files> | ||
| 20 | </package> | ||
diff --git a/src/WixToolset.Mba.Host/packages.config b/src/WixToolset.Mba.Host/packages.config new file mode 100644 index 00000000..eee20511 --- /dev/null +++ b/src/WixToolset.Mba.Host/packages.config | |||
| @@ -0,0 +1,5 @@ | |||
| 1 | <?xml version="1.0" encoding="utf-8"?> | ||
| 2 | <packages> | ||
| 3 | <package id="Nerdbank.GitVersioning" version="2.1.65" targetFramework="net20" developmentDependency="true" /> | ||
| 4 | <package id="WixToolset.Mba.Core" version="4.0.12" targetFramework="net20" /> | ||
| 5 | </packages> \ No newline at end of file | ||
diff --git a/src/mbahost/mbahost.cpp b/src/mbahost/mbahost.cpp index 444a95a8..7916ec9a 100644 --- a/src/mbahost/mbahost.cpp +++ b/src/mbahost/mbahost.cpp | |||
| @@ -1,8 +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. | 1 | // Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. |
| 2 | 2 | ||
| 3 | #include "precomp.h" | 3 | #include "precomp.h" |
| 4 | #include <WixToolset.Mba.Core.h> // includes the generated assembly name macros. | 4 | #include <WixToolset.Mba.Host.h> // includes the generated assembly name macros. |
| 5 | #include "BalBaseBootstrapperApplicationProc.h" | ||
| 6 | 5 | ||
| 7 | static const DWORD NET452_RELEASE = 379893; | 6 | static const DWORD NET452_RELEASE = 379893; |
| 8 | 7 | ||
| @@ -50,7 +49,6 @@ static HRESULT GetCLRHost( | |||
| 50 | ); | 49 | ); |
| 51 | static HRESULT CreateManagedBootstrapperApplication( | 50 | static HRESULT CreateManagedBootstrapperApplication( |
| 52 | __in _AppDomain* pAppDomain, | 51 | __in _AppDomain* pAppDomain, |
| 53 | __in IBootstrapperEngine* pEngine, | ||
| 54 | __in const BOOTSTRAPPER_CREATE_ARGS* pArgs, | 52 | __in const BOOTSTRAPPER_CREATE_ARGS* pArgs, |
| 55 | __inout BOOTSTRAPPER_CREATE_RESULTS* pResults | 53 | __inout BOOTSTRAPPER_CREATE_RESULTS* pResults |
| 56 | ); | 54 | ); |
| @@ -109,7 +107,7 @@ extern "C" HRESULT WINAPI BootstrapperApplicationCreate( | |||
| 109 | { | 107 | { |
| 110 | BalLog(BOOTSTRAPPER_LOG_LEVEL_STANDARD, "Loading managed bootstrapper application."); | 108 | BalLog(BOOTSTRAPPER_LOG_LEVEL_STANDARD, "Loading managed bootstrapper application."); |
| 111 | 109 | ||
| 112 | hr = CreateManagedBootstrapperApplication(vpAppDomain, pEngine, pArgs, pResults); | 110 | hr = CreateManagedBootstrapperApplication(vpAppDomain, pArgs, pResults); |
| 113 | BalExitOnFailure(hr, "Failed to create the managed bootstrapper application."); | 111 | BalExitOnFailure(hr, "Failed to create the managed bootstrapper application."); |
| 114 | } | 112 | } |
| 115 | else // fallback to the prerequisite BA. | 113 | else // fallback to the prerequisite BA. |
| @@ -185,7 +183,7 @@ static HRESULT GetAppDomain( | |||
| 185 | hr = GetAppBase(&sczAppBase); | 183 | hr = GetAppBase(&sczAppBase); |
| 186 | ExitOnFailure(hr, "Failed to get the host base path."); | 184 | ExitOnFailure(hr, "Failed to get the host base path."); |
| 187 | 185 | ||
| 188 | hr = PathConcat(sczAppBase, L"WixToolset.Mba.Core.config", &sczConfigPath); | 186 | hr = PathConcat(sczAppBase, MBA_CONFIG_FILE_NAME, &sczConfigPath); |
| 189 | ExitOnFailure(hr, "Failed to get the full path to the application configuration file."); | 187 | ExitOnFailure(hr, "Failed to get the full path to the application configuration file."); |
| 190 | 188 | ||
| 191 | // Check that the supported framework is installed. | 189 | // Check that the supported framework is installed. |
| @@ -514,27 +512,20 @@ LExit: | |||
| 514 | // Creates the bootstrapper app and returns it for the engine. | 512 | // Creates the bootstrapper app and returns it for the engine. |
| 515 | static HRESULT CreateManagedBootstrapperApplication( | 513 | static HRESULT CreateManagedBootstrapperApplication( |
| 516 | __in _AppDomain* pAppDomain, | 514 | __in _AppDomain* pAppDomain, |
| 517 | __in IBootstrapperEngine* pEngine, | ||
| 518 | __in const BOOTSTRAPPER_CREATE_ARGS* pArgs, | 515 | __in const BOOTSTRAPPER_CREATE_ARGS* pArgs, |
| 519 | __inout BOOTSTRAPPER_CREATE_RESULTS* pResults | 516 | __inout BOOTSTRAPPER_CREATE_RESULTS* pResults |
| 520 | ) | 517 | ) |
| 521 | { | 518 | { |
| 522 | HRESULT hr = S_OK; | 519 | HRESULT hr = S_OK; |
| 523 | IBootstrapperApplicationFactory* pAppFactory = NULL; | 520 | IBootstrapperApplicationFactory* pAppFactory = NULL; |
| 524 | IBootstrapperApplication* pApp = NULL; | ||
| 525 | 521 | ||
| 526 | hr = CreateManagedBootstrapperApplicationFactory(pAppDomain, &pAppFactory); | 522 | hr = CreateManagedBootstrapperApplicationFactory(pAppDomain, &pAppFactory); |
| 527 | ExitOnFailure(hr, "Failed to create the factory to create the bootstrapper application."); | 523 | ExitOnFailure(hr, "Failed to create the factory to create the bootstrapper application."); |
| 528 | 524 | ||
| 529 | hr = pAppFactory->Create(pEngine, pArgs->pCommand, &pApp); | 525 | hr = pAppFactory->Create(pArgs, pResults); |
| 530 | ExitOnFailure(hr, "Failed to create the bootstrapper application."); | 526 | ExitOnFailure(hr, "Failed to create the bootstrapper application."); |
| 531 | 527 | ||
| 532 | pResults->pfnBootstrapperApplicationProc = BalBaseBootstrapperApplicationProc; | ||
| 533 | pResults->pvBootstrapperApplicationProcContext = pApp; | ||
| 534 | pApp = NULL; | ||
| 535 | |||
| 536 | LExit: | 528 | LExit: |
| 537 | ReleaseNullObject(pApp); | ||
| 538 | ReleaseNullObject(pAppFactory); | 529 | ReleaseNullObject(pAppFactory); |
| 539 | 530 | ||
| 540 | return hr; | 531 | return hr; |
| @@ -557,7 +548,7 @@ static HRESULT CreateManagedBootstrapperApplicationFactory( | |||
| 557 | bstrAssemblyName = ::SysAllocString(MBA_ASSEMBLY_FULL_NAME); | 548 | bstrAssemblyName = ::SysAllocString(MBA_ASSEMBLY_FULL_NAME); |
| 558 | ExitOnNull(bstrAssemblyName, hr, E_OUTOFMEMORY, "Failed to allocate the full assembly name for the bootstrapper application factory."); | 549 | ExitOnNull(bstrAssemblyName, hr, E_OUTOFMEMORY, "Failed to allocate the full assembly name for the bootstrapper application factory."); |
| 559 | 550 | ||
| 560 | bstrTypeName = ::SysAllocString(L"WixToolset.Mba.Core.BootstrapperApplicationFactory"); | 551 | bstrTypeName = ::SysAllocString(MBA_ENTRY_TYPE); |
| 561 | ExitOnNull(bstrTypeName, hr, E_OUTOFMEMORY, "Failed to allocate the full type name for the BA factory."); | 552 | ExitOnNull(bstrTypeName, hr, E_OUTOFMEMORY, "Failed to allocate the full type name for the BA factory."); |
| 562 | 553 | ||
| 563 | hr = pAppDomain->CreateInstance(bstrAssemblyName, bstrTypeName, &pObj); | 554 | hr = pAppDomain->CreateInstance(bstrAssemblyName, bstrTypeName, &pObj); |
diff --git a/src/mbahost/mbahost.vcxproj b/src/mbahost/mbahost.vcxproj index c7a0b69f..30bffb54 100644 --- a/src/mbahost/mbahost.vcxproj +++ b/src/mbahost/mbahost.vcxproj | |||
| @@ -2,8 +2,8 @@ | |||
| 2 | <!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. --> | 2 | <!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. --> |
| 3 | 3 | ||
| 4 | <Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> | 4 | <Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> |
| 5 | <Import Project="..\..\packages\WixToolset.BalUtil.4.0.9\build\WixToolset.BalUtil.props" Condition="Exists('..\..\packages\WixToolset.BalUtil.4.0.9\build\WixToolset.BalUtil.props')" /> | 5 | <Import Project="..\..\packages\WixToolset.BalUtil.4.0.12\build\WixToolset.BalUtil.props" Condition="Exists('..\..\packages\WixToolset.BalUtil.4.0.12\build\WixToolset.BalUtil.props')" /> |
| 6 | <Import Project="..\..\packages\WixToolset.BootstrapperCore.Native.4.0.8\build\WixToolset.BootstrapperCore.Native.props" Condition="Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.8\build\WixToolset.BootstrapperCore.Native.props')" /> | 6 | <Import Project="..\..\packages\WixToolset.BootstrapperCore.Native.4.0.10\build\WixToolset.BootstrapperCore.Native.props" Condition="Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.10\build\WixToolset.BootstrapperCore.Native.props')" /> |
| 7 | <Import Project="..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props" Condition="Exists('..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props')" /> | 7 | <Import Project="..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props" Condition="Exists('..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props')" /> |
| 8 | 8 | ||
| 9 | <ItemGroup Label="ProjectConfigurations"> | 9 | <ItemGroup Label="ProjectConfigurations"> |
| @@ -52,13 +52,14 @@ | |||
| 52 | 52 | ||
| 53 | <ItemDefinitionGroup> | 53 | <ItemDefinitionGroup> |
| 54 | <ClCompile> | 54 | <ClCompile> |
| 55 | <AdditionalIncludeDirectories>..\..\packages\WixToolset.Mba.Core.4.0.9\build\native\include\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | 55 | <AdditionalIncludeDirectories>$(BaseOutputPath)obj;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 56 | </ClCompile> | 56 | </ClCompile> |
| 57 | </ItemDefinitionGroup> | 57 | </ItemDefinitionGroup> |
| 58 | 58 | ||
| 59 | <ItemGroup> | 59 | <ItemGroup> |
| 60 | <MbaHostDependency Include="..\..\packages\WixToolset.BootstrapperCore.4.0.8\lib\net20\WixToolset.BootstrapperCore.dll" /> | 60 | <ProjectReference Include="..\WixToolset.Mba.Host\WixToolset.Mba.Host.csproj"> |
| 61 | <MbaHostDependency Include="..\..\packages\WixToolset.Mba.Core.4.0.9\lib\net20\WixToolset.Mba.Core.dll" /> | 61 | <Project>{f2ba1935-70fa-4156-b161-fd03850b4faa}</Project> |
| 62 | </ProjectReference> | ||
| 62 | </ItemGroup> | 63 | </ItemGroup> |
| 63 | 64 | ||
| 64 | <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> | 65 | <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> |
| @@ -67,13 +68,9 @@ | |||
| 67 | <PropertyGroup> | 68 | <PropertyGroup> |
| 68 | <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText> | 69 | <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText> |
| 69 | </PropertyGroup> | 70 | </PropertyGroup> |
| 70 | <Error Condition="!Exists('..\..\packages\WixToolset.BalUtil.4.0.9\build\WixToolset.BalUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.BalUtil.4.0.9\build\WixToolset.BalUtil.props'))" /> | 71 | <Error Condition="!Exists('..\..\packages\WixToolset.BalUtil.4.0.12\build\WixToolset.BalUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.BalUtil.4.0.12\build\WixToolset.BalUtil.props'))" /> |
| 71 | <Error Condition="!Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.8\build\WixToolset.BootstrapperCore.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.BootstrapperCore.Native.4.0.8\build\WixToolset.BootstrapperCore.Native.props'))" /> | 72 | <Error Condition="!Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.10\build\WixToolset.BootstrapperCore.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.BootstrapperCore.Native.4.0.10\build\WixToolset.BootstrapperCore.Native.props'))" /> |
| 72 | <Error Condition="!Exists('..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props'))" /> | 73 | <Error Condition="!Exists('..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props'))" /> |
| 73 | <Error Condition="!Exists('..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets'))" /> | 74 | <Error Condition="!Exists('..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets'))" /> |
| 74 | </Target> | 75 | </Target> |
| 75 | 76 | </Project> \ No newline at end of file | |
| 76 | <Target Name="CopyMbaHostDependencies" AfterTargets="Build"> | ||
| 77 | <Copy DestinationFolder="$(OutputPath)" SourceFiles="@(MbaHostDependency)" SkipUnchangedFiles="true" /> | ||
| 78 | </Target> | ||
| 79 | </Project> | ||
diff --git a/src/mbahost/packages.config b/src/mbahost/packages.config index c616685e..f209d5fb 100644 --- a/src/mbahost/packages.config +++ b/src/mbahost/packages.config | |||
| @@ -1,9 +1,7 @@ | |||
| 1 | <?xml version="1.0" encoding="utf-8"?> | 1 | <?xml version="1.0" encoding="utf-8"?> |
| 2 | <packages> | 2 | <packages> |
| 3 | <package id="Nerdbank.GitVersioning" version="2.1.65" targetFramework="native" developmentDependency="true" /> | 3 | <package id="Nerdbank.GitVersioning" version="2.1.65" targetFramework="native" developmentDependency="true" /> |
| 4 | <package id="WixToolset.BootstrapperCore" version="4.0.8" targetFramework="native" /> | 4 | <package id="WixToolset.BootstrapperCore.Native" version="4.0.10" targetFramework="native" /> |
| 5 | <package id="WixToolset.BootstrapperCore.Native" version="4.0.8" targetFramework="native" /> | 5 | <package id="WixToolset.BalUtil" version="4.0.12" targetFramework="native" /> |
| 6 | <package id="WixToolset.BalUtil" version="4.0.9" targetFramework="native" /> | ||
| 7 | <package id="WixToolset.DUtil" version="4.0.18" targetFramework="native" /> | 6 | <package id="WixToolset.DUtil" version="4.0.18" targetFramework="native" /> |
| 8 | <package id="WixToolset.Mba.Core" version="4.0.9" targetFramework="native" /> | ||
| 9 | </packages> \ No newline at end of file | 7 | </packages> \ No newline at end of file |
diff --git a/src/test/WixToolsetTest.MbaHost/TestManagedBootstrapperApplication.h b/src/test/WixToolsetTest.MbaHost/TestManagedBootstrapperApplication.h index 8142b26c..d2b53718 100644 --- a/src/test/WixToolsetTest.MbaHost/TestManagedBootstrapperApplication.h +++ b/src/test/WixToolsetTest.MbaHost/TestManagedBootstrapperApplication.h | |||
| @@ -8,7 +8,6 @@ namespace MbaHost | |||
| 8 | namespace Native | 8 | namespace Native |
| 9 | { | 9 | { |
| 10 | using namespace System; | 10 | using namespace System; |
| 11 | using namespace WixToolset::BootstrapperCore; | ||
| 12 | using namespace WixToolset::Mba::Core; | 11 | using namespace WixToolset::Mba::Core; |
| 13 | 12 | ||
| 14 | public ref class TestManagedBootstrapperApplication : BootstrapperApplication | 13 | public ref class TestManagedBootstrapperApplication : BootstrapperApplication |
diff --git a/src/test/WixToolsetTest.MbaHost/WixToolset.Mba.Core.config b/src/test/WixToolsetTest.MbaHost/WixToolset.Mba.Host.config index 18bfbfc2..53a3d29e 100644 --- a/src/test/WixToolsetTest.MbaHost/WixToolset.Mba.Core.config +++ b/src/test/WixToolsetTest.MbaHost/WixToolset.Mba.Host.config | |||
| @@ -4,8 +4,8 @@ | |||
| 4 | 4 | ||
| 5 | <configuration> | 5 | <configuration> |
| 6 | <configSections> | 6 | <configSections> |
| 7 | <sectionGroup name="wix.bootstrapper" type="WixToolset.Mba.Core.BootstrapperSectionGroup, WixToolset.Mba.Core"> | 7 | <sectionGroup name="wix.bootstrapper" type="WixToolset.Mba.Host.BootstrapperSectionGroup, WixToolset.Mba.Host"> |
| 8 | <section name="host" type="WixToolset.Mba.Core.HostSection, WixToolset.Mba.Core" /> | 8 | <section name="host" type="WixToolset.Mba.Host.HostSection, WixToolset.Mba.Host" /> |
| 9 | </sectionGroup> | 9 | </sectionGroup> |
| 10 | </configSections> | 10 | </configSections> |
| 11 | <startup useLegacyV2RuntimeActivationPolicy="true"> | 11 | <startup useLegacyV2RuntimeActivationPolicy="true"> |
diff --git a/src/test/WixToolsetTest.MbaHost/WixToolsetTest.MbaHost.vcxproj b/src/test/WixToolsetTest.MbaHost/WixToolsetTest.MbaHost.vcxproj index b82f9194..d8143880 100644 --- a/src/test/WixToolsetTest.MbaHost/WixToolsetTest.MbaHost.vcxproj +++ b/src/test/WixToolsetTest.MbaHost/WixToolsetTest.MbaHost.vcxproj | |||
| @@ -1,8 +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 | <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"> |
| 4 | <Import Project="..\..\..\packages\WixToolset.BalUtil.4.0.9\build\WixToolset.BalUtil.props" Condition="Exists('..\..\..\packages\WixToolset.BalUtil.4.0.9\build\WixToolset.BalUtil.props')" /> | 4 | <Import Project="..\..\..\packages\WixToolset.BalUtil.4.0.12\build\WixToolset.BalUtil.props" Condition="Exists('..\..\..\packages\WixToolset.BalUtil.4.0.12\build\WixToolset.BalUtil.props')" /> |
| 5 | <Import Project="..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.8\build\WixToolset.BootstrapperCore.Native.props" Condition="Exists('..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.8\build\WixToolset.BootstrapperCore.Native.props')" /> | 5 | <Import Project="..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.10\build\WixToolset.BootstrapperCore.Native.props" Condition="Exists('..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.10\build\WixToolset.BootstrapperCore.Native.props')" /> |
| 6 | <Import Project="..\..\..\packages\xunit.core.2.4.0\build\xunit.core.props" Condition="Exists('..\..\..\packages\xunit.core.2.4.0\build\xunit.core.props')" /> | 6 | <Import Project="..\..\..\packages\xunit.core.2.4.0\build\xunit.core.props" Condition="Exists('..\..\..\packages\xunit.core.2.4.0\build\xunit.core.props')" /> |
| 7 | <Import Project="..\..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props" Condition="Exists('..\..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props')" /> | 7 | <Import Project="..\..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props" Condition="Exists('..\..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props')" /> |
| 8 | <ItemGroup Label="ProjectConfigurations"> | 8 | <ItemGroup Label="ProjectConfigurations"> |
| @@ -48,7 +48,10 @@ | |||
| 48 | <ItemGroup> | 48 | <ItemGroup> |
| 49 | <None Include="packages.config" /> | 49 | <None Include="packages.config" /> |
| 50 | <Content Include="BootstrapperApplicationData.xml" CopyToOutputDirectory="PreserveNewest" /> | 50 | <Content Include="BootstrapperApplicationData.xml" CopyToOutputDirectory="PreserveNewest" /> |
| 51 | <Content Include="WixToolset.Mba.Core.config" CopyToOutputDirectory="PreserveNewest" /> | 51 | <Content Include="WixToolset.Mba.Host.config" CopyToOutputDirectory="PreserveNewest" /> |
| 52 | <Content Include="..\..\..\packages\WixToolset.Mba.Core.4.0.12\build\native\x86\mbanative.dll" Condition="Exists('..\..\..\packages\WixToolset.Mba.Core.4.0.12\build\native\x86\mbanative.dll')" CopyToOutputDirectory="PreserveNewest"> | ||
| 53 | <Visible>False</Visible> | ||
| 54 | </Content> | ||
| 52 | </ItemGroup> | 55 | </ItemGroup> |
| 53 | <ItemGroup> | 56 | <ItemGroup> |
| 54 | <Reference Include="System" /> | 57 | <Reference Include="System" /> |
| @@ -65,11 +68,8 @@ | |||
| 65 | <Reference Include="xunit.execution.desktop"> | 68 | <Reference Include="xunit.execution.desktop"> |
| 66 | <HintPath>..\..\..\packages\xunit.extensibility.execution.2.4.0\lib\net452\xunit.execution.desktop.dll</HintPath> | 69 | <HintPath>..\..\..\packages\xunit.extensibility.execution.2.4.0\lib\net452\xunit.execution.desktop.dll</HintPath> |
| 67 | </Reference> | 70 | </Reference> |
| 68 | <Reference Include="WixToolset.BootstrapperCore"> | ||
| 69 | <HintPath>..\..\..\packages\WixToolset.BootstrapperCore.4.0.8\lib\net20\WixToolset.BootstrapperCore.dll</HintPath> | ||
| 70 | </Reference> | ||
| 71 | <Reference Include="WixToolset.Mba.Core"> | 71 | <Reference Include="WixToolset.Mba.Core"> |
| 72 | <HintPath>..\..\..\packages\WixToolset.Mba.Core.4.0.9\lib\net20\WixToolset.Mba.Core.dll</HintPath> | 72 | <HintPath>..\..\..\packages\WixToolset.Mba.Core.4.0.12\lib\net20\WixToolset.Mba.Core.dll</HintPath> |
| 73 | </Reference> | 73 | </Reference> |
| 74 | </ItemGroup> | 74 | </ItemGroup> |
| 75 | <ItemGroup> | 75 | <ItemGroup> |
| @@ -85,8 +85,8 @@ | |||
| 85 | <PropertyGroup> | 85 | <PropertyGroup> |
| 86 | <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText> | 86 | <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText> |
| 87 | </PropertyGroup> | 87 | </PropertyGroup> |
| 88 | <Error Condition="!Exists('..\..\..\packages\WixToolset.BalUtil.4.0.9\build\WixToolset.BalUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WixToolset.BalUtil.4.0.9\build\WixToolset.BalUtil.props'))" /> | 88 | <Error Condition="!Exists('..\..\..\packages\WixToolset.BalUtil.4.0.12\build\WixToolset.BalUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WixToolset.BalUtil.4.0.12\build\WixToolset.BalUtil.props'))" /> |
| 89 | <Error Condition="!Exists('..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.8\build\WixToolset.BootstrapperCore.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.8\build\WixToolset.BootstrapperCore.Native.props'))" /> | 89 | <Error Condition="!Exists('..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.10\build\WixToolset.BootstrapperCore.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WixToolset.BootstrapperCore.Native.4.0.10\build\WixToolset.BootstrapperCore.Native.props'))" /> |
| 90 | <Error Condition="!Exists('..\..\..\packages\xunit.core.2.4.0\build\xunit.core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\xunit.core.2.4.0\build\xunit.core.props'))" /> | 90 | <Error Condition="!Exists('..\..\..\packages\xunit.core.2.4.0\build\xunit.core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\xunit.core.2.4.0\build\xunit.core.props'))" /> |
| 91 | <Error Condition="!Exists('..\..\..\packages\xunit.core.2.4.0\build\xunit.core.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\xunit.core.2.4.0\build\xunit.core.targets'))" /> | 91 | <Error Condition="!Exists('..\..\..\packages\xunit.core.2.4.0\build\xunit.core.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\xunit.core.2.4.0\build\xunit.core.targets'))" /> |
| 92 | <Error Condition="!Exists('..\..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props'))" /> | 92 | <Error Condition="!Exists('..\..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props'))" /> |
diff --git a/src/test/WixToolsetTest.MbaHost/packages.config b/src/test/WixToolsetTest.MbaHost/packages.config index c0615f19..4e9838f6 100644 --- a/src/test/WixToolsetTest.MbaHost/packages.config +++ b/src/test/WixToolsetTest.MbaHost/packages.config | |||
| @@ -8,9 +8,8 @@ | |||
| 8 | <package id="xunit.extensibility.core" version="2.4.0" targetFramework="net461" /> | 8 | <package id="xunit.extensibility.core" version="2.4.0" targetFramework="net461" /> |
| 9 | <package id="xunit.extensibility.execution" version="2.4.0" targetFramework="net461" /> | 9 | <package id="xunit.extensibility.execution" version="2.4.0" targetFramework="net461" /> |
| 10 | <package id="xunit.runner.visualstudio" version="2.4.0" targetFramework="net461" /> | 10 | <package id="xunit.runner.visualstudio" version="2.4.0" targetFramework="net461" /> |
| 11 | <package id="WixToolset.BalUtil" version="4.0.9" targetFramework="native" /> | 11 | <package id="WixToolset.BalUtil" version="4.0.12" targetFramework="native" /> |
| 12 | <package id="WixToolset.BootstrapperCore" version="4.0.8" targetFramework="net461" /> | 12 | <package id="WixToolset.BootstrapperCore.Native" version="4.0.10" targetFramework="native" /> |
| 13 | <package id="WixToolset.BootstrapperCore.Native" version="4.0.8" targetFramework="native" /> | ||
| 14 | <package id="WixToolset.DUtil" version="4.0.18" targetFramework="native" /> | 13 | <package id="WixToolset.DUtil" version="4.0.18" targetFramework="native" /> |
| 15 | <package id="WixToolset.Mba.Core" version="4.0.9" targetFramework="net461" /> | 14 | <package id="WixToolset.Mba.Core" version="4.0.12" targetFramework="net461" /> |
| 16 | </packages> \ No newline at end of file | 15 | </packages> \ No newline at end of file |
diff --git a/src/wixlib/Mba.wxs b/src/wixlib/Mba.wxs index 05b57100..a99b41d8 100644 --- a/src/wixlib/Mba.wxs +++ b/src/wixlib/Mba.wxs | |||
| @@ -40,8 +40,7 @@ | |||
| 40 | 40 | ||
| 41 | <Fragment> | 41 | <Fragment> |
| 42 | <PayloadGroup Id='Mba'> | 42 | <PayloadGroup Id='Mba'> |
| 43 | <Payload Compressed='yes' SourceFile='WixToolset.BootstrapperCore.dll' /> | 43 | <Payload Compressed='yes' SourceFile='WixToolset.Mba.Host.dll' /> |
| 44 | <Payload Compressed='yes' SourceFile='WixToolset.Mba.Core.dll' /> | ||
| 45 | <Payload Compressed='yes' SourceFile='wixstdba.dll' Name='mbapreq.dll' /> | 44 | <Payload Compressed='yes' SourceFile='wixstdba.dll' Name='mbapreq.dll' /> |
| 46 | </PayloadGroup> | 45 | </PayloadGroup> |
| 47 | </Fragment> | 46 | </Fragment> |
diff --git a/src/wixstdba/packages.config b/src/wixstdba/packages.config index 7c46d4c5..f209d5fb 100644 --- a/src/wixstdba/packages.config +++ b/src/wixstdba/packages.config | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | <?xml version="1.0" encoding="utf-8"?> | 1 | <?xml version="1.0" encoding="utf-8"?> |
| 2 | <packages> | 2 | <packages> |
| 3 | <package id="Nerdbank.GitVersioning" version="2.1.65" targetFramework="native" developmentDependency="true" /> | 3 | <package id="Nerdbank.GitVersioning" version="2.1.65" targetFramework="native" developmentDependency="true" /> |
| 4 | <package id="WixToolset.BootstrapperCore.Native" version="4.0.8" targetFramework="native" /> | 4 | <package id="WixToolset.BootstrapperCore.Native" version="4.0.10" targetFramework="native" /> |
| 5 | <package id="WixToolset.BalUtil" version="4.0.9" targetFramework="native" /> | 5 | <package id="WixToolset.BalUtil" version="4.0.12" targetFramework="native" /> |
| 6 | <package id="WixToolset.DUtil" version="4.0.18" targetFramework="native" /> | 6 | <package id="WixToolset.DUtil" version="4.0.18" targetFramework="native" /> |
| 7 | </packages> \ No newline at end of file | 7 | </packages> \ No newline at end of file |
diff --git a/src/wixstdba/wixstdba.vcxproj b/src/wixstdba/wixstdba.vcxproj index c3d3ede7..b0f767fb 100644 --- a/src/wixstdba/wixstdba.vcxproj +++ b/src/wixstdba/wixstdba.vcxproj | |||
| @@ -2,8 +2,8 @@ | |||
| 2 | <!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. --> | 2 | <!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. --> |
| 3 | 3 | ||
| 4 | <Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> | 4 | <Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> |
| 5 | <Import Project="..\..\packages\WixToolset.BalUtil.4.0.9\build\WixToolset.BalUtil.props" Condition="Exists('..\..\packages\WixToolset.BalUtil.4.0.9\build\WixToolset.BalUtil.props')" /> | 5 | <Import Project="..\..\packages\WixToolset.BalUtil.4.0.12\build\WixToolset.BalUtil.props" Condition="Exists('..\..\packages\WixToolset.BalUtil.4.0.12\build\WixToolset.BalUtil.props')" /> |
| 6 | <Import Project="..\..\packages\WixToolset.BootstrapperCore.Native.4.0.8\build\WixToolset.BootstrapperCore.Native.props" Condition="Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.8\build\WixToolset.BootstrapperCore.Native.props')" /> | 6 | <Import Project="..\..\packages\WixToolset.BootstrapperCore.Native.4.0.10\build\WixToolset.BootstrapperCore.Native.props" Condition="Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.10\build\WixToolset.BootstrapperCore.Native.props')" /> |
| 7 | <Import Project="..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props" Condition="Exists('..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props')" /> | 7 | <Import Project="..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props" Condition="Exists('..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props')" /> |
| 8 | 8 | ||
| 9 | <ItemGroup Label="ProjectConfigurations"> | 9 | <ItemGroup Label="ProjectConfigurations"> |
| @@ -107,8 +107,8 @@ rc.exe -fo "$(OutDir)wixstdba.res" "$(IntDir)wixstdba.messages.rc"</Command> | |||
| 107 | <PropertyGroup> | 107 | <PropertyGroup> |
| 108 | <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText> | 108 | <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText> |
| 109 | </PropertyGroup> | 109 | </PropertyGroup> |
| 110 | <Error Condition="!Exists('..\..\packages\WixToolset.BalUtil.4.0.9\build\WixToolset.BalUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.BalUtil.4.0.9\build\WixToolset.BalUtil.props'))" /> | 110 | <Error Condition="!Exists('..\..\packages\WixToolset.BalUtil.4.0.12\build\WixToolset.BalUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.BalUtil.4.0.12\build\WixToolset.BalUtil.props'))" /> |
| 111 | <Error Condition="!Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.8\build\WixToolset.BootstrapperCore.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.BootstrapperCore.Native.4.0.8\build\WixToolset.BootstrapperCore.Native.props'))" /> | 111 | <Error Condition="!Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.10\build\WixToolset.BootstrapperCore.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.BootstrapperCore.Native.4.0.10\build\WixToolset.BootstrapperCore.Native.props'))" /> |
| 112 | <Error Condition="!Exists('..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props'))" /> | 112 | <Error Condition="!Exists('..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props'))" /> |
| 113 | <Error Condition="!Exists('..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets'))" /> | 113 | <Error Condition="!Exists('..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets'))" /> |
| 114 | </Target> | 114 | </Target> |
