需要批量升级windows版本

问题描述 投票:0回答:1

我真的没有编码天赋,请求你的帮助。我想创建一个小批量来执行以下操作:

  • 确定Windows版本(Home或Pro),然后根据Windows版本决定是否更新为Pro。

所以我开始:

@echo off
set "params=%*"
cd /d "%~dp0" && ( if exist "%temp%\getadmin.vbs" del "%temp%\getadmin.vbs" ) && fsutil dirty query %systemdrive% 1>nul 2>nul || (  echo Set UAC = CreateObject^("Shell.Application"^) : UAC.ShellExecute "cmd.exe", "/k cd ""%~sdp0"" && %~s0 %params%", "", "runas", 1 >> "%temp%\getadmin.vbs" && "%temp%\getadmin.vbs" && exit /B )

对于管理员权限,然后我想要输出

wmic os caption

到 if else 例程。 因此,如果它是一个家,则更改pk.exe,如果不是,则退出或其他什么。

谢谢!

windows batch-file upgrade
1个回答
0
投票

基于我的评论的示例:

@Echo Off
SetLocal EnableExtensions
Set "Caption="
For /F Tokens^=6Delims^=^" %%G In ('%SystemRoot%\System32\wbem\WMIC.exe OS Where
 "Version>10 And OperatingSystemSKU>=98 And OperatingSystemSKU<=101"" Get Caption
 /Format:MOF 2^>NUL') Do Set "Caption=%%G"
If Not Defined Caption (Echo You are not running a valid Home Edition of Windows.
    Echo Press any key to exit...& Pause 1>NUL & Exit /B)
Echo You are running %Caption%.
Echo If you have a Product Key for:
Echo    Education
Echo    Professional Education
Echo You can use changepk.exe to upgrade.
Pause 
Rem The rest of your code here
© www.soinside.com 2019 - 2024. All rights reserved.