Installation Guide
WindowSill offers two installation paths designed for different deployment models:
Quick Comparison
| Feature | Microsoft Store | Standalone Installer |
|---|---|---|
| Target audience | Individual consumers | Enterprise/organization |
| Pricing model | Free tier + WindowSill+ | WindowSill Pro only |
| Authentication | Personal Microsoft account | WindowSill account |
| Centralized control | None | Registry + admin dashboard |
| Installation requirements | Standard user | Admin rights |
System Requirements
- OS: Windows 10 or 11
- RAM: 150 MB
- Storage: 250 MB (base install, excluding extensions)
- Architecture: x64 or ARM64
Decision Framework
Choose Microsoft Store if:
- You're an individual user
- You want automatic updates with zero config
- You don't need enterprise controls
Choose Standalone Installer if:
- You're deploying to multiple devices
- You need to enforce extension, AI or privacy policies
- You want centralized API key management
Microsoft Store Version
Best for: Individual users who want simple, automated updates.
Installation
Via Microsoft Store app, or using WinGet:
winget install --id 9PG6CJPXTPZ0 --source msstore
Standalone Installer
Best for: IT teams deploying to multiple devices with policy enforcement.
What You Get
- Silent deployment without user interaction
- Policy enforcement via registry or admin dashboard (extensions, API keys, privacy settings)
- Automatic authentication using device tokens
Installation
- Download the installer from WindowSill Dashboard
- Deploy with parameters as needed
Deployment Parameters
| Parameter | Purpose | Example |
|---|---|---|
/silent |
Show progress window only | — |
/verysilent |
Fully hidden install | — |
/norestart |
Prevents Setup from restarting the system after installation | — |
/allowedExtensions |
Whitelist specific extensions | /allowedExtensions="extA;extB" |
/deviceToken |
Auto-authenticate users to your organization | /deviceToken="abc123..." |
/userEmail |
Specify user email for authentication | /userEmail="john.doe@contoso.com" |
See Inno Setup documentation for additional installer options.
Not every WindowSill registry-based settings can be controlled by the installer. For full registry key documentation, see Registry Keys reference.
Parameter Deep Dive
/allowedExtensions
Controls which extensions WindowSill can load. Use semicolon-separated Package IDs.
Behavior:
- Not set: All extensions allowed (default behavior)
- Empty string (
/allowedExtensions=""): No extensions allowed - Specified Package ID list (
/allowedExtensions="extA;extB"): Only listed extensions allowed
Finding Package IDs:
- Marketplace extensions: Check the extension's details page (e.g., Media Control)
- Custom extensions: Rename
.wsextto.zip, extract, and open the.nuspecfile—the Package ID is in the<id>tag
Important notes:
- When using
/allowedExtensions, default WindowSill extensions are not installed unless explicitly included in the allow-list - This parameter does not uninstall already-installed extensions; it only prevents them from loading at startup
/deviceToken
Enables silent authentication by linking WindowSill installations to your organization. Generate tokens in the WindowSill Dashboard.
Note
Device tokens are scoped to a specific organization—either a parent organization or a sub-organization. See Organizations for details on organization hierarchy.
Deployment methods:
Installer parameter:
WindowSill_Setup_x64.exe /verysilent /deviceToken="abc123..."Registry key (PowerShell):
Set-ItemProperty -Path "HKLM:\SOFTWARE\WindowSill" -Name "DeviceToken" -Value "abc123..."
How it works:
Domain-restricted tokens (recommended): When creating the token, specify an email domain (e.g.,
@contoso.com)- Users with matching email addresses can sign in automatically
- New users are auto-provisioned with a WindowSill account and added to your organization as Members
Organization-only tokens: If no domain is specified, only existing organization members can authenticate
Email detection:
- If
/userEmailis not provided and the device is domain-joined or Azure AD-joined, WindowSill auto-detects the signed-in user's email on first launch - If the device is not domain-joined, you must provide
/userEmailor authentication will fail
/userEmail
Specifies the user's email address for device token authentication.
When to use:
- Required: On non-domain-joined devices using
/deviceToken - Optional but recommended: On domain-joined devices where you want explicit control over which user account is provisioned (bypasses auto-detection)
Deployment methods:
Installer parameter:
WindowSill_Setup_x64.exe /verysilent /deviceToken="abc123..." /userEmail="john.doe@contoso.com"Registry key (PowerShell):
Set-ItemProperty -Path "HKLM:\SOFTWARE\WindowSill" -Name "UserEmail" -Value "john.doe@contoso.com"
If omitted on domain-joined devices, WindowSill attempts to detect the email automatically. If detection fails or the device isn't domain-joined, authentication will fail silently—users will see a login prompt.
How the Installer Works
This section provides technical details about the standalone installer's behavior for IT administrators and advanced users.
Installation Location
- Default path:
C:\Program Files\WindowSill - Privileges: Requires administrator rights
- Architecture: Installs in 64-bit mode on both x64 and ARM64 systems
What Gets Installed
- Application files — The main WindowSill application and all dependencies
- Visual C++ 2015 Redistributable — Installed silently if not already present
- Start Menu shortcut — Created in the common Start Menu for all users
System Modifications
The installer makes the following system changes:
| Change | Purpose |
|---|---|
| PATH environment variable | Adds WindowSill's install directory to the system PATH (for extension development) |
| Active Setup registration | Ensures per-user registration runs on first login |
Registry Keys Created
The installer writes to HKLM\SOFTWARE\WindowSill:
| Key | Condition | Purpose |
|---|---|---|
AllowedExtensions |
When /allowedExtensions is provided |
Controls which extensions can load |
DeviceToken |
When /deviceToken is provided |
Enables silent organization authentication |
UserEmail |
When /userEmail is provided |
Specifies user email for authentication |
All keys are automatically removed during uninstallation.
Active Setup (Per-User Registration)
When deploying WindowSill via Intune or other tools that run as SYSTEM, per-user registration cannot happen during installation. The installer uses Windows Active Setup to solve this:
- During installation, an Active Setup entry is created in the registry
- On each user's first login after installation, Windows runs
WindowSill.exe /register - This registers
.wsextfile associations, registerswindowsill://protocol, and register WindowSill to start automatically when the user log into Windows.
This ensures proper functionality even when the installer runs without an interactive user session. These registrations do not require administrator right.
Post-Installation Behavior
| Scenario | Behavior |
|---|---|
| Interactive install | WindowSill launches automatically with /register to complete setup and start WindowSill |
Silent install (/silent or /verysilent) |
App does not launch; Active Setup handles registration on first user login and start WindowSill |
Uninstallation
The uninstaller performs the following cleanup:
- Runs
WindowSill.exe /unregisterto remove file associations and protocol and auto-startup. - Terminates all running WindowSill processes system-wide
- Deletes application data from
%LocalAppData%\WindowSill - Removes all registry keys created during installation
- Removes WindowSill from the system PATH