Had this issue with deployment with Dell command update. I use PDQ Deploy. After much online reading found that a bach file is easyer to work with.

my code looks like this

cd C:\Program Files\Dell\CommandUpdate

dcu-cli /version

dcu-cli /scan

dcu-cli /applyUpdates -encryptedPasswordFile="???" -encryptionKey="???"

Also not sure if you are trying to run the scan and the apply in the same code. I found that it is more stable to run them in diffrent steps.

hope this helps

Answer from Killing-me-MicroSoftly on Stack Overflow
🌐
GARYTOWN
garytown.com › dell-command-update-install-manage-via-powershell
Dell Command Update – Install & Manage via PowerShell – GARYTOWN ConfigMgr Blog
I think I fixed the issue by changing “If ($DCUVersionInstalled -ne $false){[Version]$CurrentVersion = $DCUVersionInstalled.Version}” to “If ($DCUVersionInstalled -ne $false){[Version]$CurrentVersion = [Version]$DCUVersionInstalled}” Now the function does not attempt to install DCU since the currently installed version if greater than the script detected available version from Dell. The CurrentVersion variable was now set to version value 5.4.0 after the fix. I was running the functions inside of PowerShell ISE if that makes any difference.
Discussions

powershell - Using PSRemoting to Install Dell Updates using dcu-cli.exe - Stack Overflow
I am trying to use PSRemoting to ... is not an option for me. The version of dcu-cli.exe I am using is 3.1. For right now I just want to capture the output of the /version parameter. Running the following command from PowerShell on my local machine produces the following ... More on stackoverflow.com
🌐 stackoverflow.com
How to run command line or PowerShell script if file could exist in two locations? - Stack Overflow
Could someone help me convert this to a command line or PowerShell script so that it would correctly from whichever location exists? It should only exist in one of the two locations and only needs to be run once. ... "%ProgramFiles%\Dell\CommandUpdate\dcu-cli.exe" /configure -updatetype=bios,... More on stackoverflow.com
🌐 stackoverflow.com
Dell Command Update in Task Sequence
The problem is that you are using the wrong Program Files folder. The new Dell CCU is 64 bit here is what we use: cmd.exe /c start /wait C:\"Program Files"\Dell\CommandUpdate\dcu-cli.exe /ApplyUpdates -reboot=disable -outputLog=C:\Temp\DellUpdatesDuringImaging.log Change the path for your switches and it should work More on reddit.com
🌐 r/SCCM
15
11
February 2, 2024
Worklet - Dell Command Update with Output Showing What Updates Installed
Disclaimer - this will apply all Dell driver updates without a reboot. It is up to you to configure this to your environment. This worklet will Install Dell Command Update. Be sure to include the binaries and update the name to the EXE you use. https://www.dell.com/support/home/en-us/drive... More on community.automox.com
🌐 community.automox.com
6
May 12, 2021
🌐
Blue929
blog.blue929.com › 2026 › 02 › 13 › powershell-script-dell-command-update
Powershell Script – Dell Command Update
February 13, 2026 - ############ Silent update ############ # Execute DCU-CLI.exe with the following parameters to trigger system update # Machine must be connected to AC power due perform BIOS update $DCU_Classic = Test-path "C:\Program Files (x86)\Dell\CommandUpdate\dcu-cli.exe" $DCU_Universal = Test-path "C:\Program Files\Dell\CommandUpdate\dcu-cli.exe" $command = "/applyupdates -updatetype=bios,firmware,driver,application -reboot=disable -forceUpdate=enable -outputlog=c:\temp\DCULog-EXE-BIOS.log " if($DCU_Classic){ Write-Output "#### Executing Dell command update classic.....
🌐
Stack Overflow
stackoverflow.com › questions › 60307898 › using-psremoting-to-install-dell-updates-using-dcu-cli-exe
powershell - Using PSRemoting to Install Dell Updates using dcu-cli.exe - Stack Overflow
the problem I had was figuring out how to pass "/applyUpdates" to dcu-cli instead of having it interpreted by powershell · Breaking the dcu-cli invocation into two separate steps works (cd ..., then .\dcu-cli) I am logged in to my workstation as a user with local admin rights on the remote computer. $pcname="ss-frontdesk" $exePath="\program files\dell\commandupdate" invoke-command -computername $pcname {cd "$using:exePath"; .\dcu-cli /applyUpdates -reboot=enable}
🌐
GitHub
github.com › PowershellBacon › Dell-Driver-Updates › blob › master › Update-Dell-Drivers.ps1
Dell-Driver-Updates/Update-Dell-Drivers.ps1 at master · PowershellBacon/Dell-Driver-Updates
Start-Process -FilePath .\cctk.exe -ArgumentList "--setuppwd=YOURDESIREDPASSWORD" -Wait -WindowStyle Hidden ... start-process -FilePath ".\dcu-cli.exe" -ArgumentList "/forceupdate $release" -Wait -WindowStyle Hidden
Author   PowershellBacon
🌐
Automox
community.automox.com › community hub › forum › automox worklets › find & share worklets › basic dell command update worklet
Basic Dell Command Update Worklet | Community
November 29, 2023 - $software = & "$env:SystemRoot\sysnative\WindowsPowerShell\v1.0\powershell.exe" -ExecutionPolicy Bypass -WindowStyle Hidden -NoProfile -NonInteractive -Command $scriptblock ... $results = Start-Process -FilePath "C:\Program Files\Dell\CommandUpdate\dcu-cli.exe" -ArgumentList "/configure -$Arg" -Wait | Out-Null
🌐
Stack Overflow
stackoverflow.com › questions › 71876484 › how-to-run-command-line-or-powershell-script-if-file-could-exist-in-two-location
How to run command line or PowerShell script if file could exist in two locations? - Stack Overflow
%programfiles(x86)%\Dell\CommandUpdate\dcu-cli.exe" /configure -updatetype=bios,firmware,driver,application,utility,others %programfiles(x86)%\Dell\CommandUpdate\dcu-cli.exe" /applyupdates -reboot=enable -autosuspendbitlocker=enable
🌐
Cyberdrain
cyberdrain.com › monitoring-with-powershell-monitoring-dell-driver-updates-dcu-3-1
Monitoring with PowerShell: Monitoring Dell Driver Updates (DCU 3.1)
$DownloadLocation = "C:\Program Files\Dell\CommandUpdate" start-process "$($DownloadLocation)\dcu-cli.exe" -ArgumentList "/applyUpdates -autoSuspendBitLocker=enable -reboot=enable -updateType=bios" -Wait · And this one installs only the BIOS updates. I think with these examples and the manual I’ve posted above you can figure out your exact preferred settings. So that’s it! As always, Happy PowerShelling!
Find elsewhere
🌐
Adam the Automator
adamtheautomator.com › dell-command-update
Master Dell Command Update and Keep Your Dell Apps Current
February 16, 2024 - dcu-cli.exe/<command> -option1=value1 -option2=value2 -option3=value3... To utilize the Dell Command Update CLI effectively: 1. Open the command prompt or PowerShell as an administrator.
🌐
Reddit
reddit.com › r/sccm › dell command update in task sequence
r/SCCM on Reddit: Dell Command Update in Task Sequence
February 2, 2024 -

