Beenden aller automatischen Updates Windows 10

75

Wir haben einige Computer auf Windows 10 aktualisiert und festgestellt, dass es einige Updates gab, die nach Bedarf aktualisiert wurden. Ich stellte jedoch fest, dass es keine Möglichkeit gab, den Download zu stoppen, ähnlich wie unter Windows 7 und 8.1. Die einzige Möglichkeit, den Download zu stoppen, bestand darin, den Windows Update- Dienst zu beenden .

Meine Frage ist, kennt jemand eine Möglichkeit, automatische Updates zu stoppen, oder ist das Stoppen des Dienstes die einzige Lösung?

Izzy
quelle
4
Wenn Sie Windows 10 Home verwenden, ist dies nicht möglich. Wenn Sie mit Windows 10 Professional arbeiten, können Sie Aktualisierungen um bis zu 8 Monate verschieben. Wenn Sie mit Windows 10 Enterprise arbeiten, können Sie Aktualisierungen verschieben, indem Sie den gewünschten LSTB angeben. Sie können ein Tool herunterladen, mit dem Sie einzelne Updates verschieben können, wenn sie Probleme verursachen. Diese Frage wurde bereits mehrmals gestellt. .
Ramhound
Letztendlich muss Ihr System auch unter Windows 10 Professional über alle erforderlichen Updates verfügen, um zukünftige Sicherheitsupdates zu erhalten. KB3073930 ist das Tool, das Sie benötigen, um einzelne Aktualisierungen auszublenden oder zu verschieben.
Ramhound
@Ramhound Ich verstehe, dass Sicherheitsupdates usw. erforderlich sind, aber manchmal möchten Sie sie nur anhalten und später starten. Wir betreiben eine Pro-Version. Würdest du zufällig wissen, wo ich das Tool bekommen kann, das du in deinem Kommentar erwähnt hast?
Izzy,
2
Anhalten und Aufschieben ist zwei verschiedene Dinge.
Moab,
2
Bitte beachten Sie, dass alle Antworten hier nur Aktualisierungen von Windows Update betreffen. Es ist jedoch nicht klar, ob die Frage dies abdecken soll. In Windows 10 sind anscheinend zwei weitere Methoden zur Aktualisierung integriert: Die Aktualisierung der Gerätetreiber wird separat gesteuert (System & rarr; Erweiterte Systemeinstellungen & rarr; Hardware & rarr; Geräteinstallationseinstellungen scheint dies zu berücksichtigen). Die automatische Aktualisierung der Store-Apps wird über gesteuert Store (Ich denke, dies verhindert auch, dass Candy Crush Soda Saga zum Beispiel automatisch installiert wird).
Doshea

Antworten:

40

Wenn Sie die Pro Edition haben, öffnen Sie den Gruppenrichtlinien-Editor (gpedit.msc) und suchen Sie nach dem Configure automatic updatesEintrag unter:

computer configuration → administrative templates → windows components → windows update

Bildbeschreibung hier eingeben

und wählen Sie Notify for download and notify for install.

Wenn Windows neue Updates erkennt , wird eine Toastbenachrichtigung angezeigt .

Bildbeschreibung hier eingeben

Sie können auch die Problembehandlung von Update KB3073930 verwenden , um einige problematische Updates zu deaktivieren, damit sie nicht erneut installiert werden.

Bildbeschreibung hier eingeben

Bildbeschreibung hier eingeben

Dies ist die offizielle Methode von Microsoft, um die Installation unerwünschter Updates und Treiber zu verhindern.

Es gibt jedoch ein Drittanbieter-Tool namens Windows Update MiniTool , mit dem Sie auswählen können, welche Updates installiert werden können, und das das Blockieren von Updates wie in früheren Windows-Versionen ermöglicht.

Bildbeschreibung hier eingeben

Eine Alternative zum standardmäßigen Windows Update Was Sie tun können:
• Nach Updates suchen • Updates
herunterladen
• Updates
installieren • Installierte Updates löschen
Unerwünschte Updates
ausblenden • Direkte Links zu den * .cab / * .Exe / * .Psf-Update-Dateien erhalten
• Update - Verlauf
Automatische Updates konfigurieren
• Dieses Werkzeug ist wie das externe Powermodul PSWindowsUpdate, aber viel weiter fortgeschritten und benutzerfreundliche Funktionen
• Das Werkzeug setzt und verwenden gleiche WU - Infrastruktur, die alle das Herunterladen sind durch WU es ist kein Download -

Der Benutzer slavanap hat ein zweites Tool in einem Kommentar veröffentlicht , mit dem Sie Updates selektiv installieren können. Es heißt Windows10 Manual Update und ist auf github verfügbar :

Bildbeschreibung hier eingeben.

Im Windows 10-Ersteller-Update gibt es eine Option , um Windows-Updates für 35 Tage zu stoppen:

Bildbeschreibung hier eingeben

Bildbeschreibung hier eingeben

Bildbeschreibung hier eingeben

Bildbeschreibung hier eingeben

Bildbeschreibung hier eingeben

unter Einstellungen App, wo die Windows Update-Optionen sind.

magicandre1981
quelle
2
Was ist, wenn Sie die Home Edition haben?
Colonel Panic
1
@ColonelPanic versuchen, den Wert AUOptions unter HKEY_LOCAL_MACHINE \ Software \ Policies \ Microsoft \ Windows \ WindowsUpdate \ AU auf 2 zu setzen . Funktioniert das?
magicandre1981
1
Ich denke nicht, dass MiniTool Open Source ist. Bitte beachten Sie dieses Open - Source die einfachste Lösung , wie Windows 10 Update Wartung ähnlich wie pervious Windows - Versionen ausführen github.com/slavanap/Windows10ManualUpdate
Vyacheslav Napadovsky
3
@ magicandre1981 Sabotage? Das ist nicht gerade ein "Dankeschön" für die Reparatur einer Sackgasse.
2
-1 nicht, weil du schuld bist, sondern weil deine Antwort jetzt nicht mehr aktuell ist. Windows aktiviert Windows Update jetzt auch nach all den klassischen Problemumgehungen wieder.
Mehrdad
10

Einer der umstrittensten Aspekte bei Windows 10 ist die Entscheidung von Microsoft, Updates obligatorisch zu machen. Wenn Sie Windows 10 Pro, Enterprise oder Education Edition verwenden, können Sie Aktualisierungen verschieben, aber nicht sofort ablehnen .

Wenn Sie nicht zufrieden sind mit der erzwungenen Installation von Updates auf Ihrem System durch Microsoft, können Sie diese Funktion mithilfe von W10Privacy blockieren .

Wenn Sie noch nie von diesem Programm gehört haben, sollten Sie es sich unbedingt ansehen, da Sie mit der Software die Kontrolle über die zahlreichen Datenschutzfunktionen von Windows 10 haben. So können Sie verhindern, dass das Betriebssystem bei Ihren Aktivitäten nachschaut. Die Optionen sind farblich gekennzeichnet, sodass Sie auf einen Blick sehen können, ob Änderungen / Deaktivierungen sicher sind oder nicht.

In W10Privacy 2 können Sie das Programm jetzt so einstellen, dass der Update-Mechanismus von Windows 10 deaktiviert und durch einen eigenen ersetzt wird. Benutzer können auswählen, welche Updates installiert und welche ignoriert werden sollen. Dies sollte nicht jeder tun, aber Sie können die erforderlichen Schritte leicht rückgängig machen.

