Silent Mode Behavior
The --silentMode flag suppresses all console output (both stdout and stderr). This is designed for scheduled tasks and automated deployments where no interactive console is available. All other behavior — file logging, run reports, exit codes, and operations — remains identical.
What Changes in Silent Mode
| Behavior | Normal Mode | Silent Mode |
|---|---|---|
| Progress output | Written to stdout in pipe-delimited format |
Suppressed |
| Error messages | Written to stderr |
Suppressed |
| Help text | Displayed on validation errors and --help |
Suppressed |
| Application log | Written to app.csv | Written to app.csv (unchanged) |
| Audit log | Written to audit CSV | Written to audit CSV (unchanged) |
| Run report | Saved as JSON in report folder | Saved as JSON in report folder (unchanged) |
| Exit code | Set on process exit | Set on process exit (unchanged) |
| Event pipeline | Events dispatched to configured sinks | Events dispatched to configured sinks (unchanged) |
When to Use Silent Mode
Silent mode is recommended for:
- Windows Scheduled Tasks — Tasks running under SYSTEM or a service account where no console window exists.
- SCCM/Intune task sequences — Deployment scripts where console output is not captured or would interfere with the deployment log.
- GPO logon/logoff scripts — Scripts that run in the background during user logon or logoff.
- CI/CD pipelines — Automated workflows where only the exit code and log files are monitored.
Troubleshooting in Silent Mode
Since console output is not available, use the following to diagnose issues:
- Exit code — Check
%ERRORLEVEL%or$LASTEXITCODEimmediately after execution. See Exit Codes for meanings. - Application log — Open
app.csvin the log folder. All operations, warnings, and errors are recorded here regardless of silent mode. - Run report — Check the most recent
report_*.jsonfile in the report folder for step-by-step results and error details. - Audit log — Verify the operation was recorded in the audit log with the expected outcome.
A common pattern for scheduled tasks is to combine silent mode with exit code checking and log file monitoring:
AppProfileSafe.CLI.exe --export --manifestFile "\\server\share\Manifest.xml" --apps "Firefox,Chrome" --unc-credential-store --silentMode
IF %ERRORLEVEL% NEQ 0 (
:: Log failure, send alert, etc.
eventcreate /T ERROR /ID 1001 /L Application /SO "AppProfileSafe" /D "Export failed with code %ERRORLEVEL%"
)