Struggling to get DCU to run during the TS. Below is what my setup looks like (took these from someone elses post). Using DCU 5.1.0. I can briefly see the cmd window open during the TS but it quickly closes. What am I doing wrong?

Step name: Dell Driver Install (x64)

Run Command Line:

cmd.exe /c "C:\Program Files (x86)\Dell\CommandUpdate\dcu-cli.exe" /driverInstall -reboot=disable -outputLog=C:\DellDriversDuringImaging.log

Step name: Restart Computer to OS

Step name: Dell Update Install (x64)

Run Command Line:

cmd.exe /c "C:\Program Files (x86)\Dell\CommandUpdate\dcu-cli.exe" /ApplyUpdates -updatetype=BIOS,firmware,driver -reboot=disable -outputLog=C:\DellUpdatesDuringTS.log

🌐
Automox
community.automox.com › community hub › forum › automox worklets › find & share worklets › worklet - dell command update with output showing what updates installed
Worklet - Dell Command Update with Output Showing What Updates Installed | Community
May 12, 2021 - & 'C:\Program Files\Dell\CommandUpdate\dcu-cli.exe' /configure -exportSettings=C:\temp ... Sorry i am very new to powershell and am working through your script, so i apologize.
🌐
LinkedIn
linkedin.com › pulse › powershell-automation-install-configure-execute-dell-command-webber
PowerShell Automation: Install, Configure, and Execute Dell Command Update
April 15, 2023 - By clicking Continue, you agree to LinkedIn’s User Agreement, Privacy Policy, and Cookie Policy. ... Dell Command Update (DCU) is an application I like to use to update the drivers and BIOS of the Dell desktop and laptops I support. I like to install and run it on every device I image just to make sure everything is up-to-date.
🌐
GitHub
github.com › ajh0912 › Useful-PowerShell › blob › main › Get-DellUpdates.ps1
Useful-PowerShell/Get-DellUpdates.ps1 at main · ajh0912/Useful-PowerShell
$dcuExePath = Join-Path -Path $programFiles -ChildPath 'Dell\CommandUpdate\dcu-cli.exe' # The -report argument of 'dcu-cli.exe /scan' is hard coded to not allow C:\Windows\Temp · # So unfortunately $env:TEMP does not work when running as NT AUTHORITY\SYSTEM, instead we'll use this directory ·
Author   ajh0912
🌐
Aaronjstevenson
scripts.aaronjstevenson.com › device-management › updates › dell-command-update
Dell Command Update | Shared Script Library
July 11, 2025 - This script downloads and installs the latest version of Dell Command Update (DCU) if not already installed. It will then use dcu-cli.exe to download and install all Dell driver/firmware updates, ignoring reboots.
🌐
Reddit
reddit.com › r/powershell › dell command update
r/PowerShell on Reddit: dell command update
March 14, 2024 -