Bevor Sie diese Funktion verwenden können, müssen Sie einige zusätzliche Komponenten herunterladen. Folge diesen Schritten:

  • Laden Sie W10Privacy 2 herunter und entpacken Sie es in einen Ordner auf Ihrer Festplatte.
  • Laden Sie PsExec (Teil des PsTools- Pakets ) herunter und kopieren Sie es in den Ordner W10Privacy.
  • Laden Sie das Windows Update PowerShell-Modul von Technet herunter und entpacken Sie es in einen Unterordner im Ordner W10Privacy.
  • Klicken Sie mit der rechten Maustaste W10Privacy.exeund wählen Sie im Kontextmenü die Option Als Administrator ausführen. Wählen Sie diese Option, um einen Systemwiederherstellungspunkt zu erstellen. Es lohnt sich auch, eine vollständige Systemsicherung durchzuführen (nur für den Fall).
  • Gehen Sie zu Extras> Windows-Updates, um die Optionen zu verwalten. Es gibt sechs verschiedene Kontrollkästchen. Standardmäßig sind keine aktiviert. Sie sind:
  • Das PSWindows-Update-Modul ist vorhanden (muss zuvor vom Benutzer im Ordner W10Privacy bereitgestellt werden).
  • PsExec.exe im Ordner W10Privacy (muss vom Benutzer bereitgestellt werden). W10Datenschutzanpassung des PSWindows-Update-Moduls.
  • Konfigurieren Sie einen gefälschten WSUS-Server.

  • W10Privacy befindet sich in einem Pfad / Ordner ohne Leerzeichen. Berücksichtigen Sie keine Treiber in der Update-Suche.

  • Angenommen, Sie möchten Updates manuell verwalten, aktivieren Sie die ersten fünf Optionen. Mit der sechsten Option können Sie entscheiden, ob Treiber neben Aktualisierungen aufgelistet werden sollen. Es liegt an dir.
  • Klicken Sie auf Geänderte Einstellungen festlegen und dann auf die Schaltfläche Nach Updates suchen. Es werden alle neuen Updates angezeigt, die noch installiert werden müssen, und Sie können auswählen, welche Aktion ausgeführt werden soll.

Bildschirmfoto

Sobald Sie für Ihre Updates verantwortlich sind, führen Sie die Software regelmäßig aus und stellen Sie sicher, dass Sie keine wichtigen Updates verpassen.

Bildbeschreibung hier eingeben

Credits:

  1. So erhalten Sie die vollständige Kontrolle über die automatischen Updates von Windows 10
xavier_fakerat
quelle
1
Die beste Lösung, da Windows überhaupt keine Updates sehen kann.
Marcus
oh nein .. Warum gibt es keinen einzigen Befehl. Jemand gibt mir Tür, dieses Fenster ist hoch, um herumzulaufen.
Mustkeem K
6

Mit Hilfe von @Ramhound habe ich herausgefunden, wie automatische Updates unter Windows 10 gestoppt werden können.

Bitte beachten Sie, dass dies für Windows 10 Pro gilt, da es sich um die Version handelt, die ich verwende.

Um die automatischen Updates zu stoppen, können Sie folgende Schritte ausführen:

  1. Einstellungen öffnen
  2. Klicken Sie auf Update & Sicherheit
  3. Klicke auf Advanced options Bildbeschreibung hier eingeben
  4. Stellen Sie sicher, dass die Defer upgradesOption aktiviert ist Bildbeschreibung hier eingeben
  5. Schließen Sie das Einstellungsfenster und fertig!

Aktualisieren

Wie in den Kommentaren von @Vinayak erwähnt, ist die Option "Zurückstellen" jetzt auch für Privatanwender verfügbar. Weitere Informationen hier

Izzy
quelle
Während Sie dort nachsehen, können Sie feststellen, ob es einen Windows-Aktualisierungsdienst gibt, der nur in Diensten deaktiviert werden kann. Wuauserv oder wuaueng.dll oder so? für diejenigen, die eine andere Methode verwenden könnten?
Psycogeek
1
Der @ Psycogeek- WuauservDienst ist da und kann gestoppt / deaktiviert werden. So habe ich ursprünglich die Updates gestoppt
Izzy
5
Vieles im Web klingt so, als würde die Welt aufhören, sich zu drehen, wenn die Windows 10-Updates gestoppt werden :-) und wie die Schaltfläche in einigen Editionen nicht vorhanden ist. Ich gehe davon aus, dass Sie keine Probleme damit hatten? Die Traumpolizei ist nicht in Ihre Albträume eingedrungen, das Betriebssystem ist nicht zu einem Ball zusammengebrochen, und dabei wurden keine Haustiere verletzt :-) Ich denke, diese Fragen und Antworten hier sind gut gemacht und können für ähnliche W10-Update-Kontrollen wiederverwendet werden Fragen .
Psycogeek,
5
Beachten Sie, dass Microsoft eingebrochen ist und Upgrades verzögern nun auch für Windows 10 Home-Benutzer verfügbar ist .
Vinayak
1
Aufschieben stoppt das Upgrade auf eine neuere Version wie 1511 (November 2015 Update) oder 1607 (Jubiläums-Update im Juli 2016) und Sie erhalten weiterhin automatische Updates für die ältere Version.
magicandre1981
4

windows_update_toggle
Umfassende Überarbeitung früherer Batch-Dateien, um die Suite in ein einziges Skript umzuwandeln, wobei Best Practices blockiert werden!
Beobachten Sie es in Aktion

Desktop-Kontextmenü mit der rechten Maustaste, dynamische Benutzeroberfläche mit Optionen für alles!
Ein- / Ausschalten aller Blöcke, Erneuern (aus Pastebin) oder Deinstallieren von Skriptoptionen

Update-Listen mit Zähler verstecken / einblenden / installieren!
Listen werden automatisch aktualisiert, wenn Windows Sie über MusNotification nervt!

Unabhängiges Blockieren von Build-Upgrades, automatischen Installationen, Downloads und sicherem Service-
IFEO-Blockieren ohne zerstörerische Eigentümerwechsel, Löschen von Dateien oder Entfernen von Aufgaben

Fokus liegt auf Defender-Updates, die unabhängig voneinander funktionieren Durch
Deaktivieren der automatischen Updates von Windows Mayhem wird die integrierte Schutzschicht im
Gegensatz zu allen anderen "Management" -DIY-Updates nicht beeinträchtigt.

windows_update_toggle.bat

