Skip to content
Mikhail Deynekin edited this page Oct 16, 2026 · 1 revision

FAQ

Short answers, each grounded in a traced fact or a measured run. Longer explanations link out to the page that owns the topic.


Contents


Does it need administrator rights?

No. Every write targets HKCU or the user's AppData; the manifest requests asInvoker and no code path triggers a UAC prompt. The embedded installer, the uninstaller and the updater all run without one. (Security and Privacy)

Can I enforce this for all users on a machine?

Not through the app, and not through Group Policy: per-icon promotion has no GPO. The 6.x-era “AllUsers” mode was removed after the project's own audit found no such policy exists. Deploy per user instead: logon scripts, scheduled tasks, or GPP registry items targeting HKCU. (Comparison with Alternatives, Legacy Script Editions)

Which Windows versions work?

Windows 10 1703 (build 15063) and newer, including Windows 11. The per-icon store the program relies on starts at 1703; on older builds the program runs, explains the limitation on the Dashboard, and store commands exit 2. (How Tray Visibility Works)

Does it run on Windows Server?

Yes — Server 2019/2022/2025 x64 are in scope; the shell there maintains the same notification-area store. Headless --watch plus --status --json is the usual server-side shape. (Installation and Deployment)

Why do icons hide again after some app updates?

Because Explorer rewrites IsPromoted=0 when applications re-register their tray icons — the decay problem. The guard exists to re-promote within moments; note the published-build caveat that reconciliation currently needs a polling interval or the patched build. (How Tray Visibility Works, The Guard Watcher)

Is anything sent over the network?

Only what you trigger: a manual update check (or the opt-in 24 h auto-check, balloon-only) fetches the feed; a confirmed update downloads one pinned binary. No telemetry, analytics or crash reporting exists in the code. (Security and Privacy)

Is the binary code-signed?

No — community project, unsigned by design of its model. SHA-256 sums ship with releases and pin the updater; SmartScreen/MOTW handling and a signtool recipe for organizations are documented. (Installation and Deployment)

Does it replace or hook Explorer?

Neither. It writes documented shell registry state and, optionally, restarts the shell through the standard terminate-and-relaunch sequence. No DLL injection, no taskbar replacement, no patched shell code. (Architecture)

Will it survive Windows feature updates?

The mechanism is the same store the Settings app uses, so as long as Windows keeps NotifyIconSettings (it has since 1703, through Windows 11 24H2+), the program keeps working. Layout-caching quirks on some 24H2 builds are handled by the guarded Explorer restart. (Troubleshooting)

Can I use it from scripts only, without the GUI?

Yes: --promote-all, --watch, --status --json, --backup, --restore-latest, autostart verbs and --mode cover headless life; exit codes 0/1/2/3 are stable for monitoring. Remember the two silent paths (invalid args; unsupported store on --restore-defaults/--watch). (Command-Line Interface)

Does it work under Wine or in VMs?

It runs and degrades gracefully: Wine prefixes lack NotifyIconSettings, so store verbs exit 2/3 and the Dashboard shows the unsupported card — exactly the behavior real pre-1703 machines get. The QA mode --ui-test renders pages and self-captures PNGs, which is how this wiki verified the UI. (Troubleshooting, Building from Source)

What does it cost, and may I use it at work?

Free of charge, licensed PolyForm Noncommercial 1.0.0: personal and noncommercial use is permitted; commercial use is not covered by the license — contact the author (icons@Deynekin.com) for that. Note the shipped 8.4.0 binary's version resource still says MIT, a known drift item; the repository LICENSE is the legal text. ([[Changelog and Versioning]])

How do I migrate from the old PowerShell or BAT editions?

Nothing to migrate: v8's --watch replaces the BAT/PS watchers, settings live in a new JSON file, and the old editions' data folders (%LOCALAPPDATA%\ShowAllTrayIcons) are independent — remove their autostart entries and uninstall as their docs say, then install or run v8. Keep in mind the v6 .reg artifacts should simply be deleted from deployment shares: they write invalid paths. (Legacy Script Editions)

Where is the source of truth for versions?

Intended: src/core/version.h, mirrored into resources and packaging per the updater contract. Actual, at the studied commit: a drift table spanning 8.0.0–8.4.0 strings, recorded in full so nobody has to rediscover it. (Changelog and Versioning)


See also

Clone this wiki locally