判断是否处于沙盒或虚拟机中

Windows 下判断是否处于沙盒或虚拟机中

来源推文: Twitter @NinjaParanoid


2021-02-07-PM-7.46.15


检查 Windows的显示驱动程序,VM显示为 Non-PnP,而物理计算机具有 PnP(即插即用)驱动程序


代码实现 [1]

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <Windows.h>
#include <iostream>
#include <string>

int main()
{
DISPLAY_DEVICE dd;
dd.cb = sizeof(dd);
int deviceIndex = 0;
while (EnumDisplayDevices(0, deviceIndex, &dd, 0))
{
std::wstring deviceName = dd.DeviceName;
int monitorIndex = 0;
while (EnumDisplayDevices(deviceName.c_str(), monitorIndex, &dd, 0))
{
std::wcout << dd.DeviceName << L", " << dd.DeviceString << L"\n";
++monitorIndex;
}
++deviceIndex;
}
return 0;
}




本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!