ahk系列-windows超级运行框-表达式计算(5)—uuid/cpuid获取

1、环境准备

  1. windows 7,8,10,11操作系统
  2. ahk 2.x_64位

2、使用方式

uuid/cpuid 用于获取随机值,和cpu的序列号

  1.    输入win+R打开windows运行框 
  2.   在运行框中输入:cpuid ,输出cpu的序列号
  3.   在运行框中输入:uuid  ,输出随机值
  4.  表达式按== 触发结果

3、演示

windows超级运行框-表达式计算(5)—uuid/cpuid获取

 4、代码:

#HotIf  winActive("运行") and winActive("ahk_class #32770")
#MaxThreadsPerHotkey 10
;在运行框中执行强大的计算功能,包括数学运算等
:*?:==::{
  try{
       rawText:=ControlGetText("Edit1","A") ;
       fullResult:=runbox.calculateExpression(rawText)
       if fullResult{
           ControlsetText(fullResult,"Edit1","A")
       }
       ControlSend("{END}","Edit1","A")
   }
}
#HotIf
;==========================================================================================================系统快捷键映射
;执行各种运算取值
class runbox
{
    ;执行比表达式计算,"==" 触发,callflag是其他函数调用该方法
    static calculateExpression(rawstr,callflag:=0)
    {
        ;获取cpuid
        if strLower(trim(rawStr))=="cpuid"{
            cpuid :=ak.cpuid or ak.getCpuid()
            fulltxt:= rawStr . "=" . cpuid
            return cpuid
        }
        ;获取uuid随机值
        if strLower(trim(rawStr))=="uuid"{
            uuid:=ak.uuid()
            fulltxt:= rawStr . "=" . uuid
            return uuid
        }
    }
}
;==========================================================================================================系统快捷键映射
;++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ak工具类class
class ak
{
    static cpuid:=""
   ;Func获取cpuid,需要在脚本开始阶段就执行
   static getCpuid()
   {
       query := "SELECT * FROM Win32_Processor"
       wmi := ComObjGet("winmgmts:\\.\root\cimv2")
       col := wmi.ExecQuery(query)
       for obj in col {
           return this.cpuid:=obj.ProcessorID
       }
       return ""
   }
  ;Func 生成32位UUID来源于guid
  static uuid()
  {
      shellobj := ComObject("Scriptlet.TypeLib")
      return RegExReplace(shellobj.GUID,"({|}|-)","") ;去掉花括号和-
   }
}
;++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ak工具类class

5、总结

cpuid获取比较耗时,我们可以在脚本开启时异步获取

完整功能参考:windows超级运行框-表达式计算(12)汇总

各位大佬觉得还可以怎么操作? 欢迎评论区留言讨论!

  • 7
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值