@set @version=10.0 /* &title Windows Update Toggle
@echo off &set "verbose="
echo.
echo      ---------------------------------------------------------------------
echo     :                  Windows Update Toggle v10.0 final                  :
echo     :---------------------------------------------------------------------:
echo     :      Block/Enable Upgrades, Installs, Downloads(!), Service(!)      :
echo     :         Disable/Enable Reporting, Speech, SearchUI, Defender        :
echo     :        Hide/Unhide/Apply update lists with count and max size       :
echo     :       Preset for Defender updates and Store downloads working       :
echo     :                                                                     :
echo     :     Toggle from the comfort of Desktop right-click context menu     :
echo      ---------------------------------------------------------------------
echo.
:: AveYo, 2018-05-13

if %1.==. timeout /t 10 &call wscript /e:JScript "%~f0" runas setup &exit/b &rem : no arguments, run setup elevated
if %1.==shift. shift &shift &rem : if loaded by WScript, shift args to prevent loop and restore %0
if %1.==. echo ERROR! &timeout /t 5 &exit/b : must have at least one arg

:: Setup executable blocking via ifeo
set notifier=EOSNotify MusNotification
set upgrader=Windows10UpgraderApp Windows10Upgrade WindowsUpdateBox SetupHost setupprep
set installer=wuauclt
set reporter=wermgr wsqmcons DiagTrackRunner DiagnosticsHub.StandardCollector.Service CompatTelRunner
set speecher=SpeechRuntime SpeechModelDownload
set searcher=SearchUI

set "exe=%notifier% %upgrader% %installer% %reporter%"
set "noop=%SystemRoot%\system32\systray.exe"
set "ifeo=HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options"
set "menu=HKCR\DesktopBackground\shell\WUT"
set "f0=%SystemRoot%\windows_update_toggle.bat"
set "task=wscript.exe /e:JScript \"%f0%\" schtasks WUT"
set "DefMUS={MicrosoftUpdateServer|MMPC|InternalDefinitionUpdateServer}"
set "DefMMPC={MMPC|MicrosoftUpdateServer|InternalDefinitionUpdateServer}"
set ".=>nul 2>nul"
for /f "tokens=2 delims=1234567890" %%# in ('shutdown /?^|findstr /bc:"E"') do set "[T]=%%#" &rem : cosmetic usage in menus
if defined verbose (echo on &set ".=" &set "window=") else set "window=hide"
call :%~1 %2 %3 %4 %5 %6 %7 %8 %9 &rem : launch secondary functions below dinamically, passing next args
echo.
echo Done! Use the Desktop right-click context menu to toggle, renew or uninstall
if "%~1"=="setup" (pause) else if defined verbose timeout /t 5
exit/b : End of main script, functions below

:refresh context menu
echo %0 %*
call :reg_query "HKLM\SOFTWARE\WUT.bat" NoBlock noblock
if "%noblock%"=="Enable" exit/b
call :reg_query "%menu%0pending" MUIVerb pending
if defined pending exit/b
for %%# in ("1hide" "2unhide" "3apply") do reg delete "%menu%%%~#" /f %.%
reg add "%menu%0pending" /v MUIVerb /d "Pending.." /f %.%
reg add "%menu%0pending" /v SubCommands /d "" /f %.%
call :reg_query "HKLM\SOFTWARE\WUT.bat" NoRefresh norefresh
if "%norefresh%"=="Disable" start "WUT" wscript /e:JScript "%f0%" WUTRefresh
call :status SetupHost
reg add "%menu%\shell\3Upgrades"   /v MUIVerb /d "Upgrades %[T]% [setuphost]    %toggle%" /f %.%
reg add "%menu%\shell\3Upgrades\command" /ve /d "%task%\upgrades" /f %.%
call :status wuauclt
reg add "%menu%\shell\4Installs"   /v MUIVerb /d "Installs %[T]% [wuauclt]    %toggle%" /f %.%
reg add "%menu%\shell\4Installs\command" /ve /d "%task%\installs" /f %.%
for /f "tokens=3" %%# in ('sc qc TrustedInstaller ^| find /I "WUTblocked"') do set "blocked=%%#"
if /i "%blocked%"=="[WUTblocked]" (set "toggle=blocked") else set "toggle=enabled"
reg add "%menu%\shell\5Downloads"  /v MUIVerb /d "Downloads ( ! ) %[T]% [trustedinstaller]    %toggle%" /f %.%
reg add "%menu%\shell\5Downloads\command" /ve /d "%task%\downloads" /f %.%
for /f "tokens=3" %%# in ('sc qc wuauserv ^| find /I "WUTblocked"') do set "blocked=%%#"
if /i "%blocked%"=="rpcss[WUTblocked]" (set "toggle=blocked") else set "toggle=enabled"
reg add "%menu%\shell\6Service"    /v MUIVerb /d "Service ( ! ) %[T]% [wuauserv]    %toggle%" /f %.%
reg add "%menu%\shell\6Service\command" /ve /d "%task%\service" /f %.%
call :status wermgr
reg add "%menu%\shell\81Report"    /v MUIVerb /d "Report    %[T]% %toggle%" /f %.%
reg add "%menu%\shell\81Report\command" /ve /d "%task%\report" /f %.%
call :status SpeechRuntime
reg add "%menu%\shell\82Speech"    /v MUIVerb /d "Speech    %[T]% %toggle%" /f %.%
reg add "%menu%\shell\82Speech\command" /ve /d "%task%\speech" /f %.%
call :status SearchUI
reg add "%menu%\shell\83Search"    /v MUIVerb /d "SearchUI  %[T]% %toggle%" /f %.%
reg add "%menu%\shell\83Search\command" /ve /d "%task%\search" /f %.%
set "defstatus=if((Get-MpPreference).DisableRealtimeMonitoring){write-host stopped}else{write-host enabled}"
for /f "delims=" %%# in ('call powershell.exe -c "%defstatus%;"') do set "toggle=%%#"
reg add "%menu%\shell\84Defender"  /v MUIVerb /d "Defender  %[T]% %toggle%" /f %.%
reg add "%menu%\shell\84Defender\command" /ve /d "%task%\defender" /f %.%
if "%norefresh%"=="Enable" reg delete "%menu%0pending" /f %.%
exit/b

:toggle WUT
echo %0 %*
call :reg_query "HKLM\SOFTWARE\WUT.bat" NoBlock noblock
if "%noblock%"=="Disable" (set "toggle=Enable") else set "toggle=Disable"
for %%# in (NoBlock NoRefresh) do reg add "HKLM\SOFTWARE\WUT.bat" /v %%# /d "%toggle%" /f %.%
:: Generate WUT main context menu
for %%# in ("" "0pending" "1hide" "2unhide" "3apply") do reg delete "%menu%%%~#" /f %.%
reg add "%menu%" /v MUIVerb /d "Windows Update Toggle" /f %.%
reg add "%menu%" /v Icon /d "appwiz.cpl,5" /f %.%
reg add "%menu%" /v SubCommands /d "" /f %.%
reg add "%menu%\shell\9Setup" /v MUIVerb /d "windows_update_toggle.bat v10.0" /f %.%
reg add "%menu%\shell\9Setup" /v SubCommands /d "" /f %.%
reg add "%menu%\shell\9Setup\shell\1Toggle" /v MUIVerb /d "%toggle%" /f %.%
reg add "%menu%\shell\9Setup\shell\2Renew"  /v MUIVerb /d "Renew" /f %.%
reg add "%menu%\shell\9Setup\shell\3Remove" /v MUIVerb /d "Remove" /f %.%
reg add "%menu%\shell\9Setup\shell\1Toggle\command" /ve /d "%task%\toggle" /f %.%
reg add "%menu%\shell\9Setup\shell\2Renew\command"  /ve /d "%task%\renew" /f %.%
reg add "%menu%\shell\9Setup\shell\3Remove\command" /ve /d "%task%\remove" /f %.%
if "%toggle%"=="Disable" (
 reg add "%menu%\shell\1Refresh" /v MUIVerb /d "Refresh" /f %.%
 reg add "%menu%\shell\1Refresh\command" /ve /d "%task%\refresh" /f %.%
 reg add "%menu%\shell\2Lists" /v MUIVerb /d "Hide / Unhide / Apply %[T]% enabled" /f %.%
 reg add "%menu%\shell\2Lists\command" /ve /d "%task%\lists" /f %.%
 reg add "%menu%\shell\7Repair"     /v MUIVerb /d "Troubleshooter" /f %.%
 reg add "%menu%\shell\7Repair\command" /ve /d "%task%\repair" /f %.%
)
:: Disabling automatic updates hinders Defender, so get definitions from MMPC first
if "%toggle%"=="Enable" ( set "DefSig=%DefMUS%" ) else set "DefSig=%DefMMPC%"
start "WUT:MpPref" wscript /e:JScript "%~f0" cmd "powershell.exe -c `Set-MpPreference -SignatureFallbackOrder %DefSig%;`"
:: Default services
sc config wuauserv type= share depend= rpcss %.%
sc config TrustedInstaller type= own depend= / %.%
:: Toggle ifeo exe blocking
for %%# in (%exe% %speech% %search%) do reg delete "%ifeo%\%%#.exe" /f %.%
if "%toggle%"=="Enable" exit/b WUT disabled, so skip the code below
for %%# in (%exe%) do reg add "%ifeo%\%%#.exe" /v Debugger /d "%noop%" /f %.% &taskkill /im "%%#.exe" /t /f %.%
:: WUTRefresh hijacking
for %%# in (MusNotification EOSNotify) do reg add "%ifeo%\%%#.exe" /v Debugger /d "%SystemRoot%\WUTRefresh.bat" /f %.%
call :refresh menu
exit/b

:hide update
echo %0 %*
call :reg_query "%menu%1hide\shell\%~1" MUIVerb updatefound
echo -%updatefound%
if not defined updatefound exit/b
call wscript /e:JScript "%f0%" hide "%updatefound%"
exit/b

:unhide update
echo %0 %*
call :reg_query "%menu%2unhide\shell\%~1" MUIVerb updatefound
echo -%updatefound%
if not defined updatefound exit/b
call wscript /e:JScript "%f0%" unhide "%updatefound%"
exit/b

:apply update
echo %0 %*
call :reg_query "%menu%3apply\shell\%~1" MUIVerb updatefound
echo -%updatefound%
if not defined updatefound exit/b
:: Temporarily unblock downloads and installs
call :reg_query "%ifeo%\wuauclt.exe" Debugger installs_blocked
for /f "tokens=3" %%# in ('sc qc TrustedInstaller ^| find /I "WUTblocked"') do set "downloads_blocked=%%#"
call wscript /e:JScript "%f0%" apply "%updatefound%"
:: Restore block
if defined installs_blocked reg add "%ifeo%\wuauclt.exe" /v Debugger /d "%noop%" /f %.% &taskkill /im "wuauclt.exe" /t /f %.%
if defined downloads_blocked sc config TrustedInstaller type= own depend= [WUTblocked] %.%
exit/b

:lists
echo %0 %*
call :reg_query "HKLM\SOFTWARE\WUT.bat" NoRefresh norefresh
if "%norefresh%"=="Disable" ( set "norefresh=Enable" &set "toggle=disabled") else set "norefresh=Disable" &set "toggle=enabled"
reg add "HKLM\SOFTWARE\WUT.bat" /v NoRefresh /d "%norefresh%" /f %.%
reg add "%menu%\shell\2Lists" /v MUIVerb /d "Hide / Unhide / Apply %[T]% %toggle%" /f %.%
reg add "%menu%\shell\1Refresh" /v MUIVerb /d "Refresh" /f %.%
reg add "%menu%\shell\1Refresh\command" /ve /d "%task%\refresh" /f %.%
if "%norefresh%"=="Enable" (
 reg delete "%menu%0pending" /f %.% &reg delete "%menu%1hide" /f %.% &reg delete "%menu%2unhide" /f %.%
 reg delete "%menu%3apply" /f %.% &reg delete "%menu%\shell\1Refresh" /f %.%
)
call :refresh lists
exit/b

:upgrades
echo %0 %*
call :flip SetupHost
reg add "%menu%\shell\3Upgrades"   /v MUIVerb /d "Upgrades %[T]% [setuphost]    %toggle%" /f %.%
for %%# in (%upgrader%) do if defined block (
 reg delete "%ifeo%\%%#.exe" /f %.%
) else (
 reg add "%ifeo%\%%#.exe" /v Debugger /d "%noop%" /f %.% &taskkill /im "%%#.exe" /t /f %.%
)
exit/b

:installs
echo %0 %*
call :flip wuauclt
reg add "%menu%\shell\4Installs"   /v MUIVerb /d "Installs %[T]% [wuauclt]    %toggle%" /f %.%
for %%# in (%installer%) do if defined block (
 do reg delete "%ifeo%\%%#.exe" /f %.% &start "wt" wscript /e:JScript "%f0%" WUTRefresh
) else (
 reg add "%ifeo%\%%#.exe" /v Debugger /d "%SystemRoot%\WUTRefresh.bat" /f %.% &taskkill /im "%%#.exe" /t /f %.%
)
exit/b

:downloads
echo %0 %*
call :reg_query "%menu%3apply" MUIVerb pending
set "reboot=%pending:reboot=%"
if defined pending if "%pending%"=="%reboot%" set "pending="
if defined pending (
 sc config TrustedInstaller type= own depend= / %.%
 reg add "%menu%\shell\5Downloads" /v MUIVerb /d "Downloads ( ! ) %[T]% [trustedinstaller]    reboot?" /f %.%
 exit/b
)
for /f "tokens=3" %%# in ('sc qc TrustedInstaller ^| find /I "WUTblocked"') do set "blocked=%%#"
if /i "%blocked%"=="[WUTblocked]" (set "blocked=/") else set "blocked=[WUTblocked]"
net stop TrustedInstaller /y %.%
for /f "tokens=3" %%# in ('sc queryex TrustedInstaller ^| find /i "PID"') do set "pid=%#"
if not "%pid%"=="0" taskkill /pid %pid% /f %.%
sc config TrustedInstaller type= own depend= %blocked% %.%
tasklist /svc | find /i "TrustedInstaller" %.%
if errorlevel 1 net start TrustedInstaller /y %.%
if errorlevel 1 (set "toggle=blocked") else set "toggle=enabled"
reg add "%menu%\shell\5Downloads" /v MUIVerb /d "Downloads ( ! ) %[T]% [trustedinstaller]    %toggle%" /f %.%
if "%toggle%"=="enabled" start "WUT" wscript /e:JScript "%f0%" WUTRefresh
exit/b

:service
echo %0 %*
for /f "tokens=3" %%# in ('sc qc wuauserv ^| find /I "WUTblocked"') do set "blocked=%%#"
if /i "%blocked%"=="rpcss[WUTblocked]" (set "blocked=rpcss") else set "blocked=rpcss[WUTblocked]"
net stop wuauserv /y %.%
for /f "tokens=3" %%# in ('sc queryex wuauserv ^| find /i "PID"') do set "pid=%#"
if not "%pid%"=="0" taskkill /pid %pid% /f %.%
sc config wuauserv type= share depend= %blocked% %.%
tasklist /svc | find /i "wuauserv" %.%
if errorlevel 1 net start wuauserv /y %.%
if errorlevel 1 (set "toggle=blocked") else set "toggle=enabled"
reg add "%menu%\shell\6Service" /v MUIVerb /d "Service ( ! ) %[T]% [wuauserv]    %toggle%" /f %.%
if "%toggle%"=="enabled" start "WUT" wscript /e:JScript "%f0%" WUTRefresh
exit/b

:repair
echo %0 %*
:: Restore services (undo only the changes made by this script, not whatever blocking was done by other means)
sc config wuauserv type= share depend= rpcss %.%
sc config TrustedInstaller type= own depend= / %.%
:: Remove any IFEO blocking done by past scripts
set eo=DiagnosticsHub.StandardCollector.Service WindowsUpdateElevatedInstaller LocationNotificationWindows InstallAgentUserBroker
set eo=%eo% UpdateNotificationMgr DataUsageLiveTileTask Windows10UpgraderApp WindowsActionDialog SpeechModelDownload WerFaultSecure
set eo=%eo% GetCurrentRollback WindowsUpdateBox Windows10Upgrade TrustedInstaller MusNotification DiagTrackRunner CompatTelRunner
set eo=%eo% WinREBootApp64 WinREBootApp32 UNPUXLauncher SpeechRuntime MusNotifyIcon PilotshubApp InstallAgent dstokenclean wsqmcons
set eo=%eo% disksnapshot osrssupdate wuapihost WaaSMedic UsoClient UNPUXHost SIHClient setupprep SetupHost osrssinst EOSNotify wusa
set eo=%eo% WerFault TiWorker SearchUI DWTRIG20 dusmtask dmclient appidtel wuauclt wermgr DFDWiz remsh reach HxTsr DWWIN DW20 GWX
for %%# in (%eo%) do reg delete "%ifeo%\%%#.exe" /f %.%
:: Restore notification hijacking
>"%SystemRoot%\WUTRefresh.bat" echo/@start "WUTRefresh" /min wscript.exe /e:JScript "%f0%" WUTRefresh
for %%# in (MusNotification EOSNotify) do reg add "%ifeo%\%%#.exe" /v Debugger /d "%SystemRoot%\WUTRefresh.bat" /f %.%
:: Remove pending instance safeguard
reg delete "HKLM\SOFTWARE\WUT.bat" /v Pending /f %.%
:: Refresh menu
call :refresh repair
:: Open Update Diagnostic
start "wud" msdt.exe /id WindowsUpdateDiagnostic %.%
:: Open official update troubleshooter page
start https://support.microsoft.com/en-us/help/4027322/windows-update-troubleshooter %.%
exit/b

:report
echo %0 %*
call :flip wermgr
reg add "%menu%\shell\81Report"    /v MUIVerb /d "Report    %[T]% %toggle%" /f %.%
for %%# in (%reporter%) do if defined block ( reg delete "%ifeo%\%%#.exe" /f %.% ) else (
 reg add "%ifeo%\%%#.exe" /v Debugger /d "%noop%" /f %.% &taskkill /im "%%#.exe" /t /f %.%
)
exit/b

:speech
echo %0 %*
call :flip SpeechRuntime
reg add "%menu%\shell\82Speech"    /v MUIVerb /d "Speech    %[T]% %toggle%" /f %.%
for %%# in (%speecher%) do if defined block ( reg delete "%ifeo%\%%#.exe" /f %.% ) else (
 reg add "%ifeo%\%%#.exe" /v Debugger /d "%noop%" /f %.% &taskkill /im "%%#.exe" /t /f %.%
)
exit/b

:search
echo %0 %*
call :flip SearchUI
reg add "%menu%\shell\83Search"    /v MUIVerb /d "SearchUI  %[T]% %toggle%" /f %.%
for %%# in (%searcher%) do if defined block ( reg delete "%ifeo%\%%#.exe" /f %.% ) else (
 reg add "%ifeo%\%%#.exe" /v Debugger /d "%noop%" /f %.% &taskkill /im "%%#.exe" /t /f %.%
)
exit/b

:defender
echo %0 %*
set "s10=$t=1;$toggle='stopped'; if((Get-MpPreference).DisableRealtimeMonitoring){$t=0;$toggle='enabled';}"
set "s11=Set-MpPreference -DisableRealtimeMonitoring $t"
set "s12=Set-MpPreference -DisableBehaviorMonitoring $t"
set "s13=Set-MpPreference -DisableIOAVProtection $t"
set "s14=write-host $toggle"
for /f "delims=" %%# in ('call powershell.exe -c "%s10%;%s11%;%s12%;%s13%;%s14%;"') do set "toggle=%%#"
reg add "%menu%\shell\84Defender"  /v MUIVerb /d "Defender  %[T]% %toggle%" /f %.%
exit/b

:update_defender - triggered from WScript to get definitions from MMPC, regardless of updates being blocked
tasklist /FI "IMAGENAME eq MpCmdRun.exe" | find ".exe" %.%
if not errorlevel 1 exit/b
pushd %ProgramFiles%\Windows Defender
call MpCmdRun.exe -removedefinitions -dynamicsignatures
call MpCmdRun.exe -SignatureUpdate -MMPC
exit/b

:setup
echo %0 %*
pushd %SystemRoot%
if /i "%~f0"=="%f0%" (set "initial_setup=") else copy /y "%~f0" "%f0%" %.%
:: Create WUTUndo for emergencies
 >WUTUndo.bat echo/pushd %%~dp0system32\config
>>WUTUndo.bat echo/reg load HKLM\WUTUndo1 SOFTWARE
>>WUTUndo.bat echo/set "koff=HKLM\WUTUndo1\Microsoft\Windows NT\CurrentVersion\Image File Execution Options" ^&set "kon=%ifeo%"
>>WUTUndo.bat echo/for %%%%B in (%exe%) do for %%%%K in ("%%koff%%" "%%kon%%") do reg delete "%%%%~K\%%%%B.exe" /f 2^>nul
>>WUTUndo.bat echo/reg unload HKLM\WUTUndo1
>>WUTUndo.bat echo/reg load HKLM\WUTUndo2 SYSTEM
>>WUTUndo.bat echo/for %%%%K in (WUTUndo2 SYSTEM) do (
>>WUTUndo.bat echo/ reg delete "HKLM\%%%%~K\ControlSet001\Services\TrustedInstaller" /v DependOnService /f 2^>nul
>>WUTUndo.bat echo/ reg delete "HKLM\%%%%~K\CurrentControlSet\Services\TrustedInstaller" /v DependOnService /f 2^>nul
>>WUTUndo.bat echo/)
>>WUTUndo.bat echo/reg unload HKLM\WUTUndo2
:: Create WUTRefresh to hijack update notifications and refresh context menu in addition to preventing forced reboots
>WUTRefresh.bat echo/@start "WUTRefresh" /min wscript.exe /e:JScript "%f0%" WUTRefresh
:: Create tasks to run context menu entries with proper access and no output window
start "WUT" wscript /e:JScript "%~f0" cmd "call `%~f0` setup_schtasks"
:: WUT options
for %%# in (NoBlock NoRefresh) do reg add "HKLM\SOFTWARE\WUT.bat" /v %%# /d "Enable" /f %.%
call :toggle blocking
exit/b

:setup_schtasks - no stalling separate process
set "strun=wscript.exe /e:JScript \"%f0%\" run%window%"
for %%t in (refresh lists upgrades installs downloads service repair report speech search defender toggle renew remove) do (
 schtasks /create /ru "%username%" /sc once /tn "WUT\%%t" /tr "%strun% %%t" /st "00:00:00" /it /rl highest /f %.%
)
for %%t in (hide unhide apply) do for /l %%n in (101,1,116) do (
 schtasks /create /ru "%username%" /sc once /tn "WUT\%%t\%%n" /tr "%strun% %%t %%n" /st "00:00:00" /it /rl highest /f %.%
)
exit/b

:renew
echo %0 %*
echo Renewing from internet - old version saved as %SystemRoot%\WUT.old
pushd %SystemRoot%
if exist WUT.new del /f /q WUT.new %.%
call wscript /e:JScript "%~f0" renew "https://pastebin.com/raw/gNsLEWJe" "%SystemRoot%\WUT.new"
if exist WUT.new copy /y "%f0%" WUT.old %.% &copy /y WUT.new "%f0%" %.% &del /f /q WUT.new %.%
start "WUT" "%f0%" setup renew %.%
exit/b

:remove
echo %0 %*
for %%# in (NoBlock NoRefresh) do reg add "HKLM\SOFTWARE\WUT.bat" /v %%# /d "Disable" /f %.%
call :toggle off
reg delete "HKLM\SOFTWARE\WUT.bat" /f %.%
for %%# in ("" "0pending" "1hide" "2unhide" "3apply") do reg delete "%menu%%%~#" /f %.%
for %%t in (refresh lists upgrades installs downloads service repair report speech search defender toggle renew remove) do (
 schtasks /delete /tn "WUT\%%t" /f %.%
)
for %%t in (hide unhide apply) do for /l %%n in (101,1,116) do schtasks /delete /tn "WUT\%%t\%%n" /f %.%
for %%t in (hide unhide apply) do schtasks /delete /tn "WUT\%%t" /f %.%
schtasks /delete /tn "WUT" /f %.%
sc config wuauserv type= share depend= rpcss %.%
sc config TrustedInstaller type= own depend= / %.%
pushd %SystemRoot%
del /f /q WUT.bat WUT.old DefenderManualUpdate.bat WUTRefresh.bat WUTUndo.bat "%f0%" %.%
exit/b

:flip %1:exe
call :reg_query "%ifeo%\%~1.exe" Debugger block
if defined block (set "toggle=enabled") else set "toggle=blocked"
exit/b

:status %1:exe
call :reg_query "%ifeo%\%~1.exe" Debugger block
if defined block (set "toggle=blocked") else set "toggle=enabled"
exit/b

:reg_query %1:KeyName %2:ValueName %3:OutputVariable %4:other_options[example: "/t REG_DWORD"]
setlocal & for /f "skip=2 delims=" %%s in ('reg query "%~1" /v "%~2" /z 2^>nul') do set "rq=%%s" & call set "rv=%%rq:*)    =%%"
endlocal & set "%~3=%rv%" & exit/b &rem                                         AveYo: call :reg_query "HKCU\MyKey" "MyValue" MyVar

::---------------------------------------------------------------------------------------------------------------------------------
:JScript_functions                                                                 AveYo: Switch syntax highlighter to 'javascript'
::-------------------------------------------------------------------------------------------------------------------------------*/
f0=WSH.ScriptFullName; run=WSH.Arguments(0); args=''; for(i=1;i<WSH.Arguments.length;i++) args+=' "'+WSH.Arguments(i)+'"';
function sex(exe,args){WSH.CreateObject('Shell.Application').ShellExecute(exe,args,'','',0);}; function reg(s){ sex('reg.exe',s); }

