This worklet will check if Dell Command Update is installed and install it from a network share if not found (this can be changed to download URL). Once install is verified it will scan for and install any available Dell firmware updates from the Dell catalog, silently with reboots disabled.
-Bitlocker must be suspended first to install BIOS updates which requires a BIOS password if your organization uses one.
I have my Dell machines run this policy on Tuesdays to catch the MS patch Tuesday reboot on Wednesdays.
# Define the path to Dell Command Update dcu-cli.exe if installed
$dcuCliPath = "C:\Program Files\Dell\CommandUpdate\dcu-cli.exe"
# Check if dcu-cli.exe exists
if (-Not (Test-Path -Path $dcuCliPath -PathType Leaf)) {
# Install Dell Command Update from the network location
$msiPath = "\\********\Installs\Dell\Dell Command Update\DellCommandUpdateApp.msi"
if (Test-Path -Path $msiPath -PathType Leaf) {
# Install Dell Command Update silently
Start-Process -FilePath "msiexec.exe" -ArgumentList "/i `"$msiPath`" /qn" -Wait
# Check again if dcu-cli.exe exists after installation
if (-Not (Test-Path -Path $dcuCliPath -PathType Leaf)) {
Write-Host "Dell Command Update installation failed."
exit 1
}
} else {
Write-Host "Dell Command Update MSI not found at $msiPath. Installation aborted."
exit 1
}
}
# Configure BitLocker and set BIOS password
Start-Process -FilePath "C:\Program Files\Dell\CommandUpdate\dcu-cli.exe" -ArgumentList "/configure -silent -autoSuspendBitLocker=enable -biosPassword=`"PASSWORD`"" -Wait
# Scan for updates
Start-Process -FilePath "C:\Program Files\Dell\CommandUpdate\dcu-cli.exe" -ArgumentList "/scan -silent" -Wait
# Apply updates silently no reboot
Start-Process -FilePath "C:\Program Files\Dell\CommandUpdate\dcu-cli.exe" -ArgumentList "/applyUpdates -reboot=disable -silent" -Wait