init
This commit is contained in:
@@ -0,0 +1,38 @@
|
||||
---
|
||||
source_files:
|
||||
- DataPRO/Modules/InstallerCustomActions/RegAddProductCode/Properties/AssemblyInfo.cs
|
||||
- DataPRO/Modules/InstallerCustomActions/RegAddProductCode/Properties/Settings.Designer.cs
|
||||
generated_at: "2026-04-17T16:13:20.075439+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "250803c72b83ea88"
|
||||
---
|
||||
|
||||
# Properties
|
||||
|
||||
### Purpose
|
||||
This module provides assembly metadata and application-scoped configuration settings for the `RegAddProductCode` custom installer action. It exists to configure Windows Installer policy-related registry operations, specifically for managing secure repair whitelisting. The settings defined here are used during installation to register product codes that allow the application to be repaired without elevated privileges.
|
||||
|
||||
### Public Interface
|
||||
- **`Settings` class** (internal sealed, partial) - Auto-generated settings class inheriting from `System.Configuration.ApplicationSettingsBase`.
|
||||
- `static Settings Default { get; }` - Returns the synchronized singleton instance of settings.
|
||||
- `string InstallerKey { get; }` - Returns `"SOFTWARE\\Policies\\Microsoft\\Windows\\Installer"`. Application-scoped setting.
|
||||
- `string MissingKey { get; }` - Returns `"No key at {0}"`. Format string template for missing key messages. Application-scoped setting.
|
||||
- `string ProductCode { get; }` - Returns `"{C4889149-0CAF-44C1-B226-8F6E73684DF4}"`. The GUID product code for this product. Application-scoped setting.
|
||||
- `string SecureRepairPolicy { get; }` - Returns `"SecureRepairPolicy"`. Application-scoped setting.
|
||||
- `string SecureRepairWhitelistKey { get; }` - Returns `"SOFTWARE\\Policies\\Microsoft\\Windows\\Installer\\SecureRepairWhitelist"`. Application-scoped setting.
|
||||
|
||||
### Invariants
|
||||
- All settings are application-scoped and read-only at runtime.
|
||||
- The `ProductCode` GUID must be a valid Windows Installer product code format.
|
||||
- Registry key paths use double backslash escaping for .NET string literals.
|
||||
|
||||
### Dependencies
|
||||
- **Depends on**: `System.Configuration.ApplicationSettingsBase`, `System.Runtime.CompilerServices`, `System.Runtime.InteropServices`.
|
||||
- **Depended on by**: The parent `RegAddProductCode` installer custom action module (inferred from namespace).
|
||||
|
||||
### Gotchas
|
||||
- The `MissingKey` setting contains a format placeholder `{0}` suggesting it's intended for `string.Format()` usage, but the consuming code is not visible in this module.
|
||||
- The `ProductCode` GUID `{C4889149-0CAF-44C1-B226-8F6E73684DF4}` is hardcoded; if the actual product code changes, this setting must be updated manually.
|
||||
|
||||
---
|
||||
Reference in New Issue
Block a user