Mass Deployment
Overview
The Windows agent is a standard MSI package, so every endpoint management system that deploys MSI files can roll it out: Microsoft Intune, Group Policy, Configuration Manager (SCCM), PDQ Deploy, Zoho Endpoint Central, and others. The deployment always consists of the same three decisions — the server URL, the registration method, and whether the Windows service is needed — passed as msiexec properties. This page gives the command line and the tool-specific steps.
The command line
The complete form, with every property the package accepts. Replace each <placeholder>; drop the properties whose default you keep (the defaults are in the table below):
msiexec /i "<path>\DeskAlertsClient<version>.msi" /qn /norestart BASE_URL=<https://server-name> REGISTRATION_TYPE=<0|1|2|3|5|6|7> ENABLE_SERVICE=<true|false> ENABLE_WP_LS_SS=<true|false> ALERT_ON_LOCKSCREEN=<true|false> ALLOWING_UNTRUSTED_SSL=<true|false> DELETEPROFILE=<1|0> APPDIR="<installation folder>" AI_DESKTOP_SH=<1|0> AI_STARTMENU_SH=<1|0> AI_STARTUP_SH=<1|0> PINTOTASKBAR=<1|0> /l*v "<log file>"
A typical rollout passes only what differs from the defaults. This example — the server URL, the Simple registration method, a verbose log — was run on a test workstation: msiexec returned 0 after about 15 seconds, the service was running, and the agent started in the user's session at once:
msiexec /i "C:\Temp\DeskAlertsClient12.1.0.3.msi" /qn /norestart BASE_URL=https://alerts.acme.example REGISTRATION_TYPE=0 /l*v "C:\Temp\DeskAlertsAgent.log"
For a domain fleet the same line with REGISTRATION_TYPE=5 (Seamless) registers the users silently with their Windows identity.
Uninstall, with the package at hand or by product code:
msiexec /x "<path>\DeskAlertsClient<version>.msi" /qn /norestart
msiexec /x {<ProductCode>} /qn /norestart
Properties
| Property | Values | Default | Description |
|---|---|---|---|
BASE_URL | https://host[:port] | — | The server URL exactly as published. Required; an incomplete value (for example https:) makes the agent exit at start |
REGISTRATION_TYPE | 0 Simple, 1 Computer name, 2 Simple AD, 3 Azure AD, 5 Seamless, 6 Seamless hybrid, 7 Seamless for Azure AD | 0 | How the agent identifies the user — see the decision table below and Installing the Agent on Windows |
ENABLE_SERVICE | true / false | true | Installs the DeskAlerts Client Service, needed for wallpaper, lock screen, screensaver, and alerts on the locked screen |
ENABLE_WP_LS_SS | true / false | true | Enables the wallpaper, lock screen, and screensaver features (requires the service) |
DISABLE_WP_LS_SS | 1 / 0 | 0 | The inverse of ENABLE_WP_LS_SS; pass one of the two, not both |
ALERT_ON_LOCKSCREEN | true / false | false | Shows alerts on the locked screen (requires the service) |
ALLOWING_UNTRUSTED_SSL | true / false | false | Accepts a server certificate the workstation does not trust. Test environments only — in production distribute the CA certificate instead |
DELETEPROFILE | 1 / 0 | 1 | Removes the local alert history and content of a previous installation. Use 0 when upgrading, so that the registration and history survive |
APPDIR | A path | C:\Program Files\ToolBarStudio Inc\DeskAlerts Client software\ | The installation folder |
AI_DESKTOP_SH | 1 / 0 | 1 | Desktop shortcut |
AI_STARTMENU_SH | 1 / 0 | 1 | Start Menu shortcut |
AI_STARTUP_SH | 1 / 0 | 1 | Startup shortcut — keep it: it starts the agent with the user's session |
PINTOTASKBAR | 1 / 0 | 0 | Pins the agent to the taskbar |
IGNOREDEPENDENCIES | ALL | — | Skips the dependency checks of Windows Installer; only in cleanup scripts that remove orphaned earlier versions |
/qn or /quiet | — | — | No user interface |
/norestart | — | — | No automatic restart |
/l*v "<file>" | — | — | Verbose installation log; keep it on the device for failed installations |
Decisions
| Decision | Property | Recommendation |
|---|---|---|
| Server URL | BASE_URL | The https:// server URL, the same one the agents' browsers can open |
| Registration method | REGISTRATION_TYPE | 5 (Seamless) for domain-joined Windows devices, 6 (Seamless hybrid) when the accounts are synchronized from Entra ID in a hybrid environment, 7 (Seamless for Azure AD) for Entra ID-joined devices, 3 (Azure AD) for interactive Microsoft sign-in, 2 (Simple AD) when users outside the domain must enter their AD credentials, 0 (Simple) when users sign in with DeskAlerts credentials |
| Windows service | ENABLE_SERVICE | true if wallpaper, lock screen, screensaver, or alerts on the locked screen are used |
| Lock-screen features | DISABLE_WP_LS_SS, ALERT_ON_LOCKSCREEN | DISABLE_WP_LS_SS=0 ALERT_ON_LOCKSCREEN=true for everything on; DISABLE_WP_LS_SS=1 ALERT_ON_LOCKSCREEN=false for popups and tickers only |
| Certificate trust | ALLOWING_UNTRUSTED_SSL | Omit in production; distribute the CA certificate instead |
| Shortcuts | AI_DESKTOP_SH=0 AI_STARTMENU_SH=0 | Usually no desktop or Start Menu shortcut in a managed rollout; keep the Startup shortcut |
Note: Deploy the agent per machine (system context). It registers the signed-in user when the user's session starts, so a device used by several people registers each of them in turn with the seamless methods.
Return codes
| Code | Meaning |
|---|---|
0 | Installed |
3010 | Installed, restart required |
1641 | Installed, restart started |
1603 | Fatal error — read the msiexec log |
1612 | Installation source missing — an earlier version cannot be removed because its MSI is gone |
1619 | The package cannot be opened — damaged or blocked file |
1714 | An older version cannot be removed — see the cleanup notes below |
Detection
| Method | Rule |
|---|---|
| File | C:\Program Files\ToolBarStudio Inc\DeskAlerts Client software\DeskAlertsClient\DeskAlertsClient.exe exists |
| Registry | A key under HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall whose DisplayName contains DeskAlerts with the expected DisplayVersion |
| MSI | The product code of the build |
Recommendations
- Distribute the MSI as a package and copy it to the local disk before running
msiexec; running it straight from a network share or a distribution cache occasionally corrupts the package (error 2753). - Keep the installation log (
/l*v) on the device for failed installations. - Allow 30 minutes for the installation step and up to three retries.
- Keep the registration method identical to the one the existing agents use; a different method registers the users again as new recipients.
- Use
DELETEPROFILE=0when upgrading existing installations, so that the local registration and alert history survive;DELETEPROFILE=1is for re-imaging and for devices that were registered against another server. - After a silent installation the agent starts with the user's next sign-in through the Startup shortcut. Do not add a second start of
DeskAlertsClient.exewhile the agent is running: two instances in one session show two tray icons and are throttled by the server (HTTP 429, one sign-in per client every 3 seconds). - Check the version afterwards with the file properties of
DeskAlertsClient.exe— every DeskAlerts binary carries the product version and, after a+, the hash of the build commit, which support uses to identify a build exactly.
Before a Rollout
- Synchronize the directory (Settings → Users & access → IAM sync) so that users exist in the audience before their agents register with a domain-based method.
- Set the Audience access level to a level that allows the chosen registration method.
- Pilot with a small group; check Audience explorer, the Agent radar widget, and a test alert.
- Prepare the certificate: with a corporate CA, make sure the CA certificate is in the Trusted Root store of the target devices (Group Policy or MDM profile).
- Roll the agents out in waves: thousands of agents starting at once run into the sign-in throttling (HTTP 429).
Replacing Earlier Versions
Do not install the 12 package over a DeskAlerts 11 agent. For a clean rollout, run an uninstall-then-install script that also deletes the old installation folder:
msiexec /x {OldProductCode} /qn /norestart IGNOREDEPENDENCIES=ALL
rmdir /s /q "C:\Program Files\ToolBarStudio Inc\DeskAlerts Client software"
msiexec /i "C:\Temp\DeskAlertsClient12.1.0.3.msi" /qn /norestart BASE_URL=https://alerts.company.com REGISTRATION_TYPE=5 ENABLE_SERVICE=true /l*v "C:\Temp\DeskAlertsAgent.log"
Exit code 1605 from the uninstall step (product not found) is normal. Two cases need attention:
- Different registration method: reinstalling with another
REGISTRATION_TYPEis supported, but the users register anew under the new method. - Orphaned earlier versions: when the earlier versions were installed by a deployment tool whose cache has since been cleaned, Windows Installer cannot remove them (error 1714 / 1612). Contact DeskAlerts support for help with the cleanup.
Microsoft Intune
- Wrap the MSI as a Win32 app with the Microsoft Win32 Content Prep Tool:
IntuneWinAppUtil.exe -c "C:\DeskAlertsInstaller" -s "DeskAlertsClient12.1.0.3.msi" -o "C:\DeskAlertsInstaller\output"
- In the Intune admin center, go to Apps → Windows → Add, choose Windows app (Win32), and upload the
.intunewinfile. - Under Program, set the install command to the command line above and the uninstall command to
msiexec /x "DeskAlertsClient12.1.0.3.msi" /qn /norestart. Install behavior: System. Device restart behavior: App install may force a device restart only if the fleet allows it; otherwise No specific action. - Under Requirements, select 64-bit and Windows 10 1607 as the minimum version.
- Under Detection rules, choose MSI (Intune reads the product code from the package) or the file rule from the Detection table above.
- Under Return codes, keep the defaults and add
1612,1619, and1714as Failed. - Assign the app to the device groups and monitor Device install status.
A line-of-business (LOB) app with the plain MSI also works; Intune then passes the properties from the Command-line arguments field.
Group Policy
- Copy the MSI to a share readable by Domain Computers.
- Because Group Policy software installation cannot pass MSI properties, deploy with a computer startup script that runs the
msiexeccommand line. Use the product code to make the script idempotent and copy the package locally first:
reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{ProductCode}" >nul 2>&1 && exit /b 0
copy /y "\\fileserver\deploy\DeskAlertsClient12.1.0.3.msi" "%TEMP%\DeskAlertsClient.msi"
msiexec /i "%TEMP%\DeskAlertsClient.msi" /qn /norestart BASE_URL=https://alerts.company.com REGISTRATION_TYPE=5 ENABLE_SERVICE=true /l*v "%TEMP%\DeskAlertsAgent.log"
- Link the GPO to the OUs with the target computers. Do not assign the MSI directly as a software installation package: version replacement is unreliable that way.
Configuration Manager (SCCM), PDQ Deploy, Zoho Endpoint Central
Create a package or application with the MSI as the source and the command line above as the install command (/qn /norestart plus the properties), the uninstall command with /x, and run it in the system context, whether or not a user is signed in, hidden, with a 30-minute time limit. Use the file or registry detection from the table above and the return codes listed. PDQ Deploy: an Install step with the MSI file and the parameters /qn /norestart BASE_URL=… REGISTRATION_TYPE=… ENABLE_SERVICE=true. Zoho Endpoint Central: a software package with Installation command set to the same line, deployed with a configuration to the target computers.
Monitoring the rollout
| Where | What to check |
|---|---|
| Dashboard → Agent radar | Endpoints per platform and version, split by Seen today, 1-29 days ago, 30+ days ago |
| Dashboard → Connected audience | Connected desktop endpoints right now |
| Audience explorer → Users | Each user's endpoints with agent version, last activity, online state |
| Reports → Recipients | Per-recipient delivery history |
| The management tool | Installation status and the msiexec log on failed devices |
Devices that installed the agent but never appear in the portal usually cannot reach the server URL or do not trust its certificate — see the troubleshooting table in Installing the Agent on Windows.