Last active
March 19, 2022 04:49
-
-
Save shizhao/73044e7843c39e5e2e8c444ac48acab0 to your computer and use it in GitHub Desktop.
Activation Windows for KMS (change line16, set KMS server )
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@echo off | |
cls | |
::Detecting OS version | |
echo **************************************** | |
echo Detecting OS version...... | |
echo **************************************** | |
echo. | |
wmic os get caption,CSDVersion,buildnumber | |
ver | |
echo. | |
echo **************************************** | |
echo. | |
Pause | |
::set KMS server | |
set kmshost=x.com | |
echo. | |
:: KMS Client Setup Keys https://docs.microsoft.com/en-us/windows-server/get-started/kmsclientkeys | |
::Windows Server, version 1709 | |
set wsd=6Y6KB-N82V8-D8CQV-23MJW-BWTG6 | |
set wss=DPCNP-XQFKJ-BJF7R-FRC8D-GF6G4 | |
::Windows Server 2016 | |
set ws2016d=CB7KF-BWN84-R7R2Y-793K2-8XDDG | |
set ws2016s=WC2BQ-8NRM3-FDDYY-2BFGV-KHKQY | |
set ws2016e=JCKRF-N37P4-C2D82-9YXRT-4M63B | |
::Windows 10, version 1709 | |
set w10pw=NRG8B-VKK3Q-CXVCJ-9G2XF-6Q84J | |
set w10pwn=9FNHH-K3HBT-3W4TD-6383H-6XYWF | |
::Windows 10 | |
set w10p=W269N-WFGWX-YVC9B-4J6C9-T83GX | |
set w10pn=MH37W-N47XK-V7XM9-C7227-GCQG9 | |
set w10e=NPPR9-FWDCX-D2C8J-H872K-2YT43 | |
set w10en=DPH2V-TTNVB-4X9Q3-TJR4H-KHJW4 | |
set w10edu=NW6C2-QMPVW-D7KKK-3GKT6-VCFB2 | |
set w10edun=2WH4N-8QGBV-H22JP-CT43Q-MDWWJ | |
set w10e2015ltsb=WNMTR-4C88C-JK8YV-HQ7T2-76DF9 | |
set w10e2015ltsbn=2F77B-TNFGY-69QQF-B8YKP-D69TJ | |
set w10e2016ltsb=DCPHK-NFMTC-H88MJ-PFHPY-QJ4BJ | |
set w10e2016ltsbn=QFFDN-GRT3P-VKWWX-X7T3R-8B639 | |
::Windows Server 2012 | |
set ws2012r2ss=D2N9P-3P6X9-2R39C-7RTCD-MDVJX | |
set ws2012r2d=W3GGN-FT8W3-Y4M27-J84CP-Q3VJ9 | |
set ws2012r2e=KNC87-3J2TX-XB4WP-VCPJV-M4FWM | |
set windowss2012=BN3D2-R7TKB-3YPBD-8DRP2-27GG4 | |
set ws2012n=8N2M2-HWPGY-7PGT9-HGDD8-GVGGY | |
set ws2012sl=2WN2H-YGCQR-KFX6K-CD6TF-84YXQ | |
set ws2012cs=4K36P-JN4VD-GDC6V-KDT89-DYFKP | |
set ws2012ss=XC9B7-NBPP2-83J2H-RHMBY-92BT4 | |
set ws2012ms=HM7DN-YVMH3-46JC3-XYTG7-CYQJJ | |
set ws2012mp=XNH6W-2V9GX-RGJ4K-Y8X6F-QGJ2G | |
set ws2012d=48HP8-DN98B-MYWDG-T2DCC-8W83P | |
::Windows 8 | |
set w81p=GCRJD-8NW9H-F2CDX-CCM8D-9D6T9 | |
set w81pn=HMCNV-VVBFX-7HMBH-CTY9B-B4FXY | |
set w81e=MHF9N-XY6XB-WVXMC-BTDCT-MKKG7 | |
set w81en=TT4HM-HN7YT-62K67-RGRQJ-JFFXW | |
set w8p=NG4HW-VH26C-733KW-K6F98-J8CK4 | |
set w8pn=XCVCF-2NXM9-723PB-MHCB7-2RYQQ | |
set w8e=32JNW-9KQ84-P47T8-D8GGY-CWCK7 | |
set w8en=JMNMF-RHW7P-DMY6X-RF3DR-X2BQT | |
::Windows 7 | |
set w7p=FJ82H-XT6CR-J8D7P-XQJJ2-GPDD4 | |
set w7pn=MRPKT-YTG23-K7D7T-X2JMM-QY7MG | |
set w7pe=W82YF-2Q76Y-63HXB-FGJG9-GF7QX | |
set w7e=33PXH-7Y6KF-2VJC9-XBBR8-HVTHH | |
set w7en=YDRBP-3D83W-TY26F-D46B2-XCKRJ | |
set w7ee=C29WB-22CC8-VJ326-GHFJW-H9DH4 | |
::Windows Server 2008 | |
set ws2008r2w=6TPJF-RBVHG-WBW2R-86QPH-6RTM4 | |
set ws2008r2hpc=TT8MH-CG224-D3D7Q-498W2-9QCTX | |
set ws2008r2s=YC6KT-GKW9T-YTKYR-T4X34-R7VHC | |
set ws2008r2e=489J6-VHDMP-X63PK-3K798-CPX3Y | |
set ws2008r2d=74YFP-3QFB3-KQT8W-PMXWJ-7M648 | |
set ws2008r2is=GT63C-RJFQ3-4GMB6-BRFB9-CB83V | |
set ws2008w=WYR28-R7TFJ-3X2YQ-YCY4H-M249D | |
set ws2008s=TM24T-X9RMF-VWXK6-X8JC9-BFGM2 | |
set ws2008shv=W7VD6-7JFBR-RX26B-YKQ3Y-6FFFJ | |
set ws2008e=YQGMW-MPWTJ-34KDK-48M3W-X4Q6V | |
set ws2008ehv=39BXF-X8Q23-P2WWT-38T2F-G3FPG | |
set ws2008hpc=RCTX3-KWVHP-BR6TB-RB6DM-6X7HP | |
set ws2008d=7M67G-PC374-GR742-YH8V4-TCBY3 | |
set ws2008dhv=22XQ2-VRXRG-P8D42-K34TD-G3QQC | |
set ws2008is=4DWFP-JF3DJ-B7DTH-78FJB-PDRHK | |
::Windows Vista | |
set wvb=YFKBB-PQJJV-G996G-VWGXY-2V3X8 | |
set wvbn=HMBQG-8H2RH-C77VX-27R82-VMQBT | |
set wve=VKK3X-68KWM-X2YGT-QR4M6-4BWMV | |
set wven=VTC42-BM838-43QHV-84HX6-XJXKV | |
::windows menu | |
echo. | |
echo. | |
echo =========================================== | |
echo. | |
echo Activate Windows for KMS | |
echo. | |
echo =========================================== | |
echo. | |
echo Select a Windows version: | |
echo. | |
echo -------------------------- | |
echo. | |
echo [1]. Windows Server, version 1709 | |
echo [2]. Windows Server 2016 | |
echo [3]. Windows 10 | |
echo [4]. Windows Server 2012 | |
echo [5]. Windows 8.x | |
echo [6]. Windows 7 | |
echo [7]. Windows Server 2008 | |
echo [8]. Windows Vista | |
echo. | |
echo ========================================== | |
echo. | |
choice /C 12345678 /M "Plese input a number: " | |
if errorlevel 8 goto wv | |
if errorlevel 7 goto ws2008 | |
if errorlevel 6 goto w7 | |
if errorlevel 5 goto w8 | |
if errorlevel 4 goto ws2012 | |
if errorlevel 3 goto w10 | |
if errorlevel 2 goto ws2016 | |
if errorlevel 1 goto ws | |
:ws | |
echo. | |
echo. | |
echo ========================================== | |
echo. | |
echo Select a Windows Server (version 1709) edition: | |
echo. | |
echo ------------------------------------------ | |
echo. | |
echo [1]. Windows Server Datacenter | |
echo [2]. Windows Server Standard | |
echo. | |
echo ------------------------------------------ | |
echo. | |
choice /C 12 /M "Plese input a number: " | |
if errorlevel 2 (set lkey=%wss% && goto kms) | |
if errorlevel 1 (set lkey=%wsd% && goto kms) | |
:ws2016 | |
echo. | |
echo. | |
echo ========================================== | |
echo. | |
echo Select a Windows Server 2016 edition: | |
echo. | |
echo ------------------------------------------ | |
echo. | |
echo [1]. Windows Server 2016 Datacenter | |
echo [2]. Windows Server 2016 Standard | |
echo [3]. Windows Server 2016 Essentials | |
echo. | |
echo ------------------------------------------ | |
echo. | |
choice /C 123 /M "Plese input a number: " | |
if errorlevel 3 (set lkey=%ws2016e% && goto kms) | |
if errorlevel 2 (set lkey=%ws2016s% && goto kms) | |
if errorlevel 1 (set lkey=%ws2016d% && goto kms) | |
:w10 | |
echo. | |
echo. | |
echo ========================================== | |
echo. | |
echo Select a Windows 10 edition: | |
echo. | |
echo ------------------------------------------ | |
echo. | |
echo [1]. Windows 10, version 1709 | |
echo [2]. Windows 10 | |
echo [3]. Windows 10 Enterprise LTSB | |
echo. | |
echo ------------------------------------------ | |
echo. | |
choice /C 123 /M "Plese input a number: " | |
if errorlevel 3 goto w10ltsb | |
if errorlevel 2 goto win10 | |
if errorlevel 1 goto w101709 | |
:w101709 | |
echo. | |
echo. | |
echo ========================================== | |
echo. | |
echo Select a Windows 10 (version 1709) edition: | |
echo. | |
echo ------------------------------------------ | |
echo. | |
echo [1]. Windows 10 Professional Workstation | |
echo [2]. Windows 10 Professional Workstation N | |
echo. | |
echo ------------------------------------------ | |
echo. | |
choice /C 12 /M "Plese input a number: " | |
if errorlevel 2 (set lkey=%w10pwn% && goto kms) | |
if errorlevel 1 (set lkey=%w10pw% && goto kms) | |
:win10 | |
echo. | |
echo. | |
echo ========================================== | |
echo. | |
echo Select a Windows 10 edition: | |
echo. | |
echo ------------------------------------------ | |
echo. | |
echo [1]. Windows 10 Professional | |
echo [2]. Windows 10 Professional N | |
echo [3]. Windows 10 Enterprise | |
echo [4]. Windows 10 Enterprise N | |
echo [5]. Windows 10 Education | |
echo [6]. Windows 10 Education N | |
echo. | |
echo ------------------------------------------ | |
echo. | |
choice /C 123456 /M "Plese input a number: " | |
if errorlevel 6 (set lkey=%w10edun% && goto kms) | |
if errorlevel 5 (set lkey=%w10edu% && goto kms) | |
if errorlevel 4 (set lkey=%w10en% && goto kms) | |
if errorlevel 3 (set lkey=%w10e% && goto kms) | |
if errorlevel 2 (set lkey=%w10pn% && goto kms) | |
if errorlevel 1 (set lkey=%w10p% && goto kms) | |
:w10ltsb | |
echo. | |
echo. | |
echo ========================================== | |
echo. | |
echo Select a Windows 10 LTSB edition: | |
echo. | |
echo ------------------------------------------ | |
echo. | |
echo [1]. Windows 10 Enterprise 2015 LTSB | |
echo [2]. Windows 10 Enterprise 2015 LTSB N | |
echo [3]. Windows 10 Enterprise 2016 LTSB | |
echo [4]. Windows 10 Enterprise 2016 LTSB N | |
echo. | |
echo ------------------------------------------ | |
echo. | |
choice /C 1234 /M "Plese input a number: " | |
if errorlevel 4 (set lkey=%w10e2016ltsbn% && goto kms) | |
if errorlevel 3 (set lkey=%w10e2016ltsb% && goto kms) | |
if errorlevel 2 (set lkey=%w10e2015ltsbn% && goto kms) | |
if errorlevel 1 (set lkey=%w10e2015ltsb% && goto kms) | |
:ws2012 | |
echo. | |
echo. | |
echo ========================================== | |
echo. | |
echo Select a Windows Server 2012 edition: | |
echo. | |
echo ------------------------------------------ | |
echo. | |
echo [1]. Windows Server 2012 R2 | |
echo [2]. Windows Server 2012 | |
echo. | |
echo ------------------------------------------ | |
echo. | |
choice /C 12 /M "Plese input a number: " | |
if errorlevel 2 goto wins2012 | |
if errorlevel 1 goto ws2012r2 | |
:ws2012r2 | |
echo. | |
echo. | |
echo ========================================== | |
echo. | |
echo Select a Windows Server 2012 R2 edition: | |
echo. | |
echo ------------------------------------------ | |
echo. | |
echo [1]. Windows Server 2012 R2 Server Standard | |
echo [2]. Windows Server 2012 R2 Datacenter | |
echo [3]. Windows Server 2012 R2 Essentials | |
echo. | |
echo ------------------------------------------ | |
echo. | |
choice /C 123 /M "Plese input a number: " | |
if errorlevel 3 (set lkey=%ws2012r2ss% && goto kms) | |
if errorlevel 2 (set lkey=%ws2012r2d% && goto kms) | |
if errorlevel 1 (set lkey=%ws2012r2e% && goto kms) | |
:wins2012 | |
echo. | |
echo. | |
echo ========================================== | |
echo. | |
echo Select a Windows Server 2012 edition: | |
echo. | |
echo ------------------------------------------ | |
echo. | |
echo [1]. Windows Server 2012 | |
echo [2]. Windows Server 2012 N | |
echo [3]. Windows Server 2012 Single Language | |
echo [4]. Windows Server 2012 Country Specific | |
echo [5]. Windows Server 2012 Server Standard | |
echo [6]. Windows Server 2012 MultiPoint Standard | |
echo [7]. Windows Server 2012 MultiPoint Premium | |
echo [8]. Windows Server 2012 Datacenter | |
echo. | |
echo ------------------------------------------ | |
choice /C 12345678 /M "Plese input a number: " | |
echo. | |
if errorlevel 8 (set lkey=%ws2012d% && goto kms) | |
if errorlevel 7 (set lkey=%ws2012mp% && goto kms) | |
if errorlevel 6 (set lkey=%ws2012ms% && goto kms) | |
if errorlevel 5 (set lkey=%ws2012ss% && goto kms) | |
if errorlevel 4 (set lkey=%ws2012cs% && goto kms) | |
if errorlevel 3 (set lkey=%ws2012sl% && goto kms) | |
if errorlevel 2 (set lkey=%ws2012n% && goto kms) | |
if errorlevel 1 (set lkey=%windowss2012% && goto kms) | |
:w8 | |
echo. | |
echo. | |
echo ========================================== | |
echo. | |
echo Select a Windows 8 edition: | |
echo. | |
echo ------------------------------------------ | |
echo. | |
echo [1]. Windows 8.1 Professional | |
echo [2]. Windows 8.1 Professional N | |
echo [3]. Windows 8.1 Enterprise | |
echo [4]. Windows 8.1 Enterprise N | |
echo [5]. Windows 8 Professional | |
echo [6]. Windows 8 Professional N | |
echo [7]. Windows 8 Enterprise | |
echo [8]. Windows 8 Enterprise N | |
echo. | |
echo ------------------------------------------ | |
echo. | |
choice /C 12345678 /M "Plese input a number: " | |
if errorlevel 8 (set lkey=%w8en% && goto kms) | |
if errorlevel 7 (set lkey=%w8e% && goto kms) | |
if errorlevel 6 (set lkey=%w8pn% && goto kms) | |
if errorlevel 5 (set lkey=%w8p% && goto kms) | |
if errorlevel 4 (set lkey=%w81en% && goto kms) | |
if errorlevel 3 (set lkey=%w81e% && goto kms) | |
if errorlevel 2 (set lkey=%w81pn% && goto kms) | |
if errorlevel 1 (set lkey=%w81p% && goto kms) | |
:w7 | |
echo. | |
echo. | |
echo ========================================== | |
echo. | |
echo Select a Windows 7 edition: | |
echo. | |
echo ------------------------------------------ | |
echo. | |
echo [1]. Windows 7 Professional | |
echo [2]. Windows 7 Professional N | |
echo [3]. Windows 7 Professional E | |
echo [4]. Windows 7 Enterprise | |
echo [5]. Windows 7 Enterprise N | |
echo [6]. Windows 7 Enterprise E | |
echo. | |
echo ------------------------------------------ | |
echo. | |
choice /C 123456 /M "Plese input a number: " | |
echo. | |
if errorlevel 6 (set lkey=%w7ee% && goto kms) | |
if errorlevel 5 (set lkey=%7en% && goto kms) | |
if errorlevel 4 (set lkey=%w7e% && goto kms) | |
if errorlevel 3 (set lkey=%w7pe% && goto kms) | |
if errorlevel 2 (set lkey=%w7pn% && goto kms) | |
if errorlevel 1 (set lkey=%w7p% && goto kms) | |
:ws2008 | |
echo. | |
echo. | |
echo ========================================== | |
echo. | |
echo Select a Windows Server 2008 edition: | |
echo. | |
echo ------------------------------------------ | |
echo. | |
echo [1]. Windows Server 2008 R2 | |
echo [2]. Windows Server 2008 | |
echo. | |
echo ------------------------------------------ | |
echo. | |
choice /C 12 /M "Plese input a number: " | |
if errorlevel 2 goto wins2008 | |
if errorlevel 1 goto ws2008r2 | |
:ws2008r2 | |
echo. | |
echo. | |
echo ========================================== | |
echo. | |
echo Select a Windows Server 2008 R2 edition: | |
echo. | |
echo ------------------------------------------ | |
echo. | |
echo [1]. Windows Server 2008 R2 Web | |
echo [2]. Windows Server 2008 R2 HPC edition | |
echo [3]. Windows Server 2008 R2 Standard | |
echo [4]. Windows Server 2008 R2 Enterprise | |
echo [5]. Windows Server 2008 R2 Datacenter | |
echo [6]. Windows Server 2008 R2 for Itanium-based Systems | |
echo. | |
echo ------------------------------------------ | |
echo. | |
choice /C 123456 /M "Plese input a number: " | |
if errorlevel 6 (set lkey=%ws2008r2is% && goto kms) | |
if errorlevel 5 (set lkey=%ws2008r2d% && goto kms) | |
if errorlevel 4 (set lkey=%ws2008r2e% && goto kms) | |
if errorlevel 3 (set lkey=%ws2008r2s% && goto kms) | |
if errorlevel 2 (set lkey=%ws2008r2hpc% && goto kms) | |
if errorlevel 1 (set lkey=%ws2008r2w% && goto kms) | |
:wins2008 | |
echo. | |
echo. | |
echo ========================================== | |
echo. | |
echo Select a Windows Server 2008 edition: | |
echo. | |
echo ------------------------------------------ | |
echo. | |
echo [1]. Windows Web Server 2008 | |
echo [2]. Windows Server 2008 Standard | |
echo [3]. Windows Server 2008 Standard without Hyper-V | |
echo [4]. Windows Server 2008 Enterprise | |
echo [5]. Windows Server 2008 Enterprise without Hyper-V | |
echo [6]. Windows Server 2008 HPC | |
echo [7]. Windows Server 2008 Datacenter | |
echo [8]. Windows Server 2008 Datacenter without Hyper-V | |
echo [9]. Windows Server 2008 for Itanium-Based Systems | |
echo. | |
echo ------------------------------------------ | |
echo. | |
choice /C 123456789 /M "Plese input a number: " | |
if errorlevel 9 (set lkey=%ws2008is% && goto kms) | |
if errorlevel 8 (set lkey=%ws2008dhv% && goto kms) | |
if errorlevel 7 (set lkey=%ws2008d% && goto kms) | |
if errorlevel 6 (set lkey=%ws2008hpc% && goto kms) | |
if errorlevel 5 (set lkey=%ws2008ehv% && goto kms) | |
if errorlevel 4 (set lkey=%ws2008e% && goto kms) | |
if errorlevel 3 (set lkey=%ws2008shv% && goto kms) | |
if errorlevel 2 (set lkey=%ws2008s% && goto kms) | |
if errorlevel 1 (set lkey=%ws2008w% && goto kms) | |
:wv | |
echo. | |
echo. | |
echo ========================================== | |
echo. | |
echo Select a Windows Vista edition: | |
echo. | |
echo ------------------------------------------ | |
echo. | |
echo [1]. Windows Vista Business | |
echo [2]. Windows Vista Business N | |
echo [3]. Windows Vista Enterprise | |
echo [4]. Windows Vista Enterprise N | |
echo. | |
echo ------------------------------------------ | |
echo. | |
choice /C 123456789 /M "Plese input a number: " | |
if errorlevel 4 (set lkey=%wven% && goto kms) | |
if errorlevel 3 (set lkey=%wve% && goto kms) | |
if errorlevel 2 (set lkey=%wvbn% && goto kms) | |
if errorlevel 1 (set lkey=%wvb% && goto kms) | |
::Activation Windows | |
:kms | |
echo. | |
echo. | |
echo KMS key is %lkey% | |
echo. | |
echo Set key... | |
echo. | |
slmgr -ipk %lkey% | |
echo. | |
echo Set KMS server ... | |
echo. | |
slmgr -skms %kmshost% | |
echo. | |
echo Activation Windows... | |
echo. | |
slmgr -ato | |
::end | |
pause |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment