Windows 10

CMD mit Adminrechten staren

Es muss nicht immer der komplizierte Weg über die rechte Maustaste sein um CMD mehr Rechte zu verschaffen.
Einfach WIN drücken, CMD schreiben, mit CTRL+SHIFT+ENTER bestätigen Eine kurze Nachfrage und schon läuft es :-)

 

Wenn Windows 10 zickt...
Ab Windows 10 sollte man erst mal nachsehen, ob alle Reparaturtools vorhanden und intakt sind.
Dazu "DISM /Online /Cleanup-Image /CheckHealth" eingeben und nachsehen.

Nun mit SFC (System File Checker) nachsehen. (Geht auch schon unter W7)
Die Eingabe lautet "sfc /scannow". Das dauert aber ein Weilchen!

 

Wenn wir schon dabei sind... Powershell - Dateien lassen sich nicht so einfach als Admin starten.
Das können wir ändern. Folgenden Text als "StartePowerShellMitRechtsklickAlsAdmin.cmd" speichern, die Datei wie soeben gelernt als Admin starten und die Sache ist erledigt.

@ECHO OFF
REG ADD "HKCR\Microsoft.PowerShellScript.1\Shell\runas" /v HasLUAShield /t REG_SZ /d "" /f
REG ADD "HKCR\Microsoft.PowerShellScript.1\Shell\runas\command" /ve /t REG_EXPAND_SZ /d "\"%%SYSTEMROOT%%\System32\WindowsPowerShell\v1.0\powershell.exe\" -executionpolicy bypass -nologo -file \"%%1\"" /f
EXIT

 

PowerShell

Manche Scripte brauchen Adminrechte.
Da gab es in heise.de vor einigen Jahren einen guten Beitrag wie sich das Script bei Bedarf selber Rechte anfordern kann.

 $identity = [System.Security.Principal.WindowsIdentity]::GetCurrent()
$princ = New-Object System.Security.Principal.WindowsPrincipal($identity)
if(!$princ.IsInRole( `
[System.Security.Principal.WindowsBuiltInRole]::Administrator))
{
$powershell = [System.Diagnostics.Process]::GetCurrentProcess()
$psi = New-Object System.Diagnostics.ProcessStartInfo $powerShell.Path
$script = $MyInvocation.MyCommand.Path
$prm = $script
foreach($a in $args) {
$prm += ' ' + $a
}
$psi.Arguments = $prm
$psi.Verb = "runas"
[System.Diagnostics.Process]::Start($psi) | Out-Null
return;
}

Wenn ein PowerShell-Skript Administratorrechte braucht, kann es sich die mit einem Neustart seiner selbst verschaffen.