일부 컴퓨터를 Windows 10으로 업그레이드했으며 필요에 따라 업데이트 된 업데이트가 있음을 깨달았습니다. 그러나 Windows 7 및 8.1과 유사한 다운로드를 중지하는 데 사용할 수있는 옵션이 없다는 것을 깨달았습니다. 다운로드를 중지 할 수있는 유일한 방법은 Windows Update 서비스 를 중지하는 것 입니다.
내 질문은 자동 업데이트를 중지하는 방법을 알고 있거나 서비스를 중지하는 것이 유일한 해결책입니까?
일부 컴퓨터를 Windows 10으로 업그레이드했으며 필요에 따라 업데이트 된 업데이트가 있음을 깨달았습니다. 그러나 Windows 7 및 8.1과 유사한 다운로드를 중지하는 데 사용할 수있는 옵션이 없다는 것을 깨달았습니다. 다운로드를 중지 할 수있는 유일한 방법은 Windows Update 서비스 를 중지하는 것 입니다.
내 질문은 자동 업데이트를 중지하는 방법을 알고 있거나 서비스를 중지하는 것이 유일한 해결책입니까?
답변:
Pro Edition을 사용하는 경우 그룹 정책 편집기 (gpedit.msc)를 열고Configure automatic updates
다음 위치에 있는 항목을 검색하십시오 .
computer configuration → administrative templates → windows components → windows update
를 선택하십시오 Notify for download and notify for install
.
Windows가 새 업데이트를 감지하면 토스트 알림을 표시합니다 .
KB3073930 업데이트 의 문제 해결사를 사용하여 문제 가있는 업데이트를 비활성화하여 다시 설치하지 않도록 할 수도 있습니다.
이것은 원하지 않는 업데이트 및 드라이버 설치를 방지하기위한 Microsoft의 공식적인 방법입니다.
그러나 설치할 수있는 업데이트를 선택하고 이전 Windows 버전에서와 같이 업데이트를 차단할 수있는 Windows Update MiniTool 이라는 타사 도구 가 있습니다.
표준 Windows Update에 대한 대안 수행 할 수있는 작업 :
• 업데이트 확인 • 업데이트
다운로드
• 업데이트 설치
• 설치된 업데이트 삭제
• 원하지 않는 업데이트 숨기기
• * .cab / * .Exe / * .Psf 업데이트 파일에 대한 직접 링크 가져 오기
• 업데이트 기록보기
• 자동 업데이트 구성
•이 도구는 외부 파워 쉘 모듈 PSWindowsUpdate와 유사하지만 훨씬 고급이며 사용자에게 친숙한 기능입니다.
• 도구는 동일한 WU 인프라를 사용하고 사용하며 모든 다운로드는 WU를 통하지 않습니다.
사용자 slavanap 은 의견에 두 번째 도구 를 게시 하여 선택적으로 업데이트를 설치할 수 있습니다. Windows10 수동 업데이트 라고 하며 github에서 사용할 수 있습니다 .
에서 윈도우 (10) 제작자 업데이트, 옵션이 있습니다 삼십오일은 Windows 업데이트를 막을 수는 :
Windows 업데이트 옵션이있는 설정 앱에서
Windows 10에서 가장 논란의 여지가있는 측면 중 하나는 업데이트를 의무적으로 수행하려는 Microsoft의 결정입니다. Windows 10 Pro, Enterprise 또는 Education 버전이있는 경우 업데이트를 연기 할 수는 있지만 완전히 거부 할 수는 없습니다 .
사용자가 말하지 않고 시스템에 업데이트를 강제로 설치하는 것에 만족하지 않으면 W10Privacy를 사용 하여이 기능 을 차단할 수 있습니다 .
소프트웨어를 통해 Windows 10의 많은 개인 정보 보호 기능을 제어 할 수 있기 때문에이 프로그램에 대해 들어 본 적이 없다면이 프로그램에 대해 들어 본 적이 없다면 OS 스누핑을 방지 할 수 있습니다. 옵션은 색상으로 구분되어있어 변경 / 비활성화가 안전한지 한눈에 확인할 수 있습니다.
W10Privacy 2 에서는 이제 Windows 10 자체 업데이트 메커니즘을 비활성화하고 자체 업데이트 메커니즘으로 대체하도록 프로그램을 설정할 수 있습니다. 사용자는 설치할 업데이트와 무시할 업데이트를 선택할 수 있습니다. 모든 사람이해야 할 일은 아니지만 필요한 단계를 쉽게 되돌릴 수 있습니다.
이 기능을 사용하려면 몇 가지 추가 구성 요소를 다운로드해야합니다. 이 단계를 따르세요:
W10Privacy.exe
하고 상황에 맞는 메뉴에서 관리자 권한으로 실행을 선택하십시오. 시스템 복원 지점을 만들도록 선택하십시오. 경우에 따라서는 전체 시스템 백업을 수행 할 가치가 있습니다.가짜 WSUS 서버를 구성하십시오.
W10Privacy는 공백이없는 경로 / 폴더에 있습니다. 업데이트 검색에서 드라이버를 고려하지 마십시오.
업데이트를 담당 한 후에는 소프트웨어를 정기적으로 실행하고 중요한 업데이트가 있는지 확인하십시오.
크레딧 :
@Ramhound의 도움으로 Windows 10에서 자동 업데이트를 중지하는 방법을 알아 냈습니다.
이것은 내가 실행중인 버전이므로 Windows 10 Pro에 적용됩니다 .
자동 업데이트를 중지하려면 다음을 수행하십시오.
최신 정보
@Vinayak의 의견에서 언급했듯이 이제 연기 옵션은 가정 사용자도 사용할 수 있습니다. 자세한 정보는 여기
Wuauserv
서비스가 있으며 중지 / 비활성화 될 수 있습니다. 이것이 원래 업데이트를 중단 한 방법입니다
이전 배치 파일의 대규모 재 작업은 스위트 를 단일 스크립트로 전환 하여 모범 사례를 차단합니다!
행동을 지켜보세요
모든 것을 토글하는 데스크탑 마우스 오른쪽 클릭 컨텍스트 메뉴 동적 UI!
모든 블록 켜기 / 끄기 전환, 페이스트 빈에서 갱신 또는 스크립트 옵션 제거
카운터로 업데이트 목록 숨기기 / 숨기기 해제 / 설치!
Windows가 MusNotification을 통해 탐색 할 때마다 목록이 자동으로 업데이트됩니다!
소유권 변경, 파일 삭제 또는 작업 제거없이 빌드 업그레이드, 자동 설치, 다운로드, 서비스
IFEO 안전 차단을 독립적으로 차단
독립적으로 작동 수비수 업데이트에 포커스를 설정 한
자동 업데이트 내장 희생 한 보호 층, 창을 토글하지 않습니다 신체 상해
다른 -DIY- 업데이트 "관리"는 달리
@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 %.% ® delete "%menu%1hide" /f %.% ® delete "%menu%2unhide" /f %.%
reg delete "%menu%3apply" /f %.% ® 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 %.% © /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
}
//
v10.0 final에 마지막으로 업데이트되었습니다. 위의 pastebin 링크의 최신 코드.
Windows 10 개인 사용자
Windows Central 에서 다음 방법을 시도하십시오 . 기본적으로 업데이트 서비스가 아닌 재부팅 서비스를 비활성화합니다. 그런 다음 원할 때마다 재부팅 할 수 있습니다. 관리자 권한이 필요하지만 Windows Home 버전을 사용하고 있으므로 이미 권한이 있다고 가정합니다.
C:\Windows\System32\Tasks\Microsoft\Windows\UpdateOrchestrator\Reboot
( %windir%
is 라고 가정 C:\
)을 Reboot.old로 바꿉니다. 여기에서 관리자 액세스 권한이 요청됩니다. Reboot
에를 C:\Windows\System32\Tasks\Microsoft\Windows\UpdateOrchestrator\
. 이렇게하면 창에서 같은 이름의 파일을 다시 만들 수 없습니다. 여기에서 관리자 액세스 권한이 요청됩니다.이것은 Microsoft에서 홍보하지 않습니다. 그러나 다시 말하지만, 어느 것도 자신의 부팅 일정을 제어하지 않으므로 MS를 선택하십시오! 진지하게, 당신이 무엇을하고 있는지 모른다면 인터넷의 지시에 따라 당신이 겪고있는 위험을 이해하십시오. 이것은 Windows 95를 이해하면 여기서 일어나는 일을 설명하는 데 도움이 될 정도로 간단합니다.
Windows Update의 상태-2019 년 시작
Microsoft는 Windows Update를 불가피하게 만들기 위해 많은 노력을 기울여 왔기 때문에 전통적인 방법이 더 이상 작동하지 않거나 제한된 시간 동안 만 작동합니다.
Microsoft는 Windows를 업데이트 할 목적으로 비활성화 할 수없는 시스템 서비스를 추가했습니다. 이 중 가장 중요한 것은 업데이트 다운로드, 설치 및 확인을 담당 하는 Update Orchestrator 서비스 입니다. 중지되면 컴퓨터가 더 이상 업데이트를 다운로드하여 설치할 수 없으므로 현재 세션에 대해서만 비활성화되어 다음에 다시 부팅 할 때 다시 활성화됩니다.
Windows Update를 중지 할 수 없도록하는 서비스는 Windows Update가 계속 작동하도록하는 새로운 Windows Update Medic 서비스 입니다. 이 서비스는 Windows Update를 차단하는 기존의 모든 방법을 취소하여 주기적으로 예기치 않게 Windows Update 설정이 원래 값으로 재설정되었으며 Windows가 사용자에게 업데이트를 강제 적용한 것으로 나타났습니다.
Windows Update Medic 서비스 자체는 전혀 비활성화 할 수 없습니다. 이렇게하면 "액세스가 거부되었습니다"라는 메시지가 표시됩니다.
그럼에도 불구하고 Windows Update를 완전히 차단할 수있는 타사 제품이 있습니다 : Windows Update Blocker . 이 무료 제품은 휴대 가능하며 한 번의 클릭으로 Windows Update를 비활성화 / 활성화 할 수 있습니다. 실제로 차단할 수없는 다른 Windows 서비스도 차단할 수 있습니다. 2018 년에도 여전히 작동하는 것으로보고되었습니다.
타사 제품을 사용하는 것은 장기적으로 예고없이 변경 될 수있는 Windows 반 문서화 된 기능에 의존하는 것보다 더 확실 할 수 있습니다. 이 답변 에서 더 많은 무료 제품을 찾을 수 있습니다. 이 제품은 모든 프로그램이 임박한 종료를 거부 할 수있는 Windows API를 사용합니다.
이 책의 말 그대로 모든 트릭을 시도한 후 , 나는 항상 Windows Update를 사용했습니다. 나는 여기에 모든 솔루션과 수많은 다른 소스를 시도했으며 Windows는 끊임없이 내 계획을 방해하는 방법을 찾았습니다.
약 6 개월 전까지 ...
서비스 또는 다른 항목이 실행 중인지 여부에 관계없이 모든 Windows 업데이트를 영구적으로 비활성화하는 영구적 인 해결책을 찾았습니다. 나는 많은 다른 것들과 관련된 많은 다른 출처의 도움 으로이 방법을 알아 냈습니다. 전반적으로, 나는이 방법이 모두 관련이없는 것을 수행하는 데 사용되는 다른 정보와 비트를 사용하여 직접 발견했지만 작동합니다. 그리고 그것은 절대적으로 아름답게 작동합니다 .
기본적으로 와일드 카드와 같은 기능을 추가 할 수있는 Windows 호스트 파일의 수프 버전입니다.이 경우 많은 소스 윈도우가 업데이트를 가져 오기 때문에 필요합니다.
# 행이 앞에없는 호스트 파일의 맨 아래에이 행을 추가하십시오.
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
이제 파일 하단이 다음과 같아야 합니다 . 파일을 저장하고 닫습니다.
끝마친
그들은 당신이 업데이트를 설치하기 위해 기존 가난한 강요 할 수 있는지 확인하기 위해 이제 아크릴 친구는 허리가 있어야 지속적으로 마이크로 소프트의 빅 브라더 전술에 날카로운 눈을 유지 엉망 완전히 PC 가 시간의 적어도 네 번째가 그들이 내 가정용 PC와 Windows 용 PC BUILT로 간주되는 Surface Pro 모두 에서 맞습니까 ??? Cmon, Microsoft!
ping windowsupdate.microsoft.com
경우 이러한 결과는, 당신은 지금부터 황금 될 것입니다!
참고 : 내 경험상 PC 속도가 느려지지 않았습니다. 또한 호스트 파일과 매우 유사한 업데이트를 업데이트하거나 확인하기 위해 Windows에서 사용하는 소스에 대한 요청 외에 인터넷 트래픽을 다시 라우팅하지 않습니다. 또한 기본적으로 hosts 파일과 동일한 형식을 사용합니다. 이것은 또한 윈도우가 내 컴퓨터에 계속 배치하는 정크 재설치를 성공적으로 비활성화 시켰으며, 이는 "업데이트해야하거나 컴퓨터가 멈출 것"과 같은 거대한 컬러 화면을 제공합니다. 분명히 나는 6 개월 정도 전에 완전히 성공적으로 차단했기 때문에 경고를받은 지 오래 된 이래로 경고의 내용을 기억하지 못하지만 내가 본 것 중 가장 성가신 것입니다.
services.msc
필자의 경우 Windows 업데이트가 진행되는 시점을 제어 할뿐만 아니라 설치된 모든 응용 프로그램을 온라인 업데이트에서 제어 할 수 없도록 제한하고 싶습니다.
따라서 간단한 원 스톱 솔루션은 다음과 같습니다. 1. 라우터 쪽에서 호스트의 인터넷 액세스를 차단합니다. 호스트에 설치된 프로그램이나 서비스는 인터넷에 액세스 할 수 없습니다. 원인이있는 Windows 업데이트도 차단됩니다.
대부분의 응용 프로그램은 Chrome, Firefox, 모든 종류의 게임 등과 같은 응용 프로그램 기반 프록시 설정을 지원합니다.
이렇게하면 컴퓨터의 인터넷 액세스가 자신에 의해 크게 제어되므로 아무도 엉망이 될 수 없습니다.
Windows를 업데이트 할 때마다 제어판 | 로컬 프록시를 사용하는 인터넷 옵션이므로 Windows에서 OS를 업데이트 할 수 있습니다. 그 후, 글로벌 프록시를 즉시 끄고 컴퓨터를 다시 한 번 평화롭게 만드십시오.
2 년 후, Microsoft의 업데이트 메커니즘으로 인해 수십억 건의 저장되지 않은 작업이 사라지고 마침내 문제를 해결하는 주요 업데이트가 있습니다.
Windows 10 크리에이터 스 업데이트 사용 가능 ( 직접 다운로드 )
업데이트를 설치 한 후 사용자는 업데이트 적용 여부를 최종적으로 다시 묻습니다 (20 년 이상 전과 같이).
때때로 나는 그 결정 뒤에 누가 있는지 궁금합니다 ...
업데이트 후 업데이트 시간에 대한 추가 옵션이 있습니다. 중지하려면 Windows Update 설정> 고급 옵션> 업데이트 일시 중지> 켜기로 이동하십시오 .
다시 시작 옵션에는 업데이트 알림에 대한 새로운 옵션도 있습니다.
(관리자 권한으로 PowerShell 실행)
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"
서비스 및 그룹 정책 편집기에서 업데이트를 비활성화했지만 때때로 계속 켜져 있습니다. 그런 다음 서비스에서 수동으로 해제해야합니다. GUI를 통해이 작업을 수행하는 것은 번거롭기 때문에 배치 스크립트를 작성했습니다. 그것은 중지 및 비활성화 Background Intelligent Transfer Service
하고 Windows Update
.
@echo off
net stop wuauserv
net stop BITS
sc config wuauserv start= disabled
sc config BITS start= disabled
pause
또한 가벼운 네트워크 모니터 도구 (대역폭 모니터)를 사용하고 있습니다 (시스템 트레이의 아이콘). 아무 것도 없어야 할 때 활동이 표시되면 Windows Update가 다시 켜진 것입니다. 그런 다음 스크립트를 실행하면 꺼집니다.