Jak pobrać dowolną kompilację systemu Windows 10 za pomocą narzędzia do tworzenia multimediów

Za każdym razem, gdy Microsoft wypuszcza nową aktualizację funkcji dla systemu Windows 10, narzędzie Media Creation Tool jest aktualizowane. Dzięki nowej wersji tego narzędzia użytkownicy mogą pobrać najnowszą wersję systemu Windows 10. Warto jednak pamiętać, że jeśli potrzebujesz starszej aktualizacji, Media Creation Tool może nie być w tym przypadku zbyt pomocne. Mimo to, pliki ISO dla starszych wersji są nadal dostępne, a za pomocą prostego skryptu BAT można pobrać dowolną kompilację systemu Windows 10 przy użyciu narzędzia Media Creation.

OSTRZEŻENIE: Przewiń w dół, aby obejrzeć samouczek wideo zamieszczony na końcu artykułu.

Pobierz dowolną kompilację systemu Windows 10

Skrypt BAT został stworzony przez użytkownika Reddit o pseudonimie aveyo. Możesz go pobrać bezpośrednio z jego linku do Pastebin, ale dla pewności zamieszczamy go również tutaj na wypadek, gdyby oryginalne łącze przestało działać.

Otwórz Notatnik i skopiuj do niego poniższe linijki. Następnie zapisz plik z rozszerzeniem BAT.

@echo off &title MediaCreationTool.bat by AveYo
:: Uniwersalny wrapper dla wszystkich wersji "RedStone": 1607, 1703, 1709, 1803 i 1809
:: Wykorzystuje wyłącznie oryginalne pliki hostowane przez Microsoft dla aktualnych i przeszłych wersji MCT Windows 10
:: Pełne wsparcie do tworzenia edycji dla kanału biznesowego (Enterprise) z możliwością wyboru języka, x86, x64 lub AIO!

:: Dodaj/usuwaj parametry uruchomienia poniżej, jeśli zajdzie taka potrzeba - ustawienia domyślne mają na celu zminimalizowanie problemów przy aktualizacjach
set "OPTIONS=/Telemetry Disable /DynamicUpdate Disable /MigrateDrivers all /ResizeRecoveryPartition disable /ShowOOBE none"

:: Odkomentuj, aby wyświetlić dziennik konsoli MCT w czasie rzeczywistym w celu debugowania
rem set "OPTIONS=%OPTIONS% /Console"

:: Odkomentuj, aby zignorować wybór GUI i ustawić docelową wersję na sztywno: 1=1607, 2=1703, 3=1709, 4=1803, 5=1809
rem set/a MCT_VERSION=5

:: Dostępne wersje MCT
set versions= 1607 [ RedStone 1 ], 1703 [ RedStone 2 ], 1709 [ RedStone 3 ], 1803 [ RedStone 4 ], 1809 [ RedStone 5 ]

:: Wyświetl dialog GUI %1:title %2:header %3:choices %4:output_variable
if not defined MCT_VERSION call :choice "MediaCreationTool.bat by AveYo" "Wybierz wersję Windows 10" "%versions%" MCT_VERSION
if not defined MCT_VERSION echo Nie wybrano MCT_VERSION, kończenie.. & timeout /t 5 & exit/b
goto version%MCT_VERSION%

:version1 1607 [RS1]
set "V=1607"
set "D=20170116"
set "EULA=https://wscont.apps.microsoft.com/winstore/OSUpgradeNotification/MediaCreationTool/prod"
set "EULA_FIX=https://download.microsoft.com/download/C/0/3/C036B882-9F99-4BC9-A4B5-69370C4E17E9"
set "CAB=https://wscont.apps.microsoft.com/winstore/OSUpgradeNotification/MediaCreationTool/prod/Products_20170116.cab"
set "MCT=https://download.microsoft.com/download/C/F/9/CF9862F9-3D22-4811-99E7-68CE3327DAE6/MediaCreationTool.exe"
echo Wybrano wersję %V% %D%!
goto process

