找回密码
 加入
搜索
查看: 3055|回复: 29

[系统综合] WMIC命令转AU3的问题?

[复制链接]
发表于 2021-10-25 21:49:39 | 显示全部楼层 |阅读模式
本帖最后由 zbezj 于 2021-10-26 19:26 编辑


这一条命令:
wmic path SoftwareLicensingService get Version /VALUE

转化如下:
For $List In ObjGet("winmgmts:").ExecQuery("SELECT Version FROM SoftwareLicensingService")
        $Version = $List.Version
        MsgBox(262144, "测试", $Version)
Next

类似下面的命令请问怎么转化成AU3?
wmic path SoftwareLicensingProduct where ID='e0c42288-980c-4788-a014-c080d2e1926e'  call Activate
wmic path SoftwareLicensingService where version='xxxxx' call InstallProductKey ProductKey='xxxxxx'

发表于 2021-10-26 10:39:18 | 显示全部楼层
大概是这个英文吧,我瞎猜的
Local $owinmgmts = ObjGet("winmgmts:")
Local $colItems = $owinmgmts.ExecQuery("SELECT * FROM SoftwareLicensingService")
If IsObj($colItems) Then
        For $objItem In $colItems
                If $objItem.ID = '0ff1ce15-a989-479d-af46-f275c6370663' Then
                        Run(@ComSpec & ' /c ' & ' Activate')
                EndIf
                If $objItem.Version = 'xxxxx' Then
                        Run(@ComSpec & ' /c ' & " InstallProductKey ProductKey='xxxxxx'")
                EndIf
        Next
EndIf
 楼主| 发表于 2021-10-26 11:29:04 | 显示全部楼层
haijie1223 发表于 2021-10-26 10:39
大概是这个英文吧,我瞎猜的

已测试,不行哦
 楼主| 发表于 2021-10-26 11:30:37 | 显示全部楼层
haijie1223 发表于 2021-10-26 10:39
大概是这个英文吧,我瞎猜的

Activate 也不是批处理命令啊,不能run
发表于 2021-10-26 14:18:34 | 显示全部楼层
zbezj 发表于 2021-10-26 11:30
Activate 也不是批处理命令啊,不能run

继续猜
Local $owinmgmts = ObjGet("winmgmts:")
Local $colItems = $owinmgmts.ExecQuery("SELECT * FROM SoftwareLicensingService")
If IsObj($colItems) Then
        For $objItem In $colItems
                If $objItem.ID = '0ff1ce15-a989-479d-af46-f275c6370663' Then
                        $objItem.Call('Activate')
                EndIf
                If $objItem.Version = 'xxxxxx' Then
                        $objItem.Call("InstallProductKey ProductKey='xxxxxx'")
                EndIf
        Next
EndIf
 楼主| 发表于 2021-10-26 18:54:53 | 显示全部楼层
 楼主| 发表于 2021-10-26 19:26:14 | 显示全部楼层

(10) : ==> The requested action with this object has failed.:
If $objItem.ID = 'e0c42288-980c-4788-a014-c080d2e1926e' Then
If $objItem^ ERROR

 楼主| 发表于 2021-10-26 19:34:03 | 显示全部楼层
Local $owinmgmts = ObjGet("winmgmts:")
Local $colItems = $owinmgmts.ExecQuery("SELECT ID FROM SoftwareLicensingProduct")
If IsObj($colItems) Then
               
                For $objItem In $colItems                       
                If $objItem.ID = 'e0c42288-980c-4788-a014-c080d2e1926e' Then
                        MsgBox(64,1,$objItem.ID)
                                                $objItem.Call('Activate')
                EndIf
        Next
EndIf



(12) : ==> The requested action with this object has failed.:
$objItem.Call('Activate')
$objItem^ ERROR

发表于 2021-10-26 20:38:32 | 显示全部楼层
zbezj 发表于 2021-10-26 19:34
(12) : ==> The requested action with this object has failed.:
$objItem.Call('Activate')
$o ...

