WinSparkle stores update-checking preferences and some internal state in the
Software\<VENDOR>\<APPNAME>\WinSparkle registry key. You can change the
location with
win_sparkle_set_registry_path().
WinSparkle writes and deletes values under HKEY_CURRENT_USER. When reading,
it tries HKEY_CURRENT_USER first and then HKEY_LOCAL_MACHINE, making it
possible to set defaults globally.
Prefer the public C API where possible. For update-checking preferences, use the functions on Checking for Updates.
User-visible settings
| Key | C type | Description |
|---|---|---|
CheckForUpdates |
bool |
Whether WinSparkle should check for updates. See win_sparkle_set_automatic_check_for_updates() and win_sparkle_get_automatic_check_for_updates(). |
LastCheckTime |
time_t |
Time of the last update check. See win_sparkle_get_last_check_time(). |
UpdateInterval |
int |
Check interval in seconds, with a minimum of one hour. See win_sparkle_set_update_check_interval() and win_sparkle_get_update_check_interval(). |
All values are stored as REG_SZ, no matter what their logical type is.
Boolean values are stored as 0 or 1.
Internal state data
Additionally, the following settings are used internally:
| Key | C type | Description |
|---|---|---|
SkipThisVersion |
string |
If the user skipped an update, the version to ignore is stored here, e.g. 1.4.3. |
DidRunOnce |
bool |
Whether the app was launched at least once already. |
UpdateTempDir |
string |
Temporary directory containing a downloaded update payload. WinSparkle uses this to remove leftovers on startup, then deletes the value. |
Internal values are implementation details and may change or disappear at any time. They are documented here for troubleshooting and transparency, not as a supported configuration interface.