Software: https://www.dell.com/support/kbdoc/en-us/000177325/dell-command-update
Manual: https://www.dell.com/support/product-details/en-us/product/command-update/resources/manuals
Install Software:
Dell-Command-Update-Windows-Universal-Application.EXE /sUpdate Code:
$logFile = "C:\Temp\$(Get-Date -Format 'MM-dd-yyyy')-DellCommandUpdateLog.log"
# Define the path to the Dell Command Update CLI
$exePath = "C:\Program Files\Dell\CommandUpdate\dcu-cli.exe"
# Prepare the argument string (safely quote the log file path)
$args = "/applyUpdates -silent -autoSuspendBitLocker=enable -outputLog=`"$logFile`""
# Run the command natively in PowerShell
Start-Process -FilePath $exePath -ArgumentList $args -Wait -NoNewWindowSoftware: http://ftp.ext.hp.com//pub/caps-softpaq/cmit/HPIA.html
Manual: https://ftp.hp.com/pub/caps-softpaq/cmit/whitepapers/HPIAUserGuide.pdf
Install Software:
# Extract HP Image Assistant files (silent extraction)
Start-Process -FilePath "C:\Temp\hp-hpia-x.x.x.exe" -ArgumentList "/s", "/e", "/f C:\Temp\HP\HPIA\" -WaitUpdate Code:
# Set date variable for timestamped subfolders and files
$date = Get-Date -Format "MMddyyyy"
# Define folder paths
$BaseFolder = "C:\Temp\HP\HPIA"
$InstallerFolder = Join-Path -Path $BaseFolder -ChildPath "Installers"
$ReportsFolder = Join-Path -Path $BaseFolder -ChildPath "Reports"
$LogsFolder = Join-Path -Path "C:\Temp\HP" -ChildPath "Logs" # Keeping Logs outside HPIA folder
$DailyReportFolder = Join-Path -Path $ReportsFolder -ChildPath ("Reports_" + $date)
$DailyLogFolder = Join-Path -Path $LogsFolder -ChildPath ("Logs_" + $date)
# Create necessary base folders
New-Item -Path "C:\Temp\HP" -ItemType Directory -Force
New-Item -Path $LogsFolder -ItemType Directory -Force
New-Item -Path $BaseFolder -ItemType Directory -Force
New-Item -Path $InstallerFolder -ItemType Directory -Force
New-Item -Path $ReportsFolder -ItemType Directory -Force
New-Item -Path $DailyReportFolder -ItemType Directory -Force
New-Item -Path $DailyLogFolder -ItemType Directory -Force
# Build argument list for generating the update report
$ReportFile = Join-Path -Path $DailyReportFolder -ChildPath ("UpdateReport_" + $date + ".html")
$argListReport = @(
'/Operation:Analyze',
'/Action:List',
'/Silent',
'/Debug',
"/ReportFilePath:`"$ReportFile`""
)
Start-Process -FilePath "C:\Temp\HP\HPIA\HPImageAssistant.exe" -ArgumentList $argListReport -Wait
# Build argument list for installing updates
$argListInstall = @(
'/Operation:Analyze',
'/Action:Install',
'/Silent',
'/Debug',
"/SoftPaqDownloadFolder:`"$InstallerFolder`"",
"/LogFolder:`"$DailyLogFolder`"",
'/Category:All',
'/Selection:All'
)
Start-Process -FilePath "C:\Temp\HP\HPIA\HPImageAssistant.exe" -ArgumentList $argListInstall -Wait
Write-Host "Installation complete."
Write-Host "Reports are available in: $DailyReportFolder"
Write-Host "Logs are available in: $DailyLogFolder"
Software (Thin Client): https://support.lenovo.com/us/en/solutions/HT037099
Manual: https://download.lenovo.com/pccbbs/mobiles_pdf/tvsu5_mst_en.pdf
Install Software:
lenovo_thininstaller.exe /verysilent /norestartUpdate Code:
$packagesPS = "1,3,7,8"
$LogPS = "C:\temp\ThinInstallerLog.log"
Start-Process -FilePath "C:\Program Files (x86)\Lenovo\ThinInstaller\ThinInstaller.exe" `
-ArgumentList "/CM", "-search", "O", "-action", "INSTALL", "-noicon", "-includerebootpackages", "$packagesPS", "-noreboot" `
-Wait -NoNewWindow -RedirectStandardOutput "$LogPS"