:version2 1703 [RS2]
set "V=1703"
set "D=20170317"
set "EULA=https://wscont.apps.microsoft.com/winstore/OSUpgradeNotification/MediaCreationTool/prod"
set "EULA_FIX=https://download.microsoft.com/download/C/0/3/C036B882-9F99-4BC9-A4B5-69370C4E17E9"
set "CAB=https://download.microsoft.com/download/9/5/4/954415FD-D9D7-4E1F-8161-41B3A4E03D5E/products_20170317.cab"
set "MCT=https://download.microsoft.com/download/1/C/4/1C41BC6B-F8AB-403B-B04E-C96ED6047488/MediaCreationTool.exe"
:: MCT 1703 również ma błędy, więc użyj 1607 zamiast tego
set "MCT=https://download.microsoft.com/download/C/F/9/CF9862F9-3D22-4811-99E7-68CE3327DAE6/MediaCreationTool.exe"
echo Wybrano wersję %V% %D%!
goto process

:version3 1709 [RS3]
set "V=1709"
set "D=20180105"
set "EULA="
set "CAB=https://download.microsoft.com/download/3/2/3/323D0F94-95D2-47DE-BB83-1D4AC3331190/products_20180105.cab"
set "MCT=https://download.microsoft.com/download/A/B/E/ABEE70FE-7DE8-472A-8893-5F69947DE0B1/MediaCreationTool.exe"
echo Wybrano wersję %V% %D%!
goto process

:version4 1803 [RS4]
set "V=1803"
set "D=20180420"
set "EULA="
set "CAB=https://download.microsoft.com/download/6/2/6/626729CF-8C1C-43DF-8C9C-AD2FD56948C3/products_20180420.cab"
set "MCT=https://software-download.microsoft.com/download/pr/MediaCreationTool1803.exe"
echo Wybrano wersję %V% %D%!
goto process

:version5 1809 [RS5]
set "V=1809"
set "D=20180924"
set "EULA="
set "CAB=https://download.microsoft.com/download/6/F/B/6FB97F08-E010-48A4-A9DC-18FCA920CEB4/products_20180924.cab"
set "MCT=https://software-download.microsoft.com/download/pr/MediaCreationTool1809.exe"
echo Wybrano wersję %V% %D%!
goto process

:process
echo.
echo Uwaga: MCT zależy od usługi BITS! W przypadku problemów, uruchom skrypt jako administrator..
bitsadmin.exe /reset /allusers 2>nul
net stop bits /y 2>nul
net start bits /y 2>nul

:: czyszczenie - może obejmować również pliki tymczasowe, ale nie jest to zalecane, ponieważ nie można wznowić przez C:$Windows.~WSSourcessetuphost
pushd "%~dp0"
del /f /q products.* 2>nul &rem rd /s/q C:$Windows.~WS 2>nul & rd /s/q C:$WINDOWS.~BT 2>nul
:: pobierz MCT
set "WEBCLIENT=[Net.ServicePointManager]::SecurityProtocol="tls12,tls11,tls";(new-object System.Net.WebClient)"
if not exist MediaCreationTool%V%.exe powershell -noprofile -c "%WEBCLIENT%.DownloadFile('%MCT%','MediaCreationTool%V%.exe');"
if not exist MediaCreationTool%V%.exe color 0c & echo Błąd! Brak MediaCreationTool%V%.exe & pause & exit /b
:: pobierz CAB
if not exist products_%D%.cab powershell -noprofile -c "%WEBCLIENT%.DownloadFile('%CAB%','products_%D%.cab');"
if not exist products_%D%.cab color 0c & echo Błąd! Brak products_%D%.cab & pause & exit /b
:: rozpakuj CAB
expand.exe -R products_%D%.cab -F:* . >nul 2>nul
if not exist products.xml color 0c & echo Błąd! Zły lub brak products_%D%.cab & pause & exit /b
:: popraw XML, aby umożliwić wybór edycji kanału biznesowego (Enterprise) oraz drobne poprawki kosmetyczne
set "READ_XML=$f=[System.IO.File]::ReadAllText('products.xml')"
set "WRITE_XML=[System.IO.File]::WriteAllText('products.xml', $f)"
set "r1= $f=$f.Replace('IsRetailOnly>True<','IsRetailOnly>False<')"
set "r2=.Replace('%%ENTERPRISE','Windows 10 Enterprise')"
:: napraw stare linki EULA, które psują MCT w 1607 i 1703
if not defined EULA (set "r3=") else set "r3=.Replace('%EULA%','%EULA_FIX%')"
powershell -c "%READ_XML%; %r1%%r2%%r3%; %WRITE_XML%;"
:: spakuj XML z powrotem do CAB
start "" /wait makecab products.xml products.cab
:: na koniec uruchom MCT z lokalną konfiguracją i opcjonalnymi parametrami uruchamiającymi
start "" MediaCreationTool%V%.exe /Selfhost %OPTIONS%
exit/b

