diff --git a/appveyor.yml b/appveyor.yml
index 8d80c6a..522e5af 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -8,7 +8,7 @@ branches:
- master
- develop
-image: Visual Studio 2017
+image: Visual Studio 2019
version: 0.0.0.{build}
configuration: Release
diff --git a/src/Cpp.Build.props b/src/Cpp.Build.props
index 0e00132..44a042c 100644
--- a/src/Cpp.Build.props
+++ b/src/Cpp.Build.props
@@ -8,7 +8,7 @@
$(OutputPath)$(Platform)\
-
+
$([Microsoft.Build.Utilities.ToolLocationHelper]::GetLatestSDKTargetPlatformVersion('Windows', '10.0'))
diff --git a/src/FindLocalWix.props b/src/FindLocalWix.props
index a784e35..1666e4f 100644
--- a/src/FindLocalWix.props
+++ b/src/FindLocalWix.props
@@ -3,6 +3,6 @@
- $(MSBuildThisFileDirectory)..\..\Tools\build\Debug\net461\wix.targets
+ $(MSBuildThisFileDirectory)..\..\Tools\build\Debug\net461\wix.targets
diff --git a/src/ca/dependencyca.vcxproj b/src/ca/dependencyca.vcxproj
index 480a186..c8072f7 100644
--- a/src/ca/dependencyca.vcxproj
+++ b/src/ca/dependencyca.vcxproj
@@ -2,8 +2,8 @@
-
-
+
+
@@ -55,7 +55,7 @@
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}.
-
-
+
+
diff --git a/src/ca/packages.config b/src/ca/packages.config
index ab964d2..4e9403b 100644
--- a/src/ca/packages.config
+++ b/src/ca/packages.config
@@ -1,5 +1,5 @@
-
-
+
+
\ No newline at end of file
diff --git a/src/test/WixToolsetTest.Dependency/WixToolsetTest.Dependency.csproj b/src/test/WixToolsetTest.Dependency/WixToolsetTest.Dependency.csproj
index 342325d..7bedc47 100644
--- a/src/test/WixToolsetTest.Dependency/WixToolsetTest.Dependency.csproj
+++ b/src/test/WixToolsetTest.Dependency/WixToolsetTest.Dependency.csproj
@@ -1,9 +1,9 @@
-
+
- netcoreapp2.1
+ netcoreapp3.1
false
@@ -23,7 +23,10 @@
-
+
+
+
+
@@ -31,8 +34,8 @@
-
-
-
+
+
+
diff --git a/src/wixext/DependencyCompiler.cs b/src/wixext/DependencyCompiler.cs
index f866b58..dafcfb3 100644
--- a/src/wixext/DependencyCompiler.cs
+++ b/src/wixext/DependencyCompiler.cs
@@ -125,10 +125,10 @@ public override void ParseElement(Intermediate intermediate, IntermediateSection
/// Element to process.
/// Extra information about the context in which this element is being parsed.
/// The component key path type if set.
- public override ComponentKeyPath ParsePossibleKeyPathElement(Intermediate intermediate, IntermediateSection section, XElement parentElement, XElement element, IDictionary context)
+ public override IComponentKeyPath ParsePossibleKeyPathElement(Intermediate intermediate, IntermediateSection section, XElement parentElement, XElement element, IDictionary context)
{
SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(parentElement);
- ComponentKeyPath keyPath = null;
+ IComponentKeyPath keyPath = null;
switch (parentElement.Name.LocalName)
{
@@ -223,10 +223,10 @@ private void ParseProviderKeyAttribute(IntermediateSection section, SourceLineNu
/// Explicit key path.
/// The identifier of the parent component or package.
/// The type of key path if set.
- private ComponentKeyPath ParseProvidesElement(Intermediate intermediate, IntermediateSection section, XElement node, PackageType packageType, string parentId)
+ private IComponentKeyPath ParseProvidesElement(Intermediate intermediate, IntermediateSection section, XElement node, PackageType packageType, string parentId)
{
SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node);
- ComponentKeyPath keyPath = null;
+ IComponentKeyPath keyPath = null;
Identifier id = null;
string key = null;
string version = null;
@@ -387,7 +387,10 @@ private ComponentKeyPath ParseProvidesElement(Intermediate intermediate, Interme
// Use the Version registry value and use that as a potential key path.
Identifier idVersion = this.ParseHelper.CreateIdentifier("reg", id.Id, "Version");
- keyPath = new ComponentKeyPath() { Id = idVersion.Id, Explicit = false, Type = ComponentKeyPathType.Registry };
+ keyPath = this.CreateComponentKeyPath();
+ keyPath.Id = idVersion.Id;
+ keyPath.Explicit = false;
+ keyPath.Type = PossibleKeyPathType.Registry;
row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "Registry", idVersion);
row.Set(1, -1);
diff --git a/src/wixext/DependencyWindowsInstallerBackendBinderExtension.cs b/src/wixext/DependencyWindowsInstallerBackendBinderExtension.cs
index 485453a..265fdd4 100644
--- a/src/wixext/DependencyWindowsInstallerBackendBinderExtension.cs
+++ b/src/wixext/DependencyWindowsInstallerBackendBinderExtension.cs
@@ -2,6 +2,7 @@
namespace WixToolset.Dependency
{
+ using System.Collections.Generic;
using System.Linq;
using System.Xml;
using WixToolset.Data.WindowsInstaller;
@@ -11,7 +12,7 @@ public class DependencyWindowsInstallerBackendBinderExtension : BaseWindowsInsta
{
private static readonly TableDefinition[] Tables = LoadTables();
- protected override TableDefinition[] TableDefinitionsForTuples => Tables;
+ public override IEnumerable TableDefinitions => Tables;
private static TableDefinition[] LoadTables()
{
diff --git a/src/wixlib/dependency.wixproj b/src/wixlib/dependency.wixproj
index 6fa70e3..72be9c1 100644
--- a/src/wixlib/dependency.wixproj
+++ b/src/wixlib/dependency.wixproj
@@ -1,7 +1,7 @@
-
+
{58ED0EC8-73F8-4EE1-8664-A53486D38EC8}
@@ -37,7 +37,7 @@
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}.
-
+
diff --git a/src/wixlib/packages.config b/src/wixlib/packages.config
index f3d424e..e1b601f 100644
--- a/src/wixlib/packages.config
+++ b/src/wixlib/packages.config
@@ -1,5 +1,5 @@
-
+
\ No newline at end of file