diff options
Diffstat (limited to 'src/WixTestTools/PackageInstaller.cs')
-rw-r--r-- | src/WixTestTools/PackageInstaller.cs | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/WixTestTools/PackageInstaller.cs b/src/WixTestTools/PackageInstaller.cs index 86376b9f..d32f499b 100644 --- a/src/WixTestTools/PackageInstaller.cs +++ b/src/WixTestTools/PackageInstaller.cs | |||
@@ -4,6 +4,10 @@ namespace WixTestTools | |||
4 | { | 4 | { |
5 | using System; | 5 | using System; |
6 | using System.IO; | 6 | using System.IO; |
7 | using System.Linq; | ||
8 | using WixToolset.Data; | ||
9 | using WixToolset.Data.Symbols; | ||
10 | using WixToolset.Data.WindowsInstaller; | ||
7 | using static WixTestTools.MSIExec; | 11 | using static WixTestTools.MSIExec; |
8 | 12 | ||
9 | public partial class PackageInstaller : IDisposable | 13 | public partial class PackageInstaller : IDisposable |
@@ -13,6 +17,16 @@ namespace WixTestTools | |||
13 | this.Package = Path.Combine(testContext.TestDataFolder, $"{filename}.msi"); | 17 | this.Package = Path.Combine(testContext.TestDataFolder, $"{filename}.msi"); |
14 | this.PackagePdb = Path.Combine(testContext.TestDataFolder, $"{filename}.wixpdb"); | 18 | this.PackagePdb = Path.Combine(testContext.TestDataFolder, $"{filename}.wixpdb"); |
15 | this.TestContext = testContext; | 19 | this.TestContext = testContext; |
20 | |||
21 | using var wixOutput = WixOutput.Read(this.PackagePdb); | ||
22 | |||
23 | var intermediate = Intermediate.Load(wixOutput); | ||
24 | var section = intermediate.Sections.Single(); | ||
25 | var platformSummary = section.Symbols.OfType<SummaryInformationSymbol>().Single(s => s.PropertyId == SummaryInformationType.PlatformAndLanguage); | ||
26 | var platformString = platformSummary.Value.Split(new char[] { ';' }, 2)[0]; | ||
27 | this.IsX64 = platformString != "Intel"; | ||
28 | |||
29 | this.WiData = WindowsInstallerData.Load(wixOutput); | ||
16 | } | 30 | } |
17 | 31 | ||
18 | public string Package { get; } | 32 | public string Package { get; } |