32位运行试试
发表于 2021-10-26 20:41:12 | 显示全部楼层

这是我在cmd里面查询SoftwareLicensingService别名的信息,貌似找不到这个别名
C:\Users\Ryan>wmic
wmic:root\cli>/?

WMIC 已弃用。

[全局开关] <命令>

可以使用以下全局开关:
/NAMESPACE           别名在其上操作的命名空间的路径。
/ROLE                包含别名定义的角色的路径。
/NODE                别名在其上操作的服务器。
/IMPLEVEL            客户端模拟级别。
/AUTHLEVEL           客户端身份验证级别。
/LOCALE              客户端应使用的语言 ID。
/PRIVILEGES          启用或禁用所有权限。
/TRACE               将调试信息输出到 stderr。
/RECORD              记录所有输入命令和输出内容。
/INTERACTIVE         设置或重置交互模式。
/FAILFAST            设置或重置 FailFast 模式。
/USER                会话期间要使用的用户。
/PASSWORD            登录会话时要使用的密码。
/OUTPUT              指定输出重定向模式。
/APPEND              指定输出重定向模式。
/AGGREGATE           设置或重置聚合模式。
/AUTHORITY           指定连接的 <授权类型>。
/?[:<BRIEF|FULL>]    用法信息。

有关特定全局开关的详细信息,请键入: switch-name /?


当前角色中可以使用以下别名:
ALIAS                    - 对本地系统上可用别名的访问
BASEBOARD                - 基板(也称为主板或系统板)管理。
BIOS                     - 基本输入/输出服务(BIOS)管理。
BOOTCONFIG               - 启动配置管理。
CDROM                    - CD-ROM 管理。
COMPUTERSYSTEM           - 计算机系统管理。
CPU                      - CPU 管理。
CSPRODUCT                - SMBIOS 中的计算机系统产品信息。
DATAFILE                 - 数据文件管理。
DCOMAPP                  - DCOM 应用程序管理。
DESKTOP                  - 用户的桌面管理。
DESKTOPMONITOR           - 桌面监视器管理。
DEVICEMEMORYADDRESS      - 设备内存地址管理。
DISKDRIVE                - 物理磁盘驱动器管理。
DISKQUOTA                - 用于 NTFS 卷的磁盘空间使用量。
DMACHANNEL               - 直接内存访问(DMA)通道管理。
ENVIRONMENT              - 系统环境设置管理。
FSDIR                    - 文件系统目录项管理。
GROUP                    - 组帐户管理。
IDECONTROLLER            - IDE 控制器管理。
IRQ                      - 中断请求线路(IRQ)管理。
JOB                      - 提供对使用计划服务安排的作业的访问。
LOADORDER                - 定义执行依赖关系的系统服务的管理。
LOGICALDISK              - 本地存储设备管理。
LOGON                    - 登录会话。
MEMCACHE                 - 缓存内存管理。
MEMORYCHIP               - 内存芯片信息。
MEMPHYSICAL              - 计算机系统的物理内存管理。
NETCLIENT                - 网络客户端管理。
NETLOGIN                 - 网络登录信息(属于特定用户)管理。
NETPROTOCOL              - 协议(及其网络特征)管理。
NETUSE                   - 活动网络连接管理。
NIC                      - 网络接口控制器(NIC)管理。
NICCONFIG                - 网络适配器管理。
NTDOMAIN                 - NT 域管理。
NTEVENT                  - NT 事件日志中的项目。
NTEVENTLOG               - NT 事件日志文件管理。
ONBOARDDEVICE            - 主板(系统板)中内置的通用适配器设备的管理。
OS                       - 已安装操作系统的管理。
PAGEFILE                 - 虚拟内存文件交换管理。
PAGEFILESET              - 页面文件设置管理。
PARTITION                - 物理磁盘的已分区区域的管理。
PORT                     - I/O 端口管理。
PORTCONNECTOR            - 物理连接端口管理。
PRINTER                  - 打印机设备管理。
PRINTERCONFIG            - 打印机设备配置管理。
PRINTJOB                 - 打印作业管理。
PROCESS                  - 进程管理。
PRODUCT                  - 安装程序包任务管理。
QFE                      - 快速修复工程。
QUOTASETTING             - 卷上的磁盘配额设置信息。
RDACCOUNT                - 远程桌面连接权限管理。
RDNIC                    - 对特定网络适配器的远程桌面连接管理。
RDPERMISSIONS            - 特定远程桌面连接的权限。
RDTOGGLE                 - 远程打开或关闭远程桌面侦听程序。
RECOVEROS                - 操作系统出现故障时将从内存收集的信息。
REGISTRY                 - 计算机系统注册表管理。
SCSICONTROLLER           - SCSI 控制器管理。
SERVER                   - 服务器信息管理。
SERVICE                  - 服务应用程序管理。
SHADOWCOPY               - 卷影副本管理。
SHADOWSTORAGE            - 卷影副本存储区域管理。
SHARE                    - 共享资源管理。
SOFTWAREELEMENT          - 系统上安装的软件产品元素的管理。
SOFTWAREFEATURE          - SoftwareElement 的软件产品子集的管理。
SOUNDDEV                 - 声音设备管理。
STARTUP                  - 当用户登录到计算机系统时自动运行的命令的管理。
SYSACCOUNT               - 系统帐户管理。
SYSDRIVER                - 基本服务的系统驱动程序管理。
SYSTEMENCLOSURE          - 物理系统外壳管理。
SYSTEMSLOT               - 物理连接点(包括端口、插槽和外设以及专用连接点)的管理。
TAPEDRIVE                - 磁带驱动器管理。
TEMPERATURE              - 温度传感器(电子温度计)数据管理。
TIMEZONE                 - 时区数据管理。
UPS                      - 不间断电源(UPS)管理。
USERACCOUNT              - 用户帐户管理。
VOLTAGE                  - 电压传感器(电子电压表)数据管理。
VOLUME                   - 本地存储卷管理。
VOLUMEQUOTASETTING       - 将磁盘配额设置与特定磁盘卷相关联。
VOLUMEUSERQUOTA          - 每用户存储卷配额管理。
WMISET                   - WMI 服务操作参数管理。

