VB6或VBScript代码检测是否在VMware或虚拟机上运行?

时间:2016-08-20 07:17:20

标签: vbscript vb6 virtual-machine virtualbox virtualization

是否有VB6或VBScript代码来检测是否在VMware或虚拟机上运行?

以下链接显示其他编程语言的代码。在VB6或VBScript上有办法吗?

Detect virtualized OS from an application?

How to detect if my application is running in a virtual machine?

Detect if your program is running inside a Virtual Machine

2 个答案:

答案 0 :(得分:2)

Vmware有this article关于不同的方法:

  

虚拟BIOS DMI信息   VMware虚拟BIOS具有许多特定于VMware的标识符,程序可以使用这些标识符来检测虚拟机管理程序。对于DMI字符串检查,请使用BIOS序列号并检查字符串“VMware-”或“VMW”(对于在Fusion上运行的Mac OS X客户机)。

这是一个用于访问bios序列号的脚本:

http://www.vbforums.com/showthread.php?572678-RESOLVED-Getting-CPU-ID-and-BIOS-ID

答案 1 :(得分:2)

确认在Microsoft和VMware上工作。

Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate,authenticationLevel=pktPrivacy}!\\.\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_ComputerSystem")

For Each objItem in colItems
  strModel = objItem.Model
    If InStr(UCase(strModel), "VIRTUAL") Then
      WScript.Echo "VM"
    End If
Next