If IsActivated() = False Then
;InstallProductKey($OSkey) ; installs a product key and also activates it
Else
MsgBox(,'','ssssss os')
EndIf If OfficeIsActivated() = False Then
;InstallOfficeProductKey($officekey) ; installs a product key and also activates it
Else
MsgBox(,'','ssssss offf')
EndIf Func IsActivated()
$oWMIService = ObjGet("winmgmts:\\.\root\cimv2")
If IsObj($oWMIService) Then
$oCollection = $oWMIService.ExecQuery("SELECT Description, LicenseStatus, GracePeriodRemaining FROM SoftwareLicensingProduct WHERE PartialProductKey <> null")
If IsObj($oCollection) Then
For $oItem In $oCollection
Switch $oItem.LicenseStatus
Case
ConsoleWrite("Unlicensed" & @CRLF)
Return False
Case
If $oItem.GracePeriodRemaining Then
If StringInStr($oItem.Description, "TIMEBASED_") Then
ConsoleWrite("Timebased activation will expire in " & $oItem.GracePeriodRemaining & " minutes" & @CRLF)
Return False
Else
ConsoleWrite("Volume activation will expire in " & $oItem.GracePeriodRemaining & " minutes" & @CRLF)
Return False
EndIf
Else
ConsoleWrite("The machine is permanently activated." & @CRLF)
Return True
EndIf
Case
ConsoleWrite("Initial grace period ends in " & $oItem.GracePeriodRemaining & " minutes" & @CRLF)
Return False
Case
ConsoleWrite("Additional grace period ends in " & $oItem.GracePeriodRemaining & " minutes" & @CRLF)
Return False
Case
ConsoleWrite("Non-genuine grace period ends in " & $oItem.GracePeriodRemaining & " minutes" & @CRLF)
Return False
Case
ConsoleWrite("Windows is in Notification mode" & @CRLF)
Return False
Case
ConsoleWrite("Extended grace period ends in " & $oItem.GracePeriodRemaining & " minutes" & @CRLF)
Return False
EndSwitch
Next
EndIf
EndIf
EndFunc Func OfficeIsActivated()
$oWMIService = ObjGet("winmgmts:\\.\root\cimv2")
If IsObj($oWMIService) Then
$oCollection = $oWMIService.ExecQuery("SELECT Description, LicenseStatus, GracePeriodRemaining FROM OfficeSoftwareProtectionProduct WHERE PartialProductKey <> null")
If IsObj($oCollection) Then
For $oItem In $oCollection
Switch $oItem.LicenseStatus
Case
ConsoleWrite(" ---UNLICENSED--- " & @CRLF)
Return False
Case
ConsoleWrite(" ---LICENSED--- " & @CRLF)
;If licSr = Then
; WScript.Echo MSG_ERRCODE & licSr & " as licensed"
;End If
Return True
Case
ConsoleWrite("---OOB_GRACE--- Initial grace period ends in " & $oItem.GracePeriodRemaining & " minutes" & @CRLF)
Return False
Case
ConsoleWrite("---OOT_GRACE--- Initial grace period ends in " & $oItem.GracePeriodRemaining & " minutes" & @CRLF)
Return False
Case
ConsoleWrite("---NON_GENUINE_GRACE--- Grace period ends in " & $oItem.GracePeriodRemaining & " minutes" & @CRLF)
Return False
Case
ConsoleWrite("---NOTIFICATIONS--- Grace period ends in " & $oItem.GracePeriodRemaining & " minutes" & @CRLF)
Return False
Case
ConsoleWrite("---EXTENDED GRACE--- Extended grace period ends in " & $oItem.GracePeriodRemaining & " minutes" & @CRLF)
Return False
Case Else
ConsoleWrite("---UNKNOWN---" & @CRLF)
Return False
EndSwitch
Next
EndIf
EndIf
EndFunc

最新文章

  1. javascript 基础篇
  2. freeCodeCamp:Confirm the Ending
  3. ueditor编辑器和at.js集成
  4. CF 61E 树状数组+离散化 求逆序数加强版 三个数逆序
  5. VMware虚拟机相关文件问题
  6. ios发布笔录
  7. Bmob 之 列表查询
  8. 二分图最小路径覆盖--poj2060 Taxi Cab Scheme
  9. jsp web JavaBean MVC 架构 EL表达式 EL函数 JSTL
  10. MVC中重写RoleProvider角色管理
  11. NoSQL、memcached介绍、安装memcached、查看memcached状态
  12. Mobileye众包地图REM的一些整理
  13. iOS中app的分发测试
  14. PHPCMS V9 全站通用日期时间标签
  15. 2018.09.06 烽火传递(单调队列优化dp)
  16. Makefile-函数patsubst
  17. 在 ubuntu 中安装 python3.5 tornado pymysql
  18. 「uoj#188. 【UR #13】Sanrd」
  19. python-is,==
  20. IIS备份和还原

热门文章

  1. 7.Selenium+Python实现搜索百度的测试用例
  2. 增加 [确定] and [失败]系统提示
  3. 分析诊断工具之五:Procedure Analyse优化表结构
  4. 第一章 深入Web请求过程(待续)
  5. 常用Oracle分析函数详解
  6. leetcode874
  7. ORA-04098 trigger &#39;DBBJ.DB_EV_ALTER_ST_METADATA&#39; is invalid and failed re-validation
  8. LAMP 2.2 Apache配置静态缓存
  9. AndroidStudio 中使用FFMPEG
  10. DAY10-MYSQL库操作