From c349c1bdb71d9af77281608fe01ee0901c650f74 Mon Sep 17 00:00:00 2001 From: vxunderground <57078196+vxunderground@users.noreply.github.com> Date: Fri, 15 Jul 2022 10:56:22 -0500 Subject: [PATCH] Create IsNvidiaGraphicsCardPresent.cpp --- Windows API/IsNvidiaGraphicsCardPresent.cpp | 32 +++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 Windows API/IsNvidiaGraphicsCardPresent.cpp diff --git a/Windows API/IsNvidiaGraphicsCardPresent.cpp b/Windows API/IsNvidiaGraphicsCardPresent.cpp new file mode 100644 index 0000000..4551d15 --- /dev/null +++ b/Windows API/IsNvidiaGraphicsCardPresent.cpp @@ -0,0 +1,32 @@ +BOOL IsNvidiaGraphicsCardPresentA(VOID) +{ + DISPLAY_DEVICEA DisplayDevice; RtlZeroMemory(&DisplayDevice, sizeof(DISPLAY_DEVICEA)); + DisplayDevice.cb = sizeof(DISPLAY_DEVICEW); + + DWORD dwDeviceId = ERROR_SUCCESS; + + while (EnumDisplayDevicesA(NULL, dwDeviceId, &DisplayDevice, 0)) + { + if (StringFindSubstringA(DisplayDevice.DeviceString, (PCHAR)"NVIDIA") != NULL) + return TRUE; + } + + return FALSE; +} + + +BOOL IsNvidiaGraphicsCardPresentW(VOID) +{ + DISPLAY_DEVICEW DisplayDevice; RtlZeroMemory(&DisplayDevice, sizeof(DISPLAY_DEVICEW)); + DisplayDevice.cb = sizeof(DISPLAY_DEVICEW); + + DWORD dwDeviceId = ERROR_SUCCESS; + + while (EnumDisplayDevicesW(NULL, dwDeviceId, &DisplayDevice, 0)) + { + if (StringFindSubstringW(DisplayDevice.DeviceString, (PWCHAR)L"NVIDIA") != NULL) + return TRUE; + } + + return FALSE; +}