Skip to content

Commit

Permalink
Release v1.16.0.0
Browse files Browse the repository at this point in the history
* Add "OS validation" functionality to NSIS bootstrapper
* Issue #962: Add RemotePayloads support for MsuPackage
* Issue #965: Retry strategy for DigitalSignature
* Implemented the most obvious/acceptable static code analysis recommendations
* Added IISCertificate support
* Added `GlobalSuppressions*.cs` files to suppress non-meaningful warnings
* Added support for `IISCertificate` element.
* Added missing `FirewallExtension.ru.wxl` file
* Fixed problem with UninstallFullUI' display icon not being added to all `features`
* "Added LaunchApplicationAction" is extended with support for stock UI
* U-Tests are completed and `BuildSamples` enabled on AppVeyor
* Samples
  - Fixed "UrlReservation" sample
  - Fixed "Release Folder" sample
  - Added `UninstallFullUI.cs` sample
  - Projects are migrated on target v4.6.1
* BuildMultilanguageMsi improvements
  - returns path of the built MSI file
  - prints additional build progress messages in output
  • Loading branch information
oleg.shilo authored and oleg.shilo committed Feb 1, 2021
1 parent e456236 commit b07e3ed
Show file tree
Hide file tree
Showing 21 changed files with 417 additions and 51 deletions.
27 changes: 27 additions & 0 deletions Source/NuGet/MSBuild_SetEnvVar/SetEnvVar.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
using System;
using Microsoft.Build;
using Microsoft.Build.Framework;
using Microsoft.Build.Utilities;

namespace WixSharp.Build
{
public class SetEnvVar : Task
{
[Required]
public string Values { get; set; }

public override bool Execute()
{
string[] vals = Values.Replace(";;", "$(separator)").Split(';');

foreach (string keyValue in vals)
try
{
string[] parts = keyValue.Replace("$(separator)", ";").Split('=');
Environment.SetEnvironmentVariable(parts[0].Trim(), parts[1].Trim());
}
catch { }
return true;
}
}
}
Binary file added Source/NuGet/MSBuild_SetEnvVar/SetEnvVar.dll
Binary file not shown.
10 changes: 10 additions & 0 deletions Source/NuGet/MSBuild_SetEnvVar/readme.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
<Project>

<UsingTask AssemblyFile="C:\Users\osh\Documents\Visual Studio 2013\Projects\ClassLibrary1\SetEnvVar.dll" TaskName="SetEnvVar" />

<Target Name="AfterBuild">
<SetEnvVar Values="PROJECTNAME=$(ProjectName)"/>
<Exec Command="&quot;C:\Users\osh\Documents\Visual Studio 2013\Projects\ClassLibrary1\bin\Debug\script.exe&quot;" />
</Target>

</Project>
38 changes: 25 additions & 13 deletions Source/NuGet/WixSharp/WixSharp.bin.nuspec
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<package xmlns="http://schemas.microsoft.com/packaging/2011/10/nuspec.xsd">
<metadata>
<id>WixSharp.bin</id>
<version>1.15.0.0</version>
<version>1.16.0.0</version>
<title>Wix# (WixSharp) - Binaries</title>
<authors>Oleg Shilo</authors>
<owners>Oleg Shilo</owners>
Expand All @@ -16,18 +16,30 @@ The package contains Wix# binaries only.
In order to use this package you need have WiX Toolset installed.
The package is tested against WIX (Windows Installer Xml) Toolset v3.10 (v3.10.2103.0)</description>
<summary>Wix# (WixSharp) - Binaries</summary>
<releaseNotes>Release v1.15.0.0
* Localization: preserve msi platform settings when settings language with SetPackageLanguages (fixes #939)
* Added LaunchApplicationAction.
* NSIS bootstrapper-spash
- Switched to the stock AdvSplash plugin
- Added support to FadeIn, FadeOut, KeyColor parameters https://nsis.sourceforge.io/Docs/AdvSplash/advsplash.txt
* Forced to use a single "Uninstall/Change" button in the ARP
* Remove duplicated deferred properties.
* Allows the installer to display full UI for the "Uninstall" button in the Control Panel.
* Typo fix ResilientPackageIstallDir -&gt; ResilientPackageInstallDir
* DigitalSignature support has been added to the NsisBootstrapper
* Issue #906: Error in Compiler.BuildMsi when building using cscs.exe but not from Visual Studio</releaseNotes>
<releaseNotes>Release v1.16.0.0

* Add "OS validation" functionality to NSIS bootstrapper
* Issue #962: Add RemotePayloads support for MsuPackage
* Issue #965: Retry strategy for DigitalSignature
* Implemented the most obvious/acceptable static code analysis recommendations
* Added IISCertificate support
* Added `GlobalSuppressions*.cs` files to suppress non-meaningful warnings
* Added support for `IISCertificate` element.
* Added missing `FirewallExtension.ru.wxl` file
* Fixed problem with UninstallFullUI' display icon not being added to all `features`
* "Added LaunchApplicationAction" is extended with support for stock UI
* U-Tests are completed and `BuildSamples` enabled on AppVeyor
* Samples
- Fixed "UrlReservation" sample
- Fixed "Release Folder" sample
- Added `UninstallFullUI.cs` sample
- Projects are migrated on target v4.6.1
* BuildMultilanguageMsi improvements
- returns path of the built MSI file
- prints additional build progress messages in output


</releaseNotes>
<copyright>Copyright (C) 2008-2019 Oleg Shilo</copyright>
<language>en-AU</language>
<tags>C# scripting msi install setup wix</tags>
Expand Down
40 changes: 26 additions & 14 deletions Source/NuGet/WixSharp/WixSharp.lab.nuspec
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
<metadata>
<id>WixSharp.Lab</id>
<version>1.15.0.0</version>
<version>1.16.0.0</version>
<title>Wix# (WixSharp) - Experimantal features</title>
<authors>Oleg Shilo</authors>
<owners>Oleg Shilo</owners>
Expand All @@ -14,18 +14,30 @@
The package contains the sample code for building a simple MSI with the CLR WinForm dialog inserted into UI sequence between InsallDirDlg and VerifyReadyDlg native MSI dialogs. In order to use this package you need have WiX Toolset installed.
The package is tested against WIX (Windows Installer Xml) Toolset v3.10 (v3.10.2103.0)</description>
<summary>Wix# binaries containing experimental features (e.g. native WiX UI support).</summary>
<releaseNotes>Release v1.15.0.0
* Localization: preserve msi platform settings when settings language with SetPackageLanguages (fixes #939)
* Added LaunchApplicationAction.
* NSIS bootstrapper-spash
- Switched to the stock AdvSplash plugin
- Added support to FadeIn, FadeOut, KeyColor parameters https://nsis.sourceforge.io/Docs/AdvSplash/advsplash.txt
* Forced to use a single "Uninstall/Change" button in the ARP
* Remove duplicated deferred properties.
* Allows the installer to display full UI for the "Uninstall" button in the Control Panel.
* Typo fix ResilientPackageIstallDir -&gt; ResilientPackageInstallDir
* DigitalSignature support has been added to the NsisBootstrapper
* Issue #906: Error in Compiler.BuildMsi when building using cscs.exe but not from Visual Studio</releaseNotes>
<releaseNotes>Release v1.16.0.0

* Add "OS validation" functionality to NSIS bootstrapper
* Issue #962: Add RemotePayloads support for MsuPackage
* Issue #965: Retry strategy for DigitalSignature
* Implemented the most obvious/acceptable static code analysis recommendations
* Added IISCertificate support
* Added `GlobalSuppressions*.cs` files to suppress non-meaningful warnings
* Added support for `IISCertificate` element.
* Added missing `FirewallExtension.ru.wxl` file
* Fixed problem with UninstallFullUI' display icon not being added to all `features`
* "Added LaunchApplicationAction" is extended with support for stock UI
* U-Tests are completed and `BuildSamples` enabled on AppVeyor
* Samples
- Fixed "UrlReservation" sample
- Fixed "Release Folder" sample
- Added `UninstallFullUI.cs` sample
- Projects are migrated on target v4.6.1
* BuildMultilanguageMsi improvements
- returns path of the built MSI file
- prints additional build progress messages in output


</releaseNotes>
<copyright>Copyright (C) 2008-2019 Oleg Shilo</copyright>
<language>en-AU</language>
<tags>C# Scripting msi install setup</tags>
Expand All @@ -34,7 +46,7 @@ The package is tested against WIX (Windows Installer Xml) Toolset v3.10 (v3.10.2
<frameworkAssembly assemblyName="System.Drawing" targetFramework="" />
</frameworkAssemblies>
<dependencies>
<dependency id="WixSharp.bin" version="1.15.0.0" />
<dependency id="WixSharp.bin" version="1.16.0.0" />
</dependencies>
</metadata>
<files>
Expand Down
40 changes: 26 additions & 14 deletions Source/NuGet/WixSharp/WixSharp.nuspec
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
<metadata>
<id>WixSharp</id>
<version>1.15.0.0</version>
<version>1.16.0.0</version>
<title>Wix# (WixSharp) - managed interface for WiX</title>
<authors>Oleg Shilo</authors>
<owners>Oleg Shilo</owners>
Expand All @@ -18,23 +18,35 @@ If you need only Wix# binaries you may want to use WixSharp.bin package instead.
In order to use this package you need have WiX Toolset installed.
The package is tested against WIX (Windows Installer Xml) Toolset v3.10 (v3.10.2103.0)</description>
<summary>Wix# (WixSharp) - Binaries</summary>
<releaseNotes>Release v1.15.0.0
* Localization: preserve msi platform settings when settings language with SetPackageLanguages (fixes #939)
* Added LaunchApplicationAction.
* NSIS bootstrapper-spash
- Switched to the stock AdvSplash plugin
- Added support to FadeIn, FadeOut, KeyColor parameters https://nsis.sourceforge.io/Docs/AdvSplash/advsplash.txt
* Forced to use a single "Uninstall/Change" button in the ARP
* Remove duplicated deferred properties.
* Allows the installer to display full UI for the "Uninstall" button in the Control Panel.
* Typo fix ResilientPackageIstallDir -&gt; ResilientPackageInstallDir
* DigitalSignature support has been added to the NsisBootstrapper
* Issue #906: Error in Compiler.BuildMsi when building using cscs.exe but not from Visual Studio</releaseNotes>
<releaseNotes>Release v1.16.0.0

* Add "OS validation" functionality to NSIS bootstrapper
* Issue #962: Add RemotePayloads support for MsuPackage
* Issue #965: Retry strategy for DigitalSignature
* Implemented the most obvious/acceptable static code analysis recommendations
* Added IISCertificate support
* Added `GlobalSuppressions*.cs` files to suppress non-meaningful warnings
* Added support for `IISCertificate` element.
* Added missing `FirewallExtension.ru.wxl` file
* Fixed problem with UninstallFullUI' display icon not being added to all `features`
* "Added LaunchApplicationAction" is extended with support for stock UI
* U-Tests are completed and `BuildSamples` enabled on AppVeyor
* Samples
- Fixed "UrlReservation" sample
- Fixed "Release Folder" sample
- Added `UninstallFullUI.cs` sample
- Projects are migrated on target v4.6.1
* BuildMultilanguageMsi improvements
- returns path of the built MSI file
- prints additional build progress messages in output


</releaseNotes>
<copyright>Copyright (C) 2008-2019 Oleg Shilo</copyright>
<language>en-AU</language>
<tags>C# scripting msi install setup wix</tags>
<dependencies>
<dependency id="WixSharp.bin" version="1.15.0.0" />
<dependency id="WixSharp.bin" version="1.16.0.0" />
</dependencies>
</metadata>
<files>
Expand Down
Binary file added Source/bin/.build/7z.exe
Binary file not shown.
74 changes: 74 additions & 0 deletions Source/bin/package.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
//css_args /ac
using System.Diagnostics;
using System.Text;
using System.Reflection;
// using System.Windows.Forms;
using System.IO;
using System.Linq;
using System;

void main()
{
string version = Assembly.LoadFrom(@"WixSharp\WixSharp.dll").GetName().Version.ToString();

Directory.GetDirectories(@"WixSharp\Samples", "*", SearchOption.AllDirectories)
.Where(dir =>
{
return !dir.ToLower().Contains("sourcebasedir") && !dir.ToLower().Contains("wildcard files") &&
(dir.EndsWith(@"bin\debug", StringComparison.OrdinalIgnoreCase) ||
dir.EndsWith(@"bin\release", StringComparison.OrdinalIgnoreCase) ||
dir.EndsWith(@"obj\debug", StringComparison.OrdinalIgnoreCase) ||
dir.EndsWith(@"obj\release", StringComparison.OrdinalIgnoreCase));
})
.ToList()
.ForEach(dir =>
{
Console.WriteLine("del dir: " + dir);
Directory.Delete(dir, true);
});

var exclusions = "echo.exe;registrator.exe;registrator.exe;myapp.exe;some.exe;cscs.exe".Split(';');
bool deleted = false;

var filesToDelete = Directory.GetFiles(@"WixSharp\Samples", "*.exe", SearchOption.AllDirectories)
.Where(x => !Path.GetDirectoryName(x).ToLower().EndsWith(@"wix_bin\bin"))
.Where(x => !Path.GetDirectoryName(x).ToLower().EndsWith("appfiles"))
.Where(x => !exclusions.Contains(Path.GetFileName(x.ToLower())))
.ToList();

if (filesToDelete.Any())
Console.WriteLine("!!!!!!!!!!!!! SOME FILES WILL BE DELETED !!!!!!!!! ");

filesToDelete.ForEach(exe =>
{
Console.WriteLine("!!!!!!!!!!!!! " + exe);
File.Delete(exe);
deleted = true;
});

string outputFile = Path.GetFullPath("WixSharp." + version + ".7z");
string inputDir = Path.GetFullPath("WixSharp");

string app = Path.GetFullPath(@".\.build\7z.exe");
string args = @"a -r -t7z " + outputFile + " " + inputDir + @"\*.*";

run(app, args);
}

void run(string app, string args)
{
var p = new Process();
p.StartInfo.FileName = app;
p.StartInfo.Arguments = args;
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.CreateNoWindow = true;
p.Start();

string line = null;

while (null != (line = p.StandardOutput.ReadLine()))
Console.WriteLine(line);

p.WaitForExit();
}
3 changes: 0 additions & 3 deletions Source/src/WixSharp.Samples/VSProjects/testpad.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -63,9 +63,6 @@
<SpecificVersion>False</SpecificVersion>
<HintPath>..\Wix_bin\SDK\Microsoft.Deployment.WindowsInstaller.dll</HintPath>
</Reference>
<Reference Include="Newtonsoft.Json, Version=12.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
<HintPath>..\..\packages\Newtonsoft.Json.12.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Core">
<RequiredTargetFramework>3.5</RequiredTargetFramework>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
Expand All @@ -10,7 +10,7 @@
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>ConsoleApplication1</RootNamespace>
<AssemblyName>setup</AssemblyName>
<TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<FileUpgradeFlags>
</FileUpgradeFlags>
Expand All @@ -30,6 +30,7 @@
<UseVSHostingProcess>false</UseVSHostingProcess>
<AllowUnsafeBlocks>false</AllowUnsafeBlocks>
<CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
Expand All @@ -41,6 +42,7 @@
<UseVSHostingProcess>false</UseVSHostingProcess>
<AllowUnsafeBlocks>false</AllowUnsafeBlocks>
<CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<ItemGroup>
<Reference Include="Microsoft.Deployment.WindowsInstaller, Version=3.0.0.0, Culture=neutral, PublicKeyToken=ce35f76fcda82bad, processorArchitecture=MSIL">
Expand Down Expand Up @@ -99,6 +101,9 @@
<DependentUpon>ProductActivationForm.cs</DependentUpon>
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<None Include="app.config" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<PropertyGroup>
<PostBuildEvent>REM "$(TargetPath)"</PostBuildEvent>
Expand Down
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file modified Source/src/WixSharp.Samples/WixSharp.Lab.dll
Binary file not shown.
Binary file modified Source/src/WixSharp.Samples/WixSharp.Msi.dll
Binary file not shown.
Binary file modified Source/src/WixSharp.Samples/WixSharp.UI.dll
Binary file not shown.
Binary file modified Source/src/WixSharp.Samples/WixSharp.dll
Binary file not shown.
Loading

0 comments on commit b07e3ed

Please sign in to comment.