Viele neue OEM Geräte kommen mit zusätzlicher Security Suite, Trial AV und Hersteller Tools, die in Managed Umgebungen oft nicht gewünscht sind. Das kostet Boot Zeit, sorgt für Konflikte mit Defender Policies und macht den ersten Benutzerstart unnötig schwer.
In diesem Beitrag bekommst du zwei saubere Wege:
- Autopilot Reset direkt am Anfang und danach nur deine Unternehmenskonfiguration zulassen.
- OEM spezifisches First Script für Dell, HP oder Lenovo, damit unerwünschte Software vor dem Benutzerbetrieb entfernt wird.
Startentscheidung
- Dell
- HP
- Lenovo
Wenn du möglichst wenig Altlasten willst, nimm zuerst Autopilot Reset. Wenn ein kompletter Reset organisatorisch nicht möglich ist, nimm das passende OEM Script.
Option A Autopilot Reset direkt am Start
Nutze diesen Weg, wenn das Gerät schon einmal eingerichtet wurde oder wenn du sicherstellen willst, dass wirklich nur dein Zielzustand aktiv bleibt.
Ablauf:
- Gerät in Intune prüfen und Compliance abwarten.
- In Intune unter Devices das Zielgerät öffnen.
- Aktion Autopilot Reset auslösen.
- Gerät neu durch ESP laufen lassen.
Hinweis:
Autopilot Reset entfernt Benutzerdaten und setzt den Benutzerkontext zurück, behält aber den Entra Join und MDM Bindung. Das ist oft der schnellste Weg zu einem kontrollierten Corporate Build.
Option B OEM First Script
Setze das Script als Intune Plattformscript in Device Context auf 64 Bit Host. Idealer Zeitpunkt ist direkt vor dem ersten produktiven Benutzerlogin.
Gemeinsame Sicherheitsregeln
- Immer zuerst in Pilotgruppe testen.
- Keine Entfernung von Microsoft Defender Komponenten.
- Neustart nach Deinstallation einplanen.
- Detection über Registry oder Produktname dokumentieren.
Dell First Script
$ErrorActionPreference = 'SilentlyContinue'
$targets = @(
'Dell Optimizer',
'Dell SupportAssist',
'Dell Digital Delivery',
'McAfee',
'Norton'
)
function Remove-AppByName {
param([string]$Name)
$apps = Get-ItemProperty HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\* , HKLM:\Software\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\* |
Where-Object { $_.DisplayName -and $_.DisplayName -like "*$Name*" }
foreach ($app in $apps) {
$uninstall = $app.UninstallString
if (-not $uninstall) { continue }
if ($uninstall -match 'msiexec') {
$args = $uninstall.Replace('msiexec.exe', '').Replace('/I', '/X') + ' /qn /norestart'
Start-Process -FilePath 'msiexec.exe' -ArgumentList $args -Wait
}
else {
Start-Process -FilePath 'cmd.exe' -ArgumentList "/c $uninstall /quiet /norestart" -Wait
}
}
}
foreach ($target in $targets) {
Remove-AppByName -Name $target
}
Write-Host 'Dell First Script abgeschlossen'HP First Script
$ErrorActionPreference = 'SilentlyContinue'
$targets = @(
'HP Wolf Security',
'HP Sure Click',
'HP Sure Sense',
'HP Support Assistant',
'McAfee',
'Norton'
)
function Remove-AppByName {
param([string]$Name)
$apps = Get-ItemProperty HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\* , HKLM:\Software\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\* |
Where-Object { $_.DisplayName -and $_.DisplayName -like "*$Name*" }
foreach ($app in $apps) {
$uninstall = $app.UninstallString
if (-not $uninstall) { continue }
if ($uninstall -match 'msiexec') {
$args = $uninstall.Replace('msiexec.exe', '').Replace('/I', '/X') + ' /qn /norestart'
Start-Process -FilePath 'msiexec.exe' -ArgumentList $args -Wait
}
else {
Start-Process -FilePath 'cmd.exe' -ArgumentList "/c $uninstall /quiet /norestart" -Wait
}
}
}
foreach ($target in $targets) {
Remove-AppByName -Name $target
}
Write-Host 'HP First Script abgeschlossen'Lenovo First Script
$ErrorActionPreference = 'SilentlyContinue'
$targets = @(
'Lenovo Vantage',
'Lenovo Now',
'Lenovo Utility',
'McAfee',
'Norton'
)
function Remove-AppByName {
param([string]$Name)
$apps = Get-ItemProperty HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\* , HKLM:\Software\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\* |
Where-Object { $_.DisplayName -and $_.DisplayName -like "*$Name*" }
foreach ($app in $apps) {
$uninstall = $app.UninstallString
if (-not $uninstall) { continue }
if ($uninstall -match 'msiexec') {
$args = $uninstall.Replace('msiexec.exe', '').Replace('/I', '/X') + ' /qn /norestart'
Start-Process -FilePath 'msiexec.exe' -ArgumentList $args -Wait
}
else {
Start-Process -FilePath 'cmd.exe' -ArgumentList "/c $uninstall /quiet /norestart" -Wait
}
}
}
foreach ($target in $targets) {
Remove-AppByName -Name $target
}
Write-Host 'Lenovo First Script abgeschlossen'Intune Deployment Kurzsetup
- Intune Admin Center öffnen.
- Devices wählen.
- Scripts and remediations öffnen.
- Platform script erstellen.
- Gerätgruppe je OEM zuweisen.
- Danach Reboot erzwingen oder in ESP Reihenfolge einplanen.