Skip to content

Commit 17c8ad2

Browse files
Merge pull request #13 from michaelmsonne/michael-addmoreconfigsaves
v. 2.1.0.0
2 parents 3341274 + 09dad9f commit 17c8ad2

84 files changed

Lines changed: 1556 additions & 651 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

CHANGELOG.MD

Lines changed: 28 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,31 @@
1-
## Version 2.0.0.0 (11-09-2025)
1+
## Version 2.1.0.0 (16-12-2025)
2+
3+
### 🆕 New Features
4+
- Export command script (.ps1) feature:
5+
- Supports Windows Certificate Store, PFX, and Azure Trusted Signing modes with per-file signing and exit code checks
6+
- Optional BatchMode for Trusted Signing (single signtool call for multiple files)
7+
8+
### 🔧 Improvements
9+
- Smaller UI updates for better user experience
10+
- Persist Trusted Signing options (Code Signing Account Name and Certificate Profile) between sessions
11+
- Restore last "Files to Sign" list on startup (from tool config)
12+
- Improved error handling and logging for Trusted Signing operations
13+
- Add detailed Trusted Signing diagnostics in logs:
14+
- Log exact SignTool arguments used for the call
15+
- Log resolved and better check for absolute paths for DLIB and DMDF and the current working directory
16+
- Update Trusted Signing tools from 1.0.68 to 1.0.95 and migrate to .NET 8.0 and modernize codebase
17+
- Removed .NET 6.0 dependencies and updated runtime to .NET 8.0 and removed unused assemblies and legacy runtime features.
18+
- Improved performance with optimizations in string and buffer handling
19+
- Pre-flight validation in exported scripts:
20+
- Verifies paths (SignTool, PFX, DLIB) and normalizes input files with Resolve-Path
21+
- Aggregates failures and reports a single error summary
22+
23+
### 🔄 Changed
24+
- Trusted Signing export now creates DMDF JSON on-the-fly and removes it in a finally block
25+
- Exported script header timestamp format changed to "HH:mm:ss dd-MM-yyyy"
26+
- Exported scripts now emit absolute file paths for reliability
27+
28+
## Version 2.0.0.0 (11-09-2025)
229

330
### 🆕 New Features
431
- Added certificate monitoring functionality with new `CertificateMonitor` class and `CertificateStatus` Form

docs/pictures/mainform-menu.png

-4.32 KB
Loading

docs/pictures/mainform.png

-7.78 KB
Loading

docs/pictures/servermanager.png

1.23 KB
Loading

src/AI Setup Project/SignToolGUI Installer.aip