Good evening everyone.

So, I created a powershell script to update a number of pc's (same model-dell). The issue is that when the script runs dell command update, a black cmd screen pops up on the user's display. Is there a way to prevent this popup from appearing?

This is the code I'm using atm:

# Dell Command Update

# Define paths and options for Dell Command Update

$dellCommandUpdatePath = "C:\Program Files\Dell\CommandUpdate\dcu-cli.exe"

$logFolderPathDCU = "C:\Logs\DellCommandUpdate"

🌐
Reddit
reddit.com › r/sccm › powershell script - sccm application deployment - dell command update
r/SCCM on Reddit: PowerShell Script - SCCM Application Deployment - Dell Command Update
October 18, 2023 -

I've tested this script on my desktop, and it's been running smoothly. I'm reaching out for help, not criticism, and I would really appreciate it if someone could help me find out the problems I'm having when deploying the Dell Command Update and update using SCCM. Specifically, I'm running into error messages, namely, 0x1(1) and 0x2(2).

It's worth noting that when these error messages appear, I've noticed that the Dell Command Update seems to have been installed when I check the "Add or Remove Programs" section. However, beyond this observation, it appears that nothing else is progressing. Clicking "retry" seems to restart the installation process but then stops. Any help with this matter would be highly appreciated.

# Execute the script
Start-Process -FilePath "\\server\apps\Dell-Command-Update-Windows-Universal-Application_1WR6C_WIN_5.0.0_A00.exe" -ArgumentList '/s' -Wait

# Disable the initial setup popup in the Windows Registry for Dell Command Update
New-ItemProperty -Path "HKLM:\SOFTWARE\Dell\UpdateService\Clients\CommandUpdate\Preferences\CFG" -Name "ShowSetupPopup" -PropertyType DWORD -Value 0 -Force

# Define the paths for the Dell Command Update executable and the settings XML
$DellCommandPath = "C:\Program Files\Dell\CommandUpdate"
$SettingsXmlPath = "\\server\apps\SML\5.0.0\DCUMySettings.xml"

# Run the Dell Command Update tool to import settings
Start-Process -FilePath "$DellCommandPath\dcu-cli.exe" -ArgumentList "/configure -importSettings=$SettingsXmlPath" -NoNewWindow -Wait

# Lock the Dell Command Update settings
Start-Process -FilePath "$DellCommandPath\dcu-cli.exe" -ArgumentList "/configure -lockSettings=enable" -NoNewWindow -Wait

# Scan for updates (BIOS and firmware)
Start-Process -FilePath "$DellCommandPath\dcu-cli.exe" -ArgumentList "/scan -updateType=bios,firmware" -NoNewWindow -Wait

# Disable updates notification
Start-Process -FilePath "$DellCommandPath\dcu-cli.exe" -ArgumentList "/configure -updatesNotification=disable" -NoNewWindow -Wait

# Apply updates silently, enable reboot, and log the output
$LogPath = "C:\Dell-CU-apply.log"
Start-Process -FilePath "$DellCommandPath\dcu-cli.exe" -ArgumentList "/applyUpdates -silent -reboot=disable -outputLog=$LogPath" -NoNewWindow -Wait

# Run the Dell Command Update tool to import settings
Start-Process -FilePath "$DellCommandPath\dcu-cli.exe" -ArgumentList "/configure -importSettings=$SettingsXmlPath" -NoNewWindow -Wait

