VediramVediramSupport

Architecture & Processes

Deck's two-process design, the named-pipe channel between them, and how it starts

Understanding Deck's process model helps administrators reason about what's running, how it starts, and where to look when something misbehaves.

Two processes

Deck runs as two cooperating processes on the local machine:

ProcessExecutableRole
UIVediram.Deck.exeThe WinUI 3 window and tray icon the user interacts with. Holds no state - it asks the daemon for everything.
Core daemonVediram.Deck.Core.exeThe background worker that does the real work and owns all state.

The daemon is where registry scanning, profile activation, policy evaluation, the SQLite database, metrics collection, crash analysis, and Excel XLL reconciliation happen. The UI is a thin client over it.

The named pipe

The two processes communicate over a local named pipe called VediramDeck using JSON-RPC. Key properties:

  • Machine-local only - the pipe is not a network endpoint. Nothing listens on any TCP/UDP port.
  • Bidirectional - besides request/response, the daemon pushes notifications to the UI (for example when a profile is activated or a new crash report is detected), so the UI updates live.
  • One UI client at a time.

Because it's a local pipe, no firewall rule or network permission is involved.

Startup and lifetime

  • Launching the UI (from the Start menu or tray) auto-starts the daemon if it isn't already running.
  • Each process is single-instance, guarded by a named mutex - VediramDeckUI for the UI and VediramDeckCore for the daemon - so you never get two daemons fighting over the registry.
  • The daemon keeps running in the background after you close the window, which is what allows metrics collection and tray-based profile switching to continue.
  • Exit from the tray menu stops both the UI and the daemon.

Auto-start

When start-with-Windows is enabled, Deck adds a Run entry that launches the daemon (not the UI):

HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
    VediramDeck = "…\Vediram.Deck.Core.exe"

This can be forced on or off with the AutoStart policy. See Settings and the Policy Reference.

What the daemon does in the background

While running, the daemon:

  • discovers and re-scans add-ins across the Office registry paths (see Registry Details);
  • applies profiles and, unless DisableLiveToggle is set, toggles add-ins in running Office processes over COM;
  • evaluates Group Policy at startup;
  • loads managed profiles from ManagedProfilesPath if configured;
  • reconciles Excel OPEN entries against the Managed Extensions policies;
  • samples add-in metrics on the polling interval;
  • watches the crash-dumps folder and analyzes new dumps.

No network dependency

Deck makes no outbound HTTP calls and requires no authentication. The only optional off-box dependency is a file share you point ManagedProfilesPath (or a Folders policy) at. See Overview.