有关特定别名的详细信息,请键入: alias /?

CLASS     - 按 Esc 键可获取完整 WMI 架构。
PATH      - 按 Esc 键可获取完整 WMI 对象路径。
CONTEXT   - 显示所有全局开关的状态。
QUIT/EXIT - 退出程序。

有关 CLASS/PATH/CONTEXT 的详细信息,请键入: (CLASS | PATH | CONTEXT) /?

wmic:root\cli>SoftwareLicensingService /?
SoftwareLicensingService - 找不到别名。


 楼主| 发表于 2021-10-26 20:53:52 | 显示全部楼层
sh1536 发表于 2021-10-26 20:41
这是我在cmd里面查询SoftwareLicensingService别名的信息,貌似找不到这个别名

https://docs.microsoft.com/zh-cn ... arelicensingproduct
 楼主| 发表于 2021-10-26 20:54:38 | 显示全部楼层

还是不行
发表于 2021-10-26 20:58:14 | 显示全部楼层
不是很懂wmic,这两条语句是做什么用的
 楼主| 发表于 2021-10-26 21:05:05 | 显示全部楼层
sh1536 发表于 2021-10-26 20:58
不是很懂wmic,这两条语句是做什么用的
wmic path SoftwareLicensingProduct where ID='e0c42288-980c-4788-a014-c080d2e1926e'  call Activate


这一条,ID:e0c42288-980c-4788-a014-c080d2e1926e指的是Win10的某个版本的id。执行激活它的命令。等价于cmd命令:slmgr -ato


另一条,卸载Office序列号
 楼主| 发表于 2021-10-26 21:27:38 | 显示全部楼层



有点眉目了,和这个文件中的objProduct.Activate()有点像,不过还是没搞太明白

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-4-19 19:14 , Processed in 0.085815 second(s), 20 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表