# Define the paths for the Dell Command Update executable and the settings XML using registery
$process = Start-Process reg -ArgumentList "import \\server\apps\reg\5.0.0\DCU_Preferences_Value.reg" -PassThru -Wait 
$process.ExitCode

# Define the paths for the Dell Command Update executable and the settings XML using registery #2

if((Test-Path -LiteralPath "HKLM:\SOFTWARE\DELL\UpdateService\Clients\CommandUpdate\Preferences") -ne $true) {  New-Item "HKLM:\SOFTWARE\DELL\UpdateService\Clients\CommandUpdate\Preferences" -force -ea SilentlyContinue };
if((Test-Path -LiteralPath "HKLM:\SOFTWARE\DELL\UpdateService\Clients\CommandUpdate\Preferences\CFG") -ne $true) {  New-Item "HKLM:\SOFTWARE\DELL\UpdateService\Clients\CommandUpdate\Preferences\CFG" -force -ea SilentlyContinue };
if((Test-Path -LiteralPath "HKLM:\SOFTWARE\DELL\UpdateService\Clients\CommandUpdate\Preferences\Settings") -ne $true) {  New-Item "HKLM:\SOFTWARE\DELL\UpdateService\Clients\CommandUpdate\Preferences\Settings" -force -ea SilentlyContinue };
if((Test-Path -LiteralPath "HKLM:\SOFTWARE\DELL\UpdateService\Clients\CommandUpdate\Preferences\Settings\AdvancedDriverRestore") -ne $true) {  New-Item "HKLM:\SOFTWARE\DELL\UpdateService\Clients\CommandUpdate\Preferences\Settings\AdvancedDriverRestore" -force -ea SilentlyContinue };
if((Test-Path -LiteralPath "HKLM:\SOFTWARE\DELL\UpdateService\Clients\CommandUpdate\Preferences\Settings\General") -ne $true) {  New-Item "HKLM:\SOFTWARE\DELL\UpdateService\Clients\CommandUpdate\Preferences\Settings\General" -force -ea SilentlyContinue };
if((Test-Path -LiteralPath "HKLM:\SOFTWARE\DELL\UpdateService\Clients\CommandUpdate\Preferences\Settings\Schedule") -ne $true) {  New-Item "HKLM:\SOFTWARE\DELL\UpdateService\Clients\CommandUpdate\Preferences\Settings\Schedule" -force -ea SilentlyContinue };
New-ItemProperty -LiteralPath 'HKLM:\SOFTWARE\DELL\UpdateService\Clients\CommandUpdate\Preferences\CFG' -Name '(default)' -Value '' -PropertyType String -Force -ea SilentlyContinue;
New-ItemProperty -LiteralPath 'HKLM:\SOFTWARE\DELL\UpdateService\Clients\CommandUpdate\Preferences\CFG' -Name 'ShowSetupPopup' -Value 0 -PropertyType DWord -Force -ea SilentlyContinue;
New-ItemProperty -LiteralPath 'HKLM:\SOFTWARE\DELL\UpdateService\Clients\CommandUpdate\Preferences\CFG' -Name 'LockSettings' -Value 1 -PropertyType DWord -Force -ea SilentlyContinue;
New-ItemProperty -LiteralPath 'HKLM:\SOFTWARE\DELL\UpdateService\Clients\CommandUpdate\Preferences\Settings' -Name 'InstallPath' -Value 'C:\Program Files\Dell\CommandUpdate\' -PropertyType String -Force -ea SilentlyContinue;
New-ItemProperty -LiteralPath 'HKLM:\SOFTWARE\DELL\UpdateService\Clients\CommandUpdate\Preferences\Settings' -Name 'ProductVersion' -Value '5.0.0' -PropertyType String -Force -ea SilentlyContinue;
New-ItemProperty -LiteralPath 'HKLM:\SOFTWARE\DELL\UpdateService\Clients\CommandUpdate\Preferences\Settings' -Name 'AppCode' -Value 'Universal' -PropertyType String -Force -ea SilentlyContinue;
New-ItemProperty -LiteralPath 'HKLM:\SOFTWARE\DELL\UpdateService\Clients\CommandUpdate\Preferences\Settings\AdvancedDriverRestore' -Name 'IsAdvancedDriverRestoreEnabled' -Value 0 -PropertyType DWord -Force -ea SilentlyContinue;
New-ItemProperty -LiteralPath 'HKLM:\SOFTWARE\DELL\UpdateService\Clients\CommandUpdate\Preferences\Settings\General' -Name 'UserConsentDefault' -Value 0 -PropertyType DWord -Force -ea SilentlyContinue;
New-ItemProperty -LiteralPath 'HKLM:\SOFTWARE\DELL\UpdateService\Clients\CommandUpdate\Preferences\Settings\General' -Name 'SuspendBitLocker' -Value 1 -PropertyType DWord -Force -ea SilentlyContinue;
New-ItemProperty -LiteralPath 'HKLM:\SOFTWARE\DELL\UpdateService\Clients\CommandUpdate\Preferences\Settings\General' -Name 'SettingsModifiedTime' -Value '10/16/2023 9:19:49 PM' -PropertyType String -Force -ea SilentlyContinue;
New-ItemProperty -LiteralPath 'HKLM:\SOFTWARE\DELL\UpdateService\Clients\CommandUpdate\Preferences\Settings\Schedule' -Name 'DisableNotification' -Value 1 -PropertyType DWord -Force -ea SilentlyContinue;
New-ItemProperty -LiteralPath 'HKLM:\SOFTWARE\DELL\UpdateService\Clients\CommandUpdate\Preferences\Settings\Schedule' -Name 'ScheduleMode' -Value 'Monthly' -PropertyType String -Force -ea SilentlyContinue;
New-ItemProperty -LiteralPath 'HKLM:\SOFTWARE\DELL\UpdateService\Clients\CommandUpdate\Preferences\Settings\Schedule' -Name 'MonthlyScheduleMode' -Value 'WeekDayOfMonth' -PropertyType String -Force -ea SilentlyContinue;
New-ItemProperty -LiteralPath 'HKLM:\SOFTWARE\DELL\UpdateService\Clients\CommandUpdate\Preferences\Settings\Schedule' -Name 'WeekOfMonth' -Value 'last' -PropertyType String -Force -ea SilentlyContinue;
New-ItemProperty -LiteralPath 'HKLM:\SOFTWARE\DELL\UpdateService\Clients\CommandUpdate\Preferences\Settings\Schedule' -Name 'Time' -Value '2023-10-11T23:45:00' -PropertyType String -Force -ea SilentlyContinue;
New-ItemProperty -LiteralPath 'HKLM:\SOFTWARE\DELL\UpdateService\Clients\CommandUpdate\Preferences\Settings\Schedule' -Name 'DayOfWeek' -Value 'Sunday' -PropertyType String -Force -ea SilentlyContinue;
New-ItemProperty -LiteralPath 'HKLM:\SOFTWARE\DELL\UpdateService\Clients\CommandUpdate\Preferences\Settings\Schedule' -Name 'DayOfMonth' -Value '28' -PropertyType String -Force -ea SilentlyContinue;

