This site uses cookies for analytics, personalized content and ads. By continuing to browse this site, you agree to this use.
Author Image Friday, 28 July 2017

[BatchScript] Nhập key và lấy Installation ID Office nhanh và chuẩn nhất


Chào các bạn, ở bài viết trước tôi đã giới thiệu cho các bạn 1 đoạn script nhỏ nhưng vô cùng lợi hại trong việc nhập key và lấy Installation ID cho Windows chạy trực tiếp trên cửa sổ Command Prompt. Tuy nhiên với Office thì không đơn giản như vậy. Vì sao ? Office cho phép người dùng cài nhiều phiên bản (Office 2010, Office 2013, Office 2016...) trong mỗi phiên bản lại có thể cài nhiều apps khác nhau (Pro Plus, Visio Pro, Project Pro...). Và để xử lý mớ lộn xộn này ta phải xử dụng file batch chứ không thể chạy trực tiếp trên cửa sổ cmd được

Ok ở bài viết này tôi sẽ chia sẻ cho các bạn script để làm việc đó.

Key kích hoạt

Truy cập: https://pastebin.com/raw/JiEU0KwQ

I, Script chia IID từ các key đã cài trong máy

File này không có chức năng nhập key, chỉ có chức năng lấy và chia IID với các key đã cài vào trong máy. Nó hỗ trợ tất cả các trường hợp
  • Cài 1 bộ Office
  • Cài nhiều bộ Office song song
  • Cài nhiều bộ Office song song trong mỗi bộ Office lại cài nhiều app
Để làm được điều đó trước tiên tạo file .bat hoặc .cmd, tham khảo Thêm "New Script File" vào context menu chuột phải

Copy và dán toàn bộ nội dung này vào

:: Made by Hoang Hung
:: Homepage: https://hung1001nd.blogspot.com
@echo off
color 0f
pushd "%~dp0"
title Get IID Office 2010-2013-2016
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
if "%errorlevel%" NEQ "0" (
 echo: Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
 echo: UAC.ShellExecute "%~s0", "", "", "runas", 1 >> "%temp%\getadmin.vbs"
 "%temp%\getadmin.vbs" & exit 
)
if exist "%temp%\getadmin.vbs" del /f /q "%temp%\getadmin.vbs"
 
setLocal EnableDelayedExpansion
set ver=(4,5,6)
for /d %%a in %ver% do call:path "%%a"
start %~dp0id.txt
timeout 2 >nul 
del /f %~dp0id.txt
exit
 
:path
if exist "C:\Program Files\Microsoft Office\Office1%~1\ospp.vbs" (
 cd /d "C:\Program Files\Microsoft Office\Office1%~1"
 call:getID "%~1"
)
 
if exist "C:\Program Files (x86)\Microsoft Office\Office1%~1\ospp.vbs" (
 cd /d "C:\Program Files (x86)\Microsoft Office\Office1%~1"
 call:getID "%~1"
)
goto:eof
 
:getID
for /f "tokens=4-8 delims=:, " %%b in ('cscript //nologo ospp.vbs /dinstid ^| findstr /i "Installation ID"') do (
 set id=%%f
 if %~1 EQU 4 (
  set id1=!id:~0,6!& set id2=!id:~6,6!& set id3=!id:~12,6!& set id4=!id:~18,6!& set id5=!id:~24,6!& set id6=!id:~30,6!& set id7=!id:~36,6!& set id8=!id:~42,6!& set id9=!id:~48,6!
  (echo %%b %%c, %%d & echo.Installation ID: !id1!-!id2!-!id3!-!id4!-!id5!-!id6!-!id7!-!id8!-!id9!&echo.) >>%~dp0id.txt 
 ) else (
  set id1=!id:~0,7!& set id2=!id:~7,7!& set id3=!id:~14,7!& set id4=!id:~21,7!& set id5=!id:~28,7!& set id6=!id:~35,7!& set id7=!id:~42,7!& set id8=!id:~49,7!& set id9=!id:~56,7!
  (echo %%b %%c, %%d & echo.Installation ID: !id1!-!id2!-!id3!-!id4!-!id5!-!id6!-!id7!-!id8!-!id9!&echo.) >>%~dp0id.txt
 )
)
exit /b

Chạy script và chờ dãy IID được xuất ra file txt. Rất nhanh và chuẩn

Sau khi lấy được Confirmation ID bạn có thể dán nhanh vào cửa sổ cmd(admin) để kích hoạt

Office 2016