Lines changed: 7 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
2-
<DOCUMENT Type="Advanced Installer" CreateVersion="21.9" version="23.1" PreviousModules="simple" Modules="professional" RootPath="." Language="en" Id="{C91F2B90-326D-4B52-99AE-6996B4FA77F1}">
2+
<DOCUMENT Type="Advanced Installer" CreateVersion="21.9" version="23.3" PreviousModules="simple" Modules="professional" RootPath="." Language="en" Id="{C91F2B90-326D-4B52-99AE-6996B4FA77F1}">
33
<COMPONENT cid="caphyon.advinst.msicomp.MsiPropsComponent">
44
<ROW Property="AI_BITMAP_DISPLAY_MODE" Value="0"/>
55
<ROW Property="AI_PROPPATH_DIR_PERBUILD_Azure.CodeSigning.Dlib.Core.dll" Value="..\SignToolGUI\bin\Release\Tools"/>
@@ -9,23 +9,22 @@
99
<ROW Property="AI_PROPPATH_DIR_PERBUILD_Azure.Core.dll" Value="..\SignToolGUI\bin\Release\Tools"/>
1010
<ROW Property="AI_PROPPATH_DIR_PERBUILD_Azure.Identity.dll" Value="..\SignToolGUI\bin\Release\Tools"/>
1111
<ROW Property="AI_PROPPATH_DIR_PERBUILD_Ijwhost.dll" Value="..\SignToolGUI\bin\Release\Tools"/>
12-
<ROW Property="AI_PROPPATH_DIR_PERBUILD_Microsoft.Bcl.AsyncInterfaces.dll" Value="..\SignToolGUI\bin\Release\Tools"/>
13-
<ROW Property="AI_PROPPATH_DIR_PERBUILD_Microsoft.Bcl.AsyncInterfaces.dll_1" Value="..\..\..\..\..\..\..\..\Program Files\Microsoft Visual Studio\18\Insiders\Common7\IDE\PublicAssemblies"/>
12+
<ROW Property="AI_PROPPATH_DIR_PERBUILD_Microsoft.Bcl.AsyncInterfaces.dll_1" Value="..\SignToolGUI\bin\Release"/>
1413
<ROW Property="AI_PROPPATH_DIR_PERBUILD_Microsoft.Identity.Client.Extensions.Msal.dll" Value="..\SignToolGUI\bin\Release\Tools"/>
1514
<ROW Property="AI_PROPPATH_DIR_PERBUILD_Microsoft.Identity.Client.dll" Value="..\SignToolGUI\bin\Release\Tools"/>
1615
<ROW Property="AI_PROPPATH_DIR_PERBUILD_Microsoft.IdentityModel.Abstractions.dll" Value="..\SignToolGUI\bin\Release\Tools"/>
1716
<ROW Property="AI_PROPPATH_DIR_PERBUILD_SignToolGUI.exe" Value="..\SignToolGUI\bin\Release"/>
1817
<ROW Property="AI_PROPPATH_DIR_PERBUILD_SplitButton.dll" Value="..\SignToolGUI\lib"/>
1918
<ROW Property="AI_PROPPATH_DIR_PERBUILD_System.Buffers.dll" Value="..\..\..\..\..\..\..\..\Program Files\Microsoft Visual Studio\18\Insiders\Common7\IDE\PublicAssemblies"/>
2019
<ROW Property="AI_PROPPATH_DIR_PERBUILD_System.ClientModel.dll" Value="..\SignToolGUI\bin\Release\Tools"/>
21-
<ROW Property="AI_PROPPATH_DIR_PERBUILD_System.IO.Pipelines.dll" Value="..\..\..\..\..\..\..\..\Program Files\Microsoft Visual Studio\18\Insiders\Common7\IDE\PublicAssemblies"/>
20+
<ROW Property="AI_PROPPATH_DIR_PERBUILD_System.IO.Pipelines.dll" Value="..\SignToolGUI\bin\Release"/>
2221
<ROW Property="AI_PROPPATH_DIR_PERBUILD_System.Memory.Data.dll" Value="..\SignToolGUI\bin\Release\Tools"/>
2322
<ROW Property="AI_PROPPATH_DIR_PERBUILD_System.Memory.dll" Value="..\..\..\..\..\..\..\..\Program Files\Microsoft Visual Studio\18\Insiders\Common7\IDE\PublicAssemblies"/>
2423
<ROW Property="AI_PROPPATH_DIR_PERBUILD_System.Numerics.Vectors.dll" Value="..\..\..\..\..\..\..\..\Program Files\Microsoft Visual Studio\18\Insiders\Common7\IDE\PublicAssemblies"/>
2524
<ROW Property="AI_PROPPATH_DIR_PERBUILD_System.Runtime.CompilerServices.Unsafe.dll" Value="..\..\..\..\..\..\..\..\Program Files\Microsoft Visual Studio\18\Insiders\Common7\IDE\PublicAssemblies"/>
2625
<ROW Property="AI_PROPPATH_DIR_PERBUILD_System.Security.Cryptography.ProtectedData.dll" Value="..\SignToolGUI\bin\Release\Tools"/>
27-
<ROW Property="AI_PROPPATH_DIR_PERBUILD_System.Text.Encodings.Web.dll" Value="..\..\..\..\..\..\..\..\Program Files\Microsoft Visual Studio\18\Insiders\Common7\IDE\PublicAssemblies"/>
28-
<ROW Property="AI_PROPPATH_DIR_PERBUILD_System.Text.Json.dll" Value="..\..\..\..\..\..\..\..\Program Files\Microsoft Visual Studio\18\Insiders\Common7\IDE\PublicAssemblies"/>
26+
<ROW Property="AI_PROPPATH_DIR_PERBUILD_System.Text.Encodings.Web.dll" Value="..\SignToolGUI\bin\Release"/>
27+
<ROW Property="AI_PROPPATH_DIR_PERBUILD_System.Text.Json.dll" Value="..\SignToolGUI\bin\Release"/>
2928
<ROW Property="AI_PROPPATH_DIR_PERBUILD_System.Threading.Tasks.Extensions.dll" Value="..\..\..\..\..\..\..\..\Program Files\Microsoft Visual Studio\18\Insiders\Common7\IDE\PublicAssemblies"/>
3029
<ROW Property="AI_PROPPATH_DIR_PERBUILD_concrt140.dll" Value="..\SignToolGUI\bin\Release\Tools"/>
3130
<ROW Property="AI_PROPPATH_DIR_PERBUILD_mfc140.dll" Value="..\SignToolGUI\bin\Release\Tools"/>
@@ -61,7 +60,6 @@
6160
<ROW Property="AI_PROPPATH_FILENAME_PERBUILD_Azure.Core.dll" Value="Azure.Core.dll"/>
6261
<ROW Property="AI_PROPPATH_FILENAME_PERBUILD_Azure.Identity.dll" Value="Azure.Identity.dll"/>
6362
<ROW Property="AI_PROPPATH_FILENAME_PERBUILD_Ijwhost.dll" Value="Ijwhost.dll"/>
64-
<ROW Property="AI_PROPPATH_FILENAME_PERBUILD_Microsoft.Bcl.AsyncInterfaces.dll" Value="Microsoft.Bcl.AsyncInterfaces.dll"/>
6563
<ROW Property="AI_PROPPATH_FILENAME_PERBUILD_Microsoft.Bcl.AsyncInterfaces.dll_1" Value="Microsoft.Bcl.AsyncInterfaces.dll"/>
6664
<ROW Property="AI_PROPPATH_FILENAME_PERBUILD_Microsoft.Identity.Client.Extensions.Msal.dll" Value="Microsoft.Identity.Client.Extensions.Msal.dll"/>
6765
<ROW Property="AI_PROPPATH_FILENAME_PERBUILD_Microsoft.Identity.Client.dll" Value="Microsoft.Identity.Client.dll"/>
@@ -109,10 +107,10 @@
109107
<ROW Property="ALLUSERS" Value="1"/>
110108
<ROW Property="ARPCOMMENTS" Value="This installer database contains the logic and data required to install [|ProductName] v. [|ProductVersion]" ValueLocId="*"/>
111109
<ROW Property="Manufacturer" Value="Michael Morten Sonne"/>
112-
<ROW Property="ProductCode" Value="1033:{540EE35F-296E-4010-821A-EA2FF8FD849E} " Type="16"/>
110+
<ROW Property="ProductCode" Value="1033:{6ECC2200-B6C0-4ADD-8BE8-ED3FEE8F2E44} " Type="16"/>
113111
<ROW Property="ProductLanguage" Value="1033"/>
114112
<ROW Property="ProductName" Value="SignToolGUI"/>
115-
<ROW Property="ProductVersion" Value="2.0.0.0" Options="32"/>
113+
<ROW Property="ProductVersion" Value="2.1.0.0" Options="32"/>
116114
<ROW Property="SecureCustomProperties" Value="OLDPRODUCTS;AI_NEWERPRODUCTFOUND"/>
117115
<ROW Property="UpgradeCode" Value="{6F8F60D8-0325-4FA9-B18A-9EE2702C1232}"/>
118116
<ROW Property="WindowsType9X" MultiBuildValue="DefaultBuild:Windows 9x/ME" ValueLocId="-"/>
@@ -174,7 +172,6 @@
174172
<ROW File="mfc140u.dll" Component_="AI_PROPPATH_FILENAME_PERBUILD_Azure.CodeSigning.Dlib.Core.dll" FileName="[|AI_PROPPATH_FILENAME_PERBUILD_mfc140u.dll]" Attributes="0" SourcePath="&lt;AI_APPPATH_PERBUILD_mfc140u.dll&gt;" SelfReg="false"/>
175173
<ROW File="mfcm140.dll" Component_="AI_PROPPATH_FILENAME_PERBUILD_Azure.CodeSigning.Dlib.Core.dll" FileName="[|AI_PROPPATH_FILENAME_PERBUILD_mfcm140.dll]" Attributes="0" SourcePath="&lt;AI_APPPATH_PERBUILD_mfcm140.dll&gt;" SelfReg="false"/>
176174
<ROW File="mfcm140u.dll" Component_="AI_PROPPATH_FILENAME_PERBUILD_Azure.CodeSigning.Dlib.Core.dll" FileName="[|AI_PROPPATH_FILENAME_PERBUILD_mfcm140u.dll]" Attributes="0" SourcePath="&lt;AI_APPPATH_PERBUILD_mfcm140u.dll&gt;" SelfReg="false"/>
177-
<ROW File="Microsoft.Bcl.AsyncInterfaces.dll" Component_="AI_PROPPATH_FILENAME_PERBUILD_Azure.CodeSigning.Dlib.Core.dll" FileName="MICROS~1.DLL|[|AI_PROPPATH_FILENAME_PERBUILD_Microsoft.Bcl.AsyncInterfaces.dll]" Attributes="0" SourcePath="&lt;AI_APPPATH_PERBUILD_Microsoft.Bcl.AsyncInterfaces.dll&gt;" SelfReg="false"/>
178175
<ROW File="Microsoft.Identity.Client.dll" Component_="AI_PROPPATH_FILENAME_PERBUILD_Azure.CodeSigning.Dlib.Core.dll" FileName="MICROS~2.DLL|[|AI_PROPPATH_FILENAME_PERBUILD_Microsoft.Identity.Client.dll]" Attributes="0" SourcePath="&lt;AI_APPPATH_PERBUILD_Microsoft.Identity.Client.dll&gt;" SelfReg="false"/>
179176
<ROW File="Microsoft.Identity.Client.Extensions.Msal.dll" Component_="AI_PROPPATH_FILENAME_PERBUILD_Azure.CodeSigning.Dlib.Core.dll" FileName="MICROS~3.DLL|[|AI_PROPPATH_FILENAME_PERBUILD_Microsoft.Identity.Client.Extensions.Msal.dll]" Attributes="0" SourcePath="&lt;AI_APPPATH_PERBUILD_Microsoft.Identity.Client.Extensions.Msal.dll&gt;" SelfReg="false"/>
180177
<ROW File="Microsoft.IdentityModel.Abstractions.dll" Component_="AI_PROPPATH_FILENAME_PERBUILD_Azure.CodeSigning.Dlib.Core.dll" FileName="MICROS~4.DLL|[|AI_PROPPATH_FILENAME_PERBUILD_Microsoft.IdentityModel.Abstractions.dll]" Attributes="0" SourcePath="&lt;AI_APPPATH_PERBUILD_Microsoft.IdentityModel.Abstractions.dll&gt;" SelfReg="false"/>
@@ -213,7 +210,6 @@
213210
<ROW Name="AI_APPPATH_PERBUILD_Azure.Core.dll" Path="[|AI_PROPPATH_DIR_PERBUILD_Azure.Core.dll]\[|AI_PROPPATH_FILENAME_PERBUILD_Azure.Core.dll]" Type="2" Content="0"/>
214211
<ROW Name="AI_APPPATH_PERBUILD_Azure.Identity.dll" Path="[|AI_PROPPATH_DIR_PERBUILD_Azure.Identity.dll]\[|AI_PROPPATH_FILENAME_PERBUILD_Azure.Identity.dll]" Type="2" Content="0"/>
215212
<ROW Name="AI_APPPATH_PERBUILD_Ijwhost.dll" Path="[|AI_PROPPATH_DIR_PERBUILD_Ijwhost.dll]\[|AI_PROPPATH_FILENAME_PERBUILD_Ijwhost.dll]" Type="2" Content="0"/>
216-
<ROW Name="AI_APPPATH_PERBUILD_Microsoft.Bcl.AsyncInterfaces.dll" Path="[|AI_PROPPATH_DIR_PERBUILD_Microsoft.Bcl.AsyncInterfaces.dll]\[|AI_PROPPATH_FILENAME_PERBUILD_Microsoft.Bcl.AsyncInterfaces.dll]" Type="2" Content="0"/>
217213
<ROW Name="AI_APPPATH_PERBUILD_Microsoft.Bcl.AsyncInterfaces.dll_1" Path="[|AI_PROPPATH_DIR_PERBUILD_Microsoft.Bcl.AsyncInterfaces.dll_1]\[|AI_PROPPATH_FILENAME_PERBUILD_Microsoft.Bcl.AsyncInterfaces.dll_1]" Type="2" Content="0"/>
218214
<ROW Name="AI_APPPATH_PERBUILD_Microsoft.Identity.Client.Extensions.Msal.dll" Path="[|AI_PROPPATH_DIR_PERBUILD_Microsoft.Identity.Client.Extensions.Msal.dll]\[|AI_PROPPATH_FILENAME_PERBUILD_Microsoft.Identity.Client.Extensions.Msal.dll]" Type="2" Content="0"/>
219215
<ROW Name="AI_APPPATH_PERBUILD_Microsoft.Identity.Client.dll" Path="[|AI_PROPPATH_DIR_PERBUILD_Microsoft.Identity.Client.dll]\[|AI_PROPPATH_FILENAME_PERBUILD_Microsoft.Identity.Client.dll]" Type="2" Content="0"/>
@@ -403,7 +399,6 @@
403399
<ROW ProjectId="{5e3e0028-03ee-4fe0-9a52-4a5ae04b5e0b}" ProjectName="SignToolGUI" OutputGroup="ContentOutput" OutputFile="mfc140u.dll"/>
404400
<ROW ProjectId="{5e3e0028-03ee-4fe0-9a52-4a5ae04b5e0b}" ProjectName="SignToolGUI" OutputGroup="ContentOutput" OutputFile="mfcm140.dll"/>
405401
<ROW ProjectId="{5e3e0028-03ee-4fe0-9a52-4a5ae04b5e0b}" ProjectName="SignToolGUI" OutputGroup="ContentOutput" OutputFile="mfcm140u.dll"/>
406-
<ROW ProjectId="{5e3e0028-03ee-4fe0-9a52-4a5ae04b5e0b}" ProjectName="SignToolGUI" OutputGroup="ContentOutput" OutputFile="Microsoft.Bcl.AsyncInterfaces.dll"/>
407402
<ROW ProjectId="{5e3e0028-03ee-4fe0-9a52-4a5ae04b5e0b}" ProjectName="SignToolGUI" OutputGroup="ContentOutput" OutputFile="Microsoft.Identity.Client.dll"/>
408403
<ROW ProjectId="{5e3e0028-03ee-4fe0-9a52-4a5ae04b5e0b}" ProjectName="SignToolGUI" OutputGroup="ContentOutput" OutputFile="Microsoft.Identity.Client.Extensions.Msal.dll"/>
409404
<ROW ProjectId="{5e3e0028-03ee-4fe0-9a52-4a5ae04b5e0b}" ProjectName="SignToolGUI" OutputGroup="ContentOutput" OutputFile="Microsoft.IdentityModel.Abstractions.dll"/>

0 commit comments

Comments
 (0)