Microsoft ScriptControl是一个ActiveX控件,Script Control 控件可以创建运行任何 ActiveX(R) scripting 引擎,我们可以在易语言里通过ScriptControl运行一个VBS文件,来分别取取CPU序列号,取硬盘序列号,取MAC地址,首先创建一个VBScript变量,类型为对象,然后创建对象VBScript,写属性 (“Language”, “VBScript”),调用数值方法 (“ExecuteStatement”,)执行我们的VBS代码,我们VBS代码写成常量,在易语言里加载。
取CPU序列号
易语言源码:
.版本 2 .子程序 取CPU序列号, 文本型, 公开 .局部变量 VBScript, 对象 VBScript.创建 (“ScriptControl”, ) VBScript.写属性 (“Language”, “VBScript”) VBScript.数值方法 (“ExecuteStatement”, #CPUSet) 返回 (VBScript.通用方法 (“Run”, “Getcpuid”, ).取文本 ())
VBS
Function Getcpuid() Dim cpuSet,cpu Set cpuSet = GetObject("winmgmts:{impersonationLevel=impersonate}").InstancesOf("Win32_Processor") For Each cpu In cpuSet getcpuid=cpu.ProcessorId exit for Next end Function
取硬盘序列号
易语言源码
.版本 2 .子程序 取硬盘序列号, 文本型, 公开 .局部变量 VBScript, 对象 VBScript.创建 (“ScriptControl”, ) VBScript.写属性 (“Language”, “VBScript”) VBScript.数值方法 (“ExecuteStatement”, #HdSet) 返回 (VBScript.通用方法 (“Run”, “Gethardid”, ).取文本 ())
vbs
Function gethardid() Dim hdid,hd Set hdid =GetObject("winmgmts:{impersonationLevel=impersonate}").InstancesOf("Win32_PhysicalMedia") for each hd in hdid gethardid = hd.SerialNumber exit for next End Function
取MAC地址
易语言源码
.版本 2 .子程序 取MAC地址, 文本型, 公开 .局部变量 VBScript, 对象 VBScript.创建 (“ScriptControl”, ) VBScript.写属性 (“Language”, “VBScript”) VBScript.数值方法 (“ExecuteStatement”, #MACSet) 返回 (VBScript.通用方法 (“Run”, “MACAddress”, ).取文本 ())
VBS
Function MACAddress() Dim mc,mo Set mc=GetObject("Winmgmts:").InstancesOf("Win32_NetworkAdapterConfiguration") For Each mo In mc If mo.IPEnabled=True Then MACAddress= mo.MacAddress Exit For End If Next End Function