// Open external commands in new hidden cmd instance - backquotes replaced to quotes
if (run=='cmd') sex('cmd','/c '+args.replace(/`/g,'"'));

// Context menu entries trigger - elevated with no popups
if (run=='schtasks') sex('SCHTASKS.EXE','/Run /TN '+args);

// Shift to CMD if loaded by WScript - pass arguments, prevent loop, run as admin at setup, hide window at context-menu
function cmd(adm,win){WSH.CreateObject('Shell.Application').ShellExecute('cmd','/c call "'+f0+'" shift "'+f0+'"'+args,'',adm,win);}
if (run=='run') cmd('',1); if (run=='runhide') cmd('',0); if (run=='runas') cmd('runas',1); if (run=='runashide') cmd('runas',0);

if (run=='renew') {
  // renew script over internet
  try{
  downloader=WSH.CreateObject("WinHttp.WinHttpRequest.5.1");
  if (downloader===null) downloader=WSH.CreateObject("WinHttp.WinHttpRequest");
  if (downloader===null) downloader=WSH.CreateObject("MSXML2.ServerXMLHTTP");
  if (downloader===null) downloader=WSH.CreateObject("Microsoft.XMLHTTP");
  downloader.Open("GET",WSH.Arguments(1),false); downloader.Send(); oASI=downloader.ResponseBody(); downloader=undefined;
  oASO=WSH.CreateObject("ADODB.Stream"); oASO.type=1; oASO.Mode=3; oASO.Open; oASO.Write(oASI); oASI=undefined;
  oASO.SaveToFile(WSH.Arguments(2)); oASO.Close();
  }catch(e){} // supress all errors since we're working with com objects
}

// WUT Hide/Unhide/Apply lists
if (run=='WUTRefresh' || run=='hide' || run=='unhide' || run=='apply') {
  SRP=GetObject("winmgmts:StdRegProv"); pending=SRP.GetStringValue(2147483650,'SOFTWARE\\WUT.bat','Pending');
  if (pending===0) WSH.quit(); else SRP.SetStringValue(2147483650,'SOFTWARE\\WUT.bat','Pending','yes'); // prevent instances
  k='HKCR\\DesktopBackground\\shell\\WUT'; hk=k+'1hide'; uk=k+'2unhide'; ik=k+'3apply'; pk=k+'0pending';           // set list keys
  reg('delete "'+hk+'" /f'); reg('delete "'+uk+'" /f'); reg('delete "'+ik+'" /f');                               // delete previous
  reg('add "'+pk+'" /v MUIVerb /d "Pending.." /f'); reg('add "'+pk+'" /v SubCommands /d "" /f');             // add Pending.. entry
  // Check for updates
  count=0; wuthide=[]; wutunhide=[];
  try{
  session=WSH.CreateObject("Microsoft.Update.Session"); reboot=WSH.CreateObject("Microsoft.Update.SystemInfo").RebootRequired;
  searcher=session.CreateUpdateSearcher();
  sresult=searcher.Search("IsInstalled=0"); Updatelist=sresult.Updates; count=sresult.Updates.Count;
  for(i=0;i<count;i++) {
    itemTitle=Updatelist.Item(i).Title;
    minsize=Updatelist.Item(i).MinDownloadSize; maxsize=Updatelist.Item(i).MaxDownloadSize; wutsize='';
    if (maxsize > 1073741824) wutsize=' ['+Math.round(minsize/10737418.24)/100+' - '+Math.round(maxsize/10737418.24)/100+'GB]';
    else if (maxsize > 1048576) wutsize=' ['+Math.round(minsize/10485.76)/100+' - '+Math.round(maxsize/10485.76)/100+'MB]';
    else if (maxsize > 1024) wutsize=' ['+Math.round(minsize/10.24)/100+' - '+Math.round(maxsize/10.24)/100+'KB]';
    else if (maxsize > 0) wutsize=' ['+(minsize)+' - '+(maxsize)+'B]';
    wutTitle=Updatelist.Item(i).Title + wutsize;
    if (run=='apply' && WSH.Arguments(1).indexOf(itemTitle) > -1) {
      // Add matching entry to UpdateColl
      UpdateColl=WSH.CreateObject("Microsoft.Update.UpdateColl"); UpdateColl.Add(Updatelist.Item(i));
      // Download update
      downloader=session.CreateUpdateDownloader(); downloader.Updates=UpdateColl; dresult=downloader.Download();
      if (dresult.ResultCode==2) {
        // Unblock apply
        sex('sc','config TrustedInstaller type= own depend= /');
        KeyPath='SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Image File Execution Options\\wuauclt.exe';
        SRP.DeleteKey(2147483650,KeyPath);
        WSH.Sleep(1000);
        //Apply update
        installer=session.CreateUpdateInstaller(); installer.Updates=UpdateColl; iresult=installer.Install();
        if (iresult.ResultCode==2) continue;
      }
    }
    // hide and unhide are very simple bool flip compared to apply
    if (run=='hide' && WSH.Arguments(1).indexOf(itemTitle) > -1) {
      Updatelist.Item(i).IsHidden=true; wutunhide.push(wutTitle); continue;
    }
    if (run=='unhide' && WSH.Arguments(1).indexOf(itemTitle) > -1) {
      Updatelist.Item(i).IsHidden=false; wuthide.push(wutTitle); continue;
    }
    // Trigger :update_defender to manually refresh definitions from MMPC
    if (Updatelist.Item(i).IsHidden===false && itemTitle.indexOf('(Definition') > -1) {
      sex('cmd','/c call "'+f0+'" update_defender');
    }
    // Sorting lists
    if (Updatelist.Item(i).IsHidden) wutunhide.push(wutTitle); else wuthide.push(wutTitle);
  }
  // Generate Hide context menu
  if (wuthide.length>0){
    for(i=101,n=wuthide.length+101;i<n;i++) {
      reg('add "'+hk+'\\shell\\'+i+'" /v MUIVerb /d "'+wuthide[i-101]+'" /f');
      reg('add "'+hk+'\\shell\\'+i+'\\command" /ve /d "wscript.exe /e:JScript \\"'+f0+'\\" schtasks WUT\\hide\\'+i+'" /f');
    }
    reg('add "'+hk+'" /v SubCommands /d "" /f');
    reg('add "'+hk+'" /v MUIVerb /d "Hide '+"\t"+wuthide.length+'" /f');
  }
  // Generate Unhide context menu
  if (wutunhide.length>0){
    for(i=101,n=wutunhide.length+101;i<n;i++) {
      reg('add "'+uk+'\\shell\\'+i+'" /v MUIVerb /d "'+wutunhide[i-101]+'" /f');
      reg('add "'+uk+'\\shell\\'+i+'\\command" /ve /d "wscript.exe /e:JScript \\"'+f0+'\\" schtasks WUT\\unhide\\'+i+'" /f');
    }
    reg('add "'+uk+'" /v SubCommands /d "" /f');
    reg('add "'+uk+'" /v MUIVerb /d "Unhide '+"\t"+wutunhide.length+'" /f');
  }
  // Generate Apply context menu
  if (wuthide.length>0){
    for(i=101,n=wuthide.length+101;i<n;i++) {
      reg('add "'+ik+'\\shell\\'+i+'" /v MUIVerb /d "'+wuthide[i-101]+'" /f');
      reg('add "'+ik+'\\shell\\'+i+'\\command" /ve /d "wscript.exe /e:JScript \\"'+f0+'\\" schtasks WUT\\apply\\'+i+'" /f');
    }
    reg('add "'+ik+'" /v SubCommands /d "" /f');
    reg('add "'+ik+'" /v MUIVerb /d "Apply '+"\t"+((reboot) ? 'must reboot' : wuthide.length)+'" /f');
  }
  }catch(e){} // supress all errors since we're working with com objects
  reg('delete "'+pk+'" /f'); SRP.DeleteValue(2147483650,'SOFTWARE\\WUT.bat','Pending'); // Remove Pending.. temporary entry
}
//

Letzte Aktualisierung für v10.0 final. Aktueller Code auf dem obigen Pastebin-Link.

AveYo
quelle
Könnten Sie mir vielleicht sagen, wie Sie dazu gekommen sind, dass Ihre Windows-Menüs einen schwarzen Hintergrund haben ?!
Wayofthefuture
1
Das ist ein kontrastbasierten Thema, finden Sie hier: pastebin.com/fA3t5Sd2
AveYo
4

Für Windows 10 Home-Benutzer

Versuchen Sie die folgende Methode in Windows Central . Grundsätzlich deaktivieren Sie den Neustart-Dienst, nicht den Update-Dienst. Sie können dann jederzeit neu starten. Bitte beachten Sie, dass Sie Administratorrechte benötigen. Ich gehe jedoch davon aus, dass Sie diese bereits besitzen, da Sie Windows Home Edition verwenden.

  1. Benennen Sie in einem Windows Explorer-Fenster die Datei um: C:\Windows\System32\Tasks\Microsoft\Windows\UpdateOrchestrator\Reboot(vorausgesetzt, Ihre %windir%ist C:\) in Reboot.old. Beachten Sie, dass Sie hier um Administratorzugriff gebeten werden.
  2. Erstellen Sie ein Verzeichnis mit dem Namen Rebootin C:\Windows\System32\Tasks\Microsoft\Windows\UpdateOrchestrator\. Dadurch wird verhindert, dass Windows eine Datei mit demselben Namen neu erstellt. Beachten Sie, dass Sie hier um Administratorzugriff gebeten werden.
  3. Starten Sie die Maschine neu. Dies setzt alle Dienste zurück und verhindert, dass der Neustartdienst gestartet wird.

Bitte beachten Sie, dass dies nicht von Microsoft beworben wird. Aber andererseits steuert auch keiner Ihren eigenen Boot-Zeitplan, also nehmen Sie diese MS! Im Ernst, wenn Sie nicht wissen, was Sie tun, verstehen Sie die Risiken, die Sie eingehen, wenn Sie Anweisungen aus dem Internet befolgen. Dies ist mit Sicherheit so einfach, dass ein Verständnis von Windows 95 hilfreich ist, um zu erklären, was hier geschieht.

Sablefoste
quelle
3

Der Status von Windows Update - ab 2019

Microsoft hat große Anstrengungen unternommen, um Windows Update unumgänglich zu machen, weshalb die herkömmlichen Methoden nicht mehr oder nur für eine begrenzte Zeit funktionieren.

Microsoft hat Systemdienste hinzugefügt, die nicht deaktiviert werden können, um Windows zu aktualisieren. Dazu gehört vor allem der Update Orchestrator Service , der die Updates herunterladen, installieren und überprüfen soll. Wenn er angehalten wird, kann der Computer die Updates nicht mehr herunterladen und installieren. Aus diesem Grund kann er nur für die aktuelle Sitzung deaktiviert werden und wird beim nächsten Neustart wieder aktiviert.

Der Dienst, der dafür verantwortlich ist, dass Windows Update nicht mehr angehalten werden kann, ist der neue Windows Update Medic-Dienst , dessen Aufgabe es ist, die Funktionsfähigkeit von Windows Update aufrechtzuerhalten. Mit diesem Dienst werden alle herkömmlichen Methoden zum Blockieren von Windows Update rückgängig gemacht, sodass in regelmäßigen Abständen und unerwartet festgestellt wird, dass die Windows Update-Einstellungen auf ihre ursprünglichen Werte zurückgesetzt wurden und Windows dem Benutzer erneut Aktualisierungen auferlegt hat.

Der Windows Update Medic-Dienst selbst kann überhaupt nicht deaktiviert werden. Jeder Versuch wird mit der Meldung "Zugriff verweigert" beendet.

Es gibt jedoch ein Drittanbieterprodukt, das Windows Update vollständig blockieren kann: Windows Update Blocker . Dieses kostenlose Produkt ist portabel und kann Windows Update mit einem Klick deaktivieren / aktivieren. Tatsächlich kann es auch jeden anderen nicht blockierbaren Windows-Dienst blockieren. Es wird berichtet, dass es im Jahr 2018 noch funktioniert.

Die Verwendung eines Produkts eines Drittanbieters ist auf lange Sicht möglicherweise sicherer, als sich auf semidokumentierte Windows-Funktionen zu verlassen, die sich ohne vorherige Ankündigung ändern können. Einige weitere kostenlose Produkte finden Sie in meiner Antwort. Sie verwenden die Windows-API, mit der jedes Programm ein Veto gegen ein bevorstehendes Herunterfahren einlegen kann.

Harrymc
quelle
2

Endlich eine dauerhafte Lösung gefunden, die einfach funktioniert

Nachdem ich buchstäblich alle Tricks ausprobiert habe , wurde ich immer von Windows Update übertroffen. Ich habe hier jede Lösung ausprobiert und jede Menge anderer Quellen, und Windows hat ständig Wege gefunden, meine Pläne zu durchkreuzen.

Bis vor ungefähr 6 Monaten ...

Ich habe eine dauerhafte Lösung gefunden, um ALLE Windows-Updates FÜR IMMER zu deaktivieren, unabhängig davon, ob der Dienst oder etwas anderes ausgeführt wird. Ich habe diese Methode mit Hilfe vieler verschiedener Quellen herausgefunden, die mit vielen verschiedenen Dingen zu tun hatten. Insgesamt habe ich diese Methode selbst mit der Verwendung von Kleinigkeiten anderer Informationen gefunden, die verwendet wurden, um Dinge zu tun, die nicht alle damit zu tun hatten, aber es funktioniert. Und es funktioniert absolut wunderbar.

  1. Installieren Sie Acrylic DNS Proxy von hier

Grundsätzlich handelt es sich um eine erweiterte Version der Windows-Hosts-Datei, mit der Sie Funktionen wie Platzhalter hinzufügen können. Dies ist in unserem Fall aufgrund der vielen Quellen, von denen Windows Updates erhält, erforderlich.

  1. Befolgen Sie die Anweisungen hier , damit Acrylic seine Arbeit in Win 10 erledigt. Ziemlich einfaches Zeug.

  2. Gehen Sie zu Ihrem Startmenü und klicken Sie unter "Alle Programme" auf " Acrylic Hosts-Datei bearbeiten ", wie hier gezeigt

  3. Fügen Sie diese Zeilen am Ende der Hosts-Datei ohne # -Zeichen hinzu.

0.0.0.0 windowsupdate.microsoft.com
0.0.0.0
* .windowsupdate.microsoft.com
0.0.0.0
* .update.microsoft.com 0.0.0.0 windowsupdate.com 0.0.0.0 * .windowsupdate.com 0.0.0.0
download.windowsupdate.com
0.0.0.0 download.microsoft.com
0.0.0.0 * .download.windowsupdate.com
0.0.0.0
wustat.windows.com
0.0.0.0 ntservicepack.microsoft.com 0.0.0.0 stats.microsoft.com

Nun ist das Ende der Datei sollte wie folgt aussieht dies . Speichern und schließen Sie die Datei.

  1. Öffnen Sie den Task-Manager, wechseln Sie zur Registerkarte "Dienste", klicken Sie unten auf "Dienste öffnen", wählen Sie " Acryl-DNS-Proxy" und klicken Sie auf diese Schaltfläche mit dem roten Kreis, um den Dienst neu zu starten.

FERTIG

Jetzt sollte Ihr Acrylic-Freund Ihren Rücken haben und ständig die Big Brother-Taktiken von Microsoft im Auge behalten, um sicherzustellen, dass die Ärmsten nicht dazu gezwungen werden, Updates zu installieren, die Ihren PC komplett durcheinander bringen und die sie mindestens ein Viertel der Zeit in Anspruch nehmen Habe es sowohl auf meinem Heim-PC als auch auf meinem Surface Pro gemacht, der als PC BUILT für Windows gedacht ist, oder ??? Cmon, Microsoft!

  1. Überprüfen Sie, ob es funktioniert, indem Sie eine der Websites im obigen Code anpingen. Öffne cmd und tippe

ping windowsupdate.microsoft.com

Wenn dies Ihre Ergebnisse sind, werden Sie von nun an golden sein !!

Hinweis: Meiner Erfahrung nach hat dies meinen PC überhaupt nicht verlangsamt. Abgesehen von Anfragen an die Quellen, die Windows zum Aktualisieren oder Überprüfen auf Updates verwendet, wird auch kein Internetverkehr umgeleitet. Dies ist der Hosts-Datei also sehr ähnlich. Es verwendet auch im Grunde das gleiche Format wie die Hosts-Datei. Dadurch wurde auch die Neuinstallation von Junk-Dateien, die Windows ständig auf meinem Computer platziert, erfolgreich deaktiviert. Auf dem riesigen farbigen Bildschirm wird beispielsweise "Sie müssen aktualisieren, oder Ihr Computer wird implodieren" angezeigt. Natürlich kann ich mich nicht erinnern, was die Warnung gesagt hat, da ich sie schon so lange nicht mehr erhalten habe (wegen der vollständig erfolgreichen Sperrung vor 6 Monaten oder so), aber es war die nervigste Sache, die ich je gesehen habe.

Jackary Smith
quelle
hahahaha. Oh Mann. Diese Antwort ist gerecht. Beeindruckend. Clever. sehr schlau. Ich kann nur nicht betonen, wie gut diese Antwort ist. Millionen von Menschen kommen an die Haustür, wo es Hunderte von Verteidigungsanlagen gibt. Diese Lösung kommt jedoch auf die Seite, wo es keine Verteidigungsmechanismen gibt und Gebäudeverteidigungsmechanismen aufgrund der Gestaltung des Internets nicht wirklich möglich wären.
Trevor Boyd Smith
Wenn Sie einen ausgefallenen Router / Gateway / Heimnetzwerk-Box mit ausgefallenen DNS-Funktionen haben ... dann könnten Sie IMO etwas Ähnliches tun.
Trevor Boyd Smith
1

Deaktivieren Sie den Update-Dienst

  1. Win+R > services.msc
  2. Doppelklicken Sie auf Windows Update, und ändern Sie den Starttyp in Deaktiviert. Zum erneuten Aktivieren kehren Sie zu den Diensten zurück und ändern Sie sie in "Automatisch".

Quelle: So steuern Sie Windows 10-Updates

Ooker
quelle
1

In meinem Fall möchte ich nicht nur steuern, wann Windows-Updates ausgeführt werden, sondern auch, dass alle installierten Anwendungen bei ihren Online-Updates außer Kontrolle geraten.

Meine einfache One-Stop-Lösung lautet also: 1. Blockieren Sie den Internetzugang für den Host auf der Routerseite. Keines der auf dem Host installierten Programme oder Dienste kann auf das Internet zugreifen. Windows-Updates sind natürlich auch blockiert.

  1. Installieren Sie einen Squid-Proxyserver im lokalen Netzwerk und geben Sie den Proxy an die Anwendungen weiter, die Sie für das Internet zulassen. Legen Sie in der Systemsteuerung | keinen Proxy fest Internet Option, weil dies ein globaler, betriebssystemweiter Proxy ist, der Schritt 1 überhaupt ungültig macht.

Die meisten Anwendungen unterstützen anwendungsbasierte Proxy-Einstellungen, z. B. Chrome, Firefox, alle Arten von Spielen usw.

  1. Verwenden Sie für Anwendungen, die die lokale Proxy-Einstellung nicht unterstützen, NAS Cloud Fold als Cloud Proxy. Beispielsweise unterstützen Office 365-Anzüge keinen Programm-Proxy. Sie können dann eine NAS-Cloud-Synchronisierung einrichten (Synology NAS verfügt beispielsweise über eine Cloud-Synchronisierung, um OneDrive zu synchronisieren), um Inhalte in einer NAS-Falte zu synchronisieren, und diese Falte dann als lokale Falte von Office 365 verwenden. Ein weiterer Vorteil dieser Methode ist, dass Sie auf große Dateien sehr schnell reagieren können, da Sie für den Zugriff auf OneDrive die lokale Netzwerkgeschwindigkeit verwenden.

Auf diese Weise wird der Internetzugriff Ihres Computers weitgehend von Ihnen selbst gesteuert. Niemand kann Sie durcheinander bringen.

Wenn Sie Windows aktualisieren möchten, legen Sie Systemsteuerung | fest Internet Option zur Verwendung Ihres lokalen Proxys, daher kann Windows Ihr Betriebssystem aktualisieren. Schalten Sie danach den globalen Proxy sofort aus, um Ihren Computer wieder in eine friedliche Welt zu versetzen.

Jack Wu
quelle
0

2 Jahre später und Milliarden nicht gespeicherter Werke, die durch den Update-Mechanismus von Microsoft verloren gegangen sind, gibt es endlich ein umfangreiches Update, das das Problem behebt.

Windows 10 Creators Update jetzt verfügbar ( Direkter Download )

Nach der Installation des Updates wird der Benutzer schließlich erneut gefragt (wie die unbedeutenden über 20 Jahre zuvor), ob das Update angewendet werden soll:

win10 neue alte Update-Nachricht

Manchmal frage ich mich, wer hinter diesen Entscheidungen steckt ...

Nach dem Update haben Sie weitere Möglichkeiten bezüglich der Updatezeiten. Um sie zu stoppen, gehen Sie zu Windows Update-Einstellungen> Erweiterte Optionen> Updates anhalten > EIN .

Aktualisierungen anhalten

Unter Neustartoptionen finden Sie auch eine neue Option für Aktualisierungsbenachrichtigungen:

Benachrichtigungs-Updates

Kai Noack
quelle
1
Wie beantwortet dies die Frage?
magicandre1981
"Eine Möglichkeit, automatische Updates zu stoppen" - Dies ist eine Möglichkeit, die erzwungenen automatischen Updates zu beseitigen. Um sie zu stoppen, gehen Sie zu Windows Update-Einstellungen> Erweiterte Optionen> Updates anhalten> EIN. Ich habe dies zur Antwort hinzugefügt. (Sie haben noch mehr Optionen nach dem Windows Update.)
Kai Noack
0

Deaktivieren Sie alle Windows-Updates von PowerShell

(Führen Sie PowerShell als Administrator aus.)

Clear-Host

$WindowsUpdatePath = "HKLM:SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\"
$AutoUpdatePath = "HKLM:SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU"

If(Test-Path -Path $WindowsUpdatePath) {
    Remove-Item -Path $WindowsUpdatePath -Recurse
}

New-Item $WindowsUpdatePath -Force
New-Item $AutoUpdatePath -Force

Set-ItemProperty -Path $AutoUpdatePath -Name NoAutoUpdate -Value 1

Get-ScheduledTask -TaskPath "\Microsoft\Windows\WindowsUpdate\" | Disable-ScheduledTask

takeown /F C:\Windows\System32\Tasks\Microsoft\Windows\UpdateOrchestrator /A /R
icacls C:\Windows\System32\Tasks\Microsoft\Windows\UpdateOrchestrator /grant Administrators:F /T

Get-ScheduledTask -TaskPath "\Microsoft\Windows\UpdateOrchestrator\" | Disable-ScheduledTask

Stop-Service wuauserv
Set-Service wuauserv -StartupType Disabled

Write-Output "All Windows Updates were disabled"
frakon
quelle
0

Während ich die Aktualisierung im Dienste- und Gruppenrichtlinien-Editor deaktiviert habe, wird sie von Zeit zu Zeit wieder aktiviert. Dann muss ich sie manuell in den Diensten ausschalten. Dies über die GUI zu tun ist mühsam, deshalb habe ich ein Batch-Skript geschrieben. Es stoppt und deaktiviert Background Intelligent Transfer Serviceund Windows Update.

@echo off

net stop wuauserv
net stop BITS

sc config wuauserv start= disabled
sc config BITS start= disabled

pause

Ich verwende auch (nicht speziell für diesen Zweck) ein Tool zur Überwachung leichter Netzwerke (Bandwidth Monitor), damit ich weiß, wann eine Aktivität stattfindet (ein Symbol in der Taskleiste). Wenn eine Aktivität angezeigt wird, die eigentlich nicht vorhanden sein sollte, ist Windows Update wieder aktiviert. Dann starte ich das Skript und es ist aus.

akinuri
quelle