if exist "%ProgramFiles%\Microsoft Office\Office16\ospp.vbs" cd /d "%ProgramFiles%\Microsoft Office\Office16"
if exist "%ProgramFiles(x86)%\Microsoft Office\Office16\ospp.vbs" cd /d "%ProgramFiles(x86)%\Microsoft Office\Office16"
cscript //nologo OSPP.VBS /actcid:111111222222333333444444555555666666777777888888

Office 2013

if exist "%ProgramFiles%\Microsoft Office\Office15\ospp.vbs" cd /d "%ProgramFiles%\Microsoft Office\Office15"
if exist "%ProgramFiles(x86)%\Microsoft Office\Office15\ospp.vbs" cd /d "%ProgramFiles(x86)%\Microsoft Office\Office15"
cscript //nologo OSPP.VBS /actcid:111111222222333333444444555555666666777777888888

Office 2010

if exist "%ProgramFiles%\Microsoft Office\Office14\ospp.vbs" cd /d "%ProgramFiles%\Microsoft Office\Office14"
if exist "%ProgramFiles(x86)%\Microsoft Office\Office14\ospp.vbs" cd /d "%ProgramFiles(x86)%\Microsoft Office\Office14"
cscript //nologo OSPP.VBS /actcid:111111222222333333444444555555666666777777888888

Thay dãy Confirmation ID bằng dãy số của bạn, trong trường hợp mỗi bộ office lại cài nhiều apps bạn nối tiếp lệnh như sau, ví dụ

if exist "%ProgramFiles%\Microsoft Office\Office16\ospp.vbs" cd /d "%ProgramFiles%\Microsoft Office\Office16"
if exist "%ProgramFiles(x86)%\Microsoft Office\Office16\ospp.vbs" cd /d "%ProgramFiles(x86)%\Microsoft Office\Office16"
cscript //nologo OSPP.VBS /actcid:111111222222333333444444555555666666777777888888
cscript //nologo OSPP.VBS /actcid:111111222222333333444444555555666666777777888888
...

II,  Nhập key và lấy Installation ID

Tăng độ khó lên 1 chút, script này sẽ kiêm thêm chức năng nhập key, việc của bạn là tìm vài key còn by phone và để vào đúng vị trí. Tương tự như trên cũng hỗ trợ các trường hợp
  • Cài 1 bộ Office
  • Cài nhiều bộ Office song song
  • Cài nhiều bộ Office song song trong mỗi bộ Office lại cài nhiều app
Nội dung file .bat hoặc .cmd sẽ như sau

:: Made by Hoang Hung
:: Homepage: https://hung1001nd.blogspot.com
@echo off
color 0f
 
:: ########## Paste key here ########## 
:: 1 key
set keyoff14=(Key1)
:: 2 key
set keyoff15=(Key1,Key2)
:: 3 key
set keyoff16=(Key1,Key2,Key3)
:: ########## Paste key here ########## 
 
pushd "%~dp0"
title Install key ^& Get IID Office 2010-2013-2016
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
if "%errorlevel%" NEQ "0" (
 echo: Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
 echo: UAC.ShellExecute "%~s0", "", "", "runas", 1 >> "%temp%\getadmin.vbs"
 "%temp%\getadmin.vbs" & exit 
)
if exist "%temp%\getadmin.vbs" del /f /q "%temp%\getadmin.vbs"
 
setLocal EnableDelayedExpansion
set ver=(4,5,6)
for /d %%a in %ver% do call:path "%%a"
start %~dp0id.txt
timeout 2 >nul 
del /f %~dp0id.txt
exit
 
:path
if exist "C:\Program Files\Microsoft Office\Office1%~1\ospp.vbs" (
 cd /d "C:\Program Files\Microsoft Office\Office1%~1"
 call:getID "%~1"
)
if exist "C:\Program Files (x86)\Microsoft Office\Office1%~1\ospp.vbs" (
 cd /d "C:\Program Files (x86)\Microsoft Office\Office1%~1"
 call:getID "%~1"
)
goto:eof
 
:getID
if %~1 equ 4 (
  for /d %%c in %keyoff14% do (
   echo Installing key %%c...
   cscript //nologo ospp.vbs /inpkey:%%c | find "key"
  )
 )
if %~1 equ 5 (
  for /d %%c in %keyoff15% do (
   echo Installing key %%c...
   cscript //nologo ospp.vbs /inpkey:%%c | find "key"
  )
 )
if %~1 equ 6 (
  for /d %%c in %keyoff16% do (
   echo Installing key %%c...
   cscript //nologo ospp.vbs /inpkey:%%c | find "key"
  )
 )