:: narzędzia
::------------------------------------------------------------------------------------------------------------------------------
:choice %1:title %2:header %3:choices %4:output_variable [GUI radioboxes dialog snippet by AveYo] released under MIT License
setlocal &set "parameters=$title="%~1"; $header="%~2"; $choices="%~3"; $global:c="";"
set "s1=[void][System.Reflection.Assembly]::LoadWithPartialName('System.Windows.Forms');$f=New-Object System.Windows.Forms.Form"
set "s2=;$f.Text=$title; $f.Forecolor="Snow"; $f.BackColor=0xff180052; $f.StartPosition='CenterScreen'; $f.AutoSize=$true;"
set "s3=$g=New-Object System.Windows.Forms.GroupBox; $g.Location='40,10'; $g.Margin='0,0,40,0'; $g.MinimumSize="280,100";"
set "s4=$g.AutoSize=$true; $g.text=$header; $f.Controls.Add($g);"
set "s5=$i=1; foreach($l in $choices.split(',')){ $r=New-Object System.Windows.Forms.RadioButton; $r.Location='20,'+(30*$i);"
set "s6=$r.Name=$i;$r.Text=$l;$r.AutoSize=$true;$r.add_Click({$global:c=$this.Name}); $g.Controls.Add($r); $r.Checked=1; $i++};"
set "s7=$j=1;foreach($t in @('OK','Exit')){$b=New-Object System.Windows.Forms.Button;$b.Location=''+(120*($j-1)+80)+','+40*$i;"
set "s8=$b.Name="b"+$j; $b.Text=$t; $b.DialogResult=$j; if ($j -eq 1){$f.AcceptButton=$b}; $f.Controls.Add($b); $j++};"
set "s9=$f.Add_Shown({$f.Activate()}); $ret=$f.ShowDialog(); if ($ret -eq 2){$global:c=""}; write-host $global:c"
for /l %%# in (1,1,9) do call set "ps_Choice=%%ps_Choice%%%%s%%#:"="%%"
for /f "usebackq tokens=* delims=" %%# in (`powershell -noprofile -c "%parameters% %ps_Choice%"`) do set "output_var=%%#"
endlocal & set "%~4=%output_var%" & exit/b
::------------------------------------------------------------------------------------------------------------------------------

Aby uruchomić ten plik BAT, wymagane są uprawnienia administratora. Po uruchomieniu zobaczysz okno wiersza polecenia, a następnie kolejne okno, w którym zostaniesz poproszony o wybór, którą wersję Windows 10 chcesz pobrać. Możesz pobrać ostateczne kompilacje Redstone 1 – 5.

Po dokonaniu wyboru, narzędzie do tworzenia multimediów pobierze pliki do tej samej lokalizacji, w której zapisałeś plik BAT. Teraz możesz uruchomić to narzędzie i skorzystać z opcji pobrania wybranej kompilacji systemu Windows 10. Narzędzie to umożliwia zarówno aktualizację istniejącej instalacji, jak i utworzenie rozruchowego dysku USB.

Wszystkie pliki pobierane są bezpośrednio z serwerów Microsoftu. Plik BAT jedynie pomaga w znalezieniu odpowiednich plików i zainicjowaniu pobierania. Nie dostarcza ani nie modyfikuje plików udostępnionych przez Microsoft.