1
0
Fork 0

feat(installer): add Inno Setup installer and fix Shell C++ DLL docx leakage

- Introduce Inno Setup standard EXE installer (Everything2Everything-Setup-x64.exe) for zero-friction end-user installation without certificate trust friction
- Fix hardcoded .docx recommendation in Everything2Everything.Shell dllmain.cpp
- Improve MSIX Install.cmd and Install.ps1 with robust privilege elevation and path parsing
- Integrate Inno Setup into tools/Publish-Release.ps1 pipeline and release upload
- Add automated regression tests for installer and packaging integrity
This commit is contained in:
Yun Chan 2026-09-03 20:57:26 +09:00
parent 28624c386e
commit 4a4f2b78e4
6 changed files with 176 additions and 64 deletions

View file

@ -78,4 +78,18 @@ public class PackagingSignatureTests
Assert.Contains("powershell", content, StringComparison.OrdinalIgnoreCase);
Assert.Contains("TrustedPeople", content, StringComparison.OrdinalIgnoreCase);
}
[Fact]
public void InnoSetupScript_Exists_And_Configures_Lowest_Privileges_And_ContextMenu()
{
var repoRoot = FindRepoRoot();
var issPath = Path.Combine(repoRoot, "packaging", "Everything2Everything.iss");
Assert.True(File.Exists(issPath), "packaging/Everything2Everything.iss must exist for standard EXE installer");
var content = File.ReadAllText(issPath);
Assert.Contains("PrivilegesRequired=lowest", content);
Assert.Contains("PrivilegesRequiredOverridesAllowed=dialog commandline", content);
Assert.Contains("register", content);
Assert.Contains("unregister", content);
}
}