🌐
GitHub
github.com › MicksITBlogs › PowerShell › blob › master › DellCommandUpdate.ps1
PowerShell/DellCommandUpdate.ps1 at master · MicksITBlogs/PowerShell
Uses Dell Command | Update to update all drivers, BIOS, and Dell applications. Everything can be entered through the parameters without the need to modify the code. ... If no BIOS Password is submitted, then the script will skip over clearing ...
Author   MicksITBlogs
🌐
Stack Overflow
stackoverflow.com › questions › 60304551 › how-to-manage-dcu-cli-gui-in-powershell-remote-job
driver - How to manage dcu-cli GUI in powershell remote job - Stack Overflow
$Trigger = New-ScheduledTaskTrigger -Once -At $(Get-Date).AddMinutes(1) $User = "SYSTEM" $Actions = New-ScheduledTaskAction -Execute "powershell.exe" -Argument "Start-Process 'C:\Program Files (x86)\Dell\CommandUpdate\dcu-cli.exe' -ArgumentList '/scan -report=`"C:\Temp\`"'" $Settings = New-ScheduledTaskSettingsSet -ExecutionTimeLimit "01:00" -AllowStartIfOnBatteries $Task = New-ScheduledTask -Action $Actions -Trigger $Trigger -Settings $Settings -Description 'Update process' Register-ScheduledTask -TaskName "DCU Updates Scan" -InputObject $Task -User $User -Force
🌐
GitHub
github.com › mhafez1978 › powershell-dell-dcu-update
GitHub - mhafez1978/powershell-dell-dcu-update · GitHub
Dell Command Update installed (dcu-cli.exe in Program Files) Intune or another enterprise tool to run the script as SYSTEM (64-bit PowerShell) 💡 If DCU isn’t installed, the script still produces a Summary report and exits 0.
Author   mhafez1978