for /f "tokens=4-8 delims=:, " %%b in ('cscript //nologo ospp.vbs /dinstid ^| findstr /i "Installation ID"') do (
 set id=%%f
 if %~1 EQU 4 (
  set id1=!id:~0,6!& set id2=!id:~6,6!& set id3=!id:~12,6!& set id4=!id:~18,6!& set id5=!id:~24,6!& set id6=!id:~30,6!& set id7=!id:~36,6!& set id8=!id:~42,6!& set id9=!id:~48,6!
  (echo %%b %%c, %%d & echo.Installation ID: !id1!-!id2!-!id3!-!id4!-!id5!-!id6!-!id7!-!id8!-!id9!&echo.) >>%~dp0id.txt 
 ) else (
  set id1=!id:~0,7!& set id2=!id:~7,7!& set id3=!id:~14,7!& set id4=!id:~21,7!& set id5=!id:~28,7!& set id6=!id:~35,7!& set id7=!id:~42,7!& set id8=!id:~49,7!& set id9=!id:~56,7!
  (echo %%b %%c, %%d & echo.Installation ID: !id1!-!id2!-!id3!-!id4!-!id5!-!id6!-!id7!-!id8!-!id9!&echo.) >>%~dp0id.txt
 )
)
exit /b

Trong đó
keyoff14= Office 2010
keyoff15= Office 2013
keyoff16= Office 2016

Thay key Key1,Key2,Key3... bằng key kích hoạt của bạn giữa các key ngăn cách bằng dấu PHẨY sau đó lưu lại và chạy

Sau khi lấy được Confirmation ID bạn có thể dán nhanh vào cửa sổ cmd(admin) để kích hoạt

Office 2016

if exist "%ProgramFiles%\Microsoft Office\Office16\ospp.vbs" cd /d "%ProgramFiles%\Microsoft Office\Office16"
if exist "%ProgramFiles(x86)%\Microsoft Office\Office16\ospp.vbs" cd /d "%ProgramFiles(x86)%\Microsoft Office\Office16"
cscript //nologo OSPP.VBS /actcid:111111222222333333444444555555666666777777888888

Office 2013

if exist "%ProgramFiles%\Microsoft Office\Office15\ospp.vbs" cd /d "%ProgramFiles%\Microsoft Office\Office15"
if exist "%ProgramFiles(x86)%\Microsoft Office\Office15\ospp.vbs" cd /d "%ProgramFiles(x86)%\Microsoft Office\Office15"
cscript //nologo OSPP.VBS /actcid:111111222222333333444444555555666666777777888888

Office 2010

if exist "%ProgramFiles%\Microsoft Office\Office14\ospp.vbs" cd /d "%ProgramFiles%\Microsoft Office\Office14"
if exist "%ProgramFiles(x86)%\Microsoft Office\Office14\ospp.vbs" cd /d "%ProgramFiles(x86)%\Microsoft Office\Office14"
cscript //nologo OSPP.VBS /actcid:111111222222333333444444555555666666777777888888

Thay dãy Confirmation ID bằng dãy số của bạn, trong trường hợp mỗi bộ office lại cài nhiều apps bạn nối tiếp lệnh như sau, ví dụ

if exist "%ProgramFiles%\Microsoft Office\Office16\ospp.vbs" cd /d "%ProgramFiles%\Microsoft Office\Office16"
if exist "%ProgramFiles(x86)%\Microsoft Office\Office16\ospp.vbs" cd /d "%ProgramFiles(x86)%\Microsoft Office\Office16"
cscript //nologo OSPP.VBS /actcid:111111222222333333444444555555666666777777888888
cscript //nologo OSPP.VBS /actcid:111111222222333333444444555555666666777777888888
...

Bạn có thể tham khảo video sau đây để hình dung rõ hơn tác dụng của script nhé
weZyf1WV8dg
Good Luck !
Comments:
Bạn được tự do bày tỏ quan điểm nhưng nghiêm cấm spam
  • Chèn ảnh theo mẫu [img]link[/img]
  • Chèn video Youtube theo mẫu [youtube]link[/youtube]
  • Chèn code theo mẫu [pre]code[/pre]. Lưu ý: mã hóa code trước khi bình luận

  • Duy Tùng Nguyễn 10/23/2017 11:58:00 PM
    Anh cho em hỏi có thể dùng file bat Nhập key và lấy Installation ID không nhập key để thay cho file bat Lấy IID không ạ? :D Em cảm ơn!
    Duy Tùng Nguyễn 10/24/2017 12:03:00 AM
    Khi em chạy file get IID nó hiện thế này ạ!
    [img]https://i.imgur.com/hKFgwxR.jpg[/img]
    Có lỗi gì không anh!
    Please wait while i am loading Facebook SDK js