Skip to content

Commit

Permalink
Now targeting .NET Framework 4.6.2 instead of .NET Framework 4.5.
Browse files Browse the repository at this point in the history
  • Loading branch information
ravibpatel committed May 31, 2024
1 parent efba394 commit 9e4587d
Show file tree
Hide file tree
Showing 9 changed files with 64 additions and 58 deletions.
16 changes: 8 additions & 8 deletions AutoUpdater.NET/AutoUpdater.NET.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -3,18 +3,18 @@
<PropertyGroup>
<ProjectGuid>{FB9E7E6B-B19F-4F37-A708-2996190CEF13}</ProjectGuid>
<OutputType>library</OutputType>
<TargetFrameworks>net45;netcoreapp3.1;net5.0-windows;net6.0-windows;net7.0-windows;net8.0-windows</TargetFrameworks>
<TargetFrameworks>net462;netcoreapp3.1;net5.0-windows;net6.0-windows;net7.0-windows;net8.0-windows</TargetFrameworks>
<UseWindowsForms>true</UseWindowsForms>
<UseWpf>true</UseWpf>
<RootNamespace>AutoUpdaterDotNET</RootNamespace>
<AssemblyTitle>AutoUpdater.NET</AssemblyTitle>
<Company>RBSoft</Company>
<Product>AutoUpdater.NET</Product>
<Copyright>Copyright © 2012-2024 RBSoft</Copyright>
<Version>1.8.7.0</Version>
<AssemblyVersion>1.8.7.0</AssemblyVersion>
<FileVersion>1.8.7.0</FileVersion>
<PackageVersion>1.8.7.0</PackageVersion>
<Version>1.9.0.0</Version>
<AssemblyVersion>1.9.0.0</AssemblyVersion>
<FileVersion>1.9.0.0</FileVersion>
<PackageVersion>1.9.0.0</PackageVersion>
<SignAssembly>true</SignAssembly>
<AssemblyOriginatorKeyFile>AutoUpdater.NET.snk</AssemblyOriginatorKeyFile>
<NeutralLanguage>en</NeutralLanguage>
Expand All @@ -37,7 +37,7 @@
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
<DebugType>full</DebugType>
</PropertyGroup>
<ItemGroup Condition=" '$(TargetFramework)' == 'net45' ">
<ItemGroup Condition=" '$(TargetFramework)' == 'net462' ">
<Reference Include="System"/>
<Reference Include="System.Data"/>
<Reference Include="System.Drawing"/>
Expand All @@ -47,10 +47,10 @@
<Reference Include="PresentationFramework"/>
<Reference Include="System.Xaml"/>
<Reference Include="System.Runtime.Serialization"/>
<PackageReference Include="Resource.Embedder" Version="1.2.8" PrivateAssets="All"/>
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.Web.WebView2" Version="1.0.2478.35"/>
<PackageReference Include="Microsoft.Web.WebView2" Version="1.0.2535.41"/>
<PackageReference Include="Resource.Embedder" Version="2.2.0"/>
</ItemGroup>
<ItemGroup>
<EmbeddedResource Update="DownloadUpdateDialog.ar.resx">
Expand Down
29 changes: 19 additions & 10 deletions AutoUpdater.NET/DownloadUpdateDialog.cs
Original file line number Diff line number Diff line change
Expand Up @@ -227,10 +227,10 @@ private void WebClientOnDownloadFileCompleted(object sender, AsyncCompletedEvent
{
processStartInfo = new ProcessStartInfo
{
FileName = "msiexec"
FileName = "msiexec",
Arguments = $"/i \"{tempPath}\""
};

processStartInfo.Arguments = $"/i \"{tempPath}\"";
if (!string.IsNullOrEmpty(installerArgs))
{
processStartInfo.Arguments += $" {installerArgs}";
Expand Down Expand Up @@ -287,20 +287,29 @@ private static string BytesToString(long byteCount)

private static void CompareChecksum(string fileName, CheckSum checksum)
{
using var hashAlgorithm =
HashAlgorithm.Create(
string.IsNullOrEmpty(checksum.HashingAlgorithm) ? "MD5" : checksum.HashingAlgorithm);
using FileStream stream = File.OpenRead(fileName);

if (hashAlgorithm == null)
HashAlgorithm hashAlgorithm;
if (string.IsNullOrEmpty(checksum.HashingAlgorithm) || checksum.HashingAlgorithm == "MD5")
{
throw new Exception(Resources.HashAlgorithmNotSupportedMessage);
hashAlgorithm = MD5.Create();
}
else
{
hashAlgorithm = checksum.HashingAlgorithm switch
{
"SHA1" => SHA1.Create(),
"SHA256" => SHA256.Create(),
"SHA384" => SHA384.Create(),
"SHA512" => SHA512.Create(),
_ => throw new NotSupportedException(Resources.HashAlgorithmNotSupportedMessage)
};
}

using FileStream stream = File.OpenRead(fileName);

byte[] hash = hashAlgorithm.ComputeHash(stream);
string fileChecksum = BitConverter.ToString(hash).Replace("-", string.Empty).ToLowerInvariant();

if (fileChecksum == checksum.Value.ToLower())
if (fileChecksum.Equals(checksum.Value, StringComparison.OrdinalIgnoreCase))
{
return;
}
Expand Down
38 changes: 19 additions & 19 deletions AutoUpdater.NET/build/Autoupdater.NET.Official.nuspec
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<package xmlns="http:https://schemas.microsoft.com/packaging/2013/05/nuspec.xsd">
<metadata>
<id>Autoupdater.NET.Official</id>
<version>1.8.7.0</version>
<version>1.9.0.0</version>
<title>AutoUpdater.NET</title>
<authors>rbsoft</authors>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
Expand All @@ -17,23 +17,23 @@
<copyright>Copyright © 2012-2024 RBSoft</copyright>
<tags>autoupdate updater c# vb wpf winforms</tags>
<dependencies>
<group targetFramework=".NETFramework4.5">
<dependency id="Microsoft.Web.WebView2" version="1.0.2478.35" exclude="Build,Analyzers"/>
<group targetFramework=".NETFramework4.6.2">
<dependency id="Microsoft.Web.WebView2" version="1.0.2535.41" exclude="Build,Analyzers"/>
</group>
<group targetFramework=".NETCoreApp3.1">
<dependency id="Microsoft.Web.WebView2" version="1.0.2478.35" exclude="Build,Analyzers"/>
<dependency id="Microsoft.Web.WebView2" version="1.0.2535.41" exclude="Build,Analyzers"/>
</group>
<group targetFramework="net5.0-windows7.0">
<dependency id="Microsoft.Web.WebView2" version="1.0.2478.35" exclude="Build,Analyzers"/>
<dependency id="Microsoft.Web.WebView2" version="1.0.2535.41" exclude="Build,Analyzers"/>
</group>
<group targetFramework="net6.0-windows7.0">
<dependency id="Microsoft.Web.WebView2" version="1.0.2478.35" exclude="Build,Analyzers"/>
<dependency id="Microsoft.Web.WebView2" version="1.0.2535.41" exclude="Build,Analyzers"/>
</group>
<group targetFramework="net7.0-windows7.0">
<dependency id="Microsoft.Web.WebView2" version="1.0.2478.35" exclude="Build,Analyzers"/>
<dependency id="Microsoft.Web.WebView2" version="1.0.2535.41" exclude="Build,Analyzers"/>
</group>
<group targetFramework="net8.0-windows7.0">
<dependency id="Microsoft.Web.WebView2" version="1.0.2478.35" exclude="Build,Analyzers"/>
<dependency id="Microsoft.Web.WebView2" version="1.0.2535.41" exclude="Build,Analyzers"/>
</group>
</dependencies>
<frameworkReferences>
Expand All @@ -52,23 +52,23 @@
<group targetFramework="net8.0-windows7.0">
<frameworkReference name="Microsoft.WindowsDesktop.App"/>
</group>
<group targetFramework=".NETFramework4.5"/>
<group targetFramework=".NETFramework4.6.2"/>
</frameworkReferences>
<frameworkAssemblies>
<frameworkAssembly assemblyName="PresentationFramework" targetFramework=".NETFramework4.5"/>
<frameworkAssembly assemblyName="System.Data" targetFramework=".NETFramework4.5"/>
<frameworkAssembly assemblyName="System" targetFramework=".NETFramework4.5"/>
<frameworkAssembly assemblyName="System.Drawing" targetFramework=".NETFramework4.5"/>
<frameworkAssembly assemblyName="System.Runtime.Serialization" targetFramework=".NETFramework4.5"/>
<frameworkAssembly assemblyName="System.Windows.Forms" targetFramework=".NETFramework4.5"/>
<frameworkAssembly assemblyName="System.Xaml" targetFramework=".NETFramework4.5"/>
<frameworkAssembly assemblyName="System.Xml" targetFramework=".NETFramework4.5"/>
<frameworkAssembly assemblyName="WindowsBase" targetFramework=".NETFramework4.5"/>
<frameworkAssembly assemblyName="PresentationFramework" targetFramework=".NETFramework4.6.2"/>
<frameworkAssembly assemblyName="System.Data" targetFramework=".NETFramework4.6.2"/>
<frameworkAssembly assemblyName="System" targetFramework=".NETFramework4.6.2"/>
<frameworkAssembly assemblyName="System.Drawing" targetFramework=".NETFramework4.6.2"/>
<frameworkAssembly assemblyName="System.Runtime.Serialization" targetFramework=".NETFramework4.6.2"/>
<frameworkAssembly assemblyName="System.Windows.Forms" targetFramework=".NETFramework4.6.2"/>
<frameworkAssembly assemblyName="System.Xaml" targetFramework=".NETFramework4.6.2"/>
<frameworkAssembly assemblyName="System.Xml" targetFramework=".NETFramework4.6.2"/>
<frameworkAssembly assemblyName="WindowsBase" targetFramework=".NETFramework4.6.2"/>
</frameworkAssemblies>
</metadata>
<files>
<file src="..\..\README.md" target="docs\"/>
<file src="lib\net45\**\*.*" target="lib\net45\"/>
<file src="lib\net462\**\*.*" target="lib\net462\"/>
<file src="lib\netcoreapp3.1\**\*.*" target="lib\netcoreapp3.1\"/>
<file src="lib\net5.0-windows7.0\**\*.*" target="lib\net5.0-windows7.0\"/>
<file src="lib\net6.0-windows7.0\**\*.*" target="lib\net6.0-windows7.0\"/>
Expand Down
2 changes: 1 addition & 1 deletion AutoUpdaterTest/AutoUpdaterTest.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@
</EmbeddedResource>
</ItemGroup>

<ItemGroup Condition=" '$(TargetFramework)' == 'net45' ">
<ItemGroup Condition=" '$(TargetFramework)' == 'net462' ">
<Reference Include="System.Core"/>
</ItemGroup>
</Project>
7 changes: 2 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ PM> Install-Package Autoupdater.NET.Official

## Supported .NET versions

* .NET Framework 4.5 or above
* .NET Framework 4.6.2 or above
* .NET Core 3.1
* .NET 5.0 or above

Expand Down Expand Up @@ -565,7 +565,7 @@ You can follow below steps to build the project on your local development enviro
Before

```xml
<TargetFrameworks>net45;netcoreapp3.1;net5.0-windows</TargetFrameworks>
<TargetFrameworks>net462;netcoreapp3.1;net5.0-windows</TargetFrameworks>
```

After
Expand All @@ -578,6 +578,3 @@ You can follow below steps to build the project on your local development enviro
for .NET Core 3.1 or above, you have to use publish command instead of build as
shown [here](https://learn.microsoft.com/en-us/dotnet/core/tutorials/publishing-with-visual-studio?pivots=dotnet-7-0)
and copy the resulting executable to "AutoUpdater.NET/Resources" folder.
* VS2022 doesn't allow building .NET Framework 4.5 by default, so if you are using it then you can just change it to any
supported .NET version, or you have to follow steps from [here](https://stackoverflow.com/a/70109092/1273550) to use
.NET Framework 4.5.
2 changes: 1 addition & 1 deletion ZipExtractor/FormMain.cs
Original file line number Diff line number Diff line change
Expand Up @@ -253,7 +253,7 @@ private void FormMain_Shown(object sender, EventArgs e)
_backgroundWorker.ProgressChanged += (_, eventArgs) =>
{
progressBar.Value = eventArgs.ProgressPercentage;
textBoxInformation.Text = eventArgs.UserState?.ToString();
textBoxInformation.Text = eventArgs.UserState?.ToString() ?? string.Empty;
if (textBoxInformation.Text == null)
{
return;
Expand Down
14 changes: 7 additions & 7 deletions ZipExtractor/ZipExtractor.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -3,16 +3,16 @@
<PropertyGroup>
<ProjectGuid>{91DE558C-6DB8-429B-A069-C0491DCFF15B}</ProjectGuid>
<OutputType>WinExe</OutputType>
<TargetFrameworks>net45;netcoreapp3.1;net5.0-windows;net6.0-windows;net7.0-windows;net8.0-windows</TargetFrameworks>
<TargetFrameworks>net462;netcoreapp3.1;net5.0-windows;net6.0-windows;net7.0-windows;net8.0-windows</TargetFrameworks>
<UseWindowsForms>true</UseWindowsForms>
<AssemblyTitle>ZipExtractor</AssemblyTitle>
<Company>RBSoft</Company>
<Product>ZipExtractor</Product>
<Copyright>Copyright © 2012-2024 RBSoft</Copyright>
<Version>1.4.1.0</Version>
<AssemblyVersion>1.4.1.0</AssemblyVersion>
<FileVersion>1.4.1.0</FileVersion>
<ApplicationVersion>1.4.1.0</ApplicationVersion>
<Version>1.5.0.0</Version>
<AssemblyVersion>1.5.0.0</AssemblyVersion>
<FileVersion>1.5.0.0</FileVersion>
<ApplicationVersion>1.5.0.0</ApplicationVersion>
<ApplicationIcon>ZipExtractor.ico</ApplicationIcon>
<ApplicationManifest>app.manifest</ApplicationManifest>
<SignAssembly>true</SignAssembly>
Expand All @@ -21,7 +21,7 @@
<LangVersion>default</LangVersion>
<IsPackable>false</IsPackable>
</PropertyGroup>
<PropertyGroup Condition=" '$(TargetFramework)' != 'net45' ">
<PropertyGroup Condition=" '$(TargetFramework)' != 'net462' ">
<RuntimeIdentifiers>win-x86;win-x64</RuntimeIdentifiers>
<PublishSingleFile>true</PublishSingleFile>
<SelfContained>false</SelfContained>
Expand All @@ -39,7 +39,7 @@
<DebugType>none</DebugType>
<DebugSymbols>false</DebugSymbols>
</PropertyGroup>
<ItemGroup Condition=" '$(TargetFramework)' == 'net45' ">
<ItemGroup Condition=" '$(TargetFramework)' == 'net462' ">
<Reference Include="System.IO.Compression"/>
<Reference Include="System.IO.Compression.FileSystem"/>
<Reference Include="System.Windows.Forms"/>
Expand Down
8 changes: 4 additions & 4 deletions appveyor.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
version: 1.8.7.{build}
version: 1.9.0.{build}
environment:
my_version: 1.8.7
my_version: 1.9.0
my_secret:
secure: vbPRaZLQYpGPr4BrZZ4p6TofpSZMud+FKtlpqjgO8aA=
skip_branch_with_pr: true
Expand All @@ -12,8 +12,8 @@ install:
- cmd: nuget restore
- secure-file\tools\secure-file -decrypt "c:\projects\AutoUpdater.NET\ZipExtractor\ZipExtractor.snk.enc" -secret %my_secret%
- secure-file\tools\secure-file -decrypt "c:\projects\AutoUpdater.NET\AutoUpdater.NET\AutoUpdater.NET.snk.enc" -secret %my_secret%
- msbuild "c:\projects\AutoUpdater.NET\ZipExtractor\ZipExtractor.csproj" /p:TargetFramework=net45;Configuration=Release /verbosity:minimal /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll"
- msbuild "c:\projects\AutoUpdater.NET\AutoUpdater.NET\AutoUpdater.NET.csproj" /p:OutputPath=build\lib\net45;TargetFramework=net45;Configuration=Release /verbosity:minimal /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll"
- msbuild "c:\projects\AutoUpdater.NET\ZipExtractor\ZipExtractor.csproj" /p:TargetFramework=net462;Configuration=Release /verbosity:minimal /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll"
- msbuild "c:\projects\AutoUpdater.NET\AutoUpdater.NET\AutoUpdater.NET.csproj" /p:OutputPath=build\lib\net462;TargetFramework=net462;Configuration=Release /verbosity:minimal /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll"
- dotnet publish --configuration Release --framework netcoreapp3.1 "c:\projects\AutoUpdater.NET\ZipExtractor\ZipExtractor.csproj" --output "c:\projects\AutoUpdater.NET\AutoUpdater.NET\Resources"
- dotnet publish --configuration Release --framework netcoreapp3.1 "c:\projects\AutoUpdater.NET\AutoUpdater.NET\AutoUpdater.NET.csproj" --output "c:\projects\AutoUpdater.NET\AutoUpdater.NET\build\lib\netcoreapp3.1"
- dotnet publish --configuration Release --framework net5.0-windows "c:\projects\AutoUpdater.NET\ZipExtractor\ZipExtractor.csproj" --output "c:\projects\AutoUpdater.NET\AutoUpdater.NET\Resources"
Expand Down
6 changes: 3 additions & 3 deletions build.bat
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
:: .NET Framework 4.5
msbuild "ZipExtractor\ZipExtractor.csproj" /p:TargetFramework=net45;Configuration=Release /verbosity:minimal
msbuild "AutoUpdater.NET\AutoUpdater.NET.csproj" /p:OutputPath=build\lib\net45;TargetFramework=net45;Configuration=Release /verbosity:minimal
:: .NET Framework 4.6.2
msbuild "ZipExtractor\ZipExtractor.csproj" /p:TargetFramework=net462;Configuration=Release /verbosity:minimal
msbuild "AutoUpdater.NET\AutoUpdater.NET.csproj" /p:OutputPath=build\lib\net462;TargetFramework=net462;Configuration=Release /verbosity:minimal

:: .NET Core 3.1
dotnet publish --configuration Release --framework netcoreapp3.1 "ZipExtractor\ZipExtractor.csproj" --output "AutoUpdater.NET\Resources"
Expand Down

0 comments on commit 9e4587d

Please sign in to comment.