GWK.CheckMSDM Method

public static bool CheckMSDM( 
out byte[] buffer 
)
This language is not supported or no code example is available.

Parameters

buffer
byte[]

Return Value

bool
public static bool CheckMSDM(out byte[] buffer)
 {
     var firmwareTableProviderSignature = Enums.FIRMWARE_TABLE_TYPE.Acpi;
     uint bufferSize = Import.EnumSystemFirmwareTables(firmwareTableProviderSignature,
         IntPtr.Zero, 0);
     IntPtr pFirmwareTableBuffer = Marshal.AllocHGlobal((int)bufferSize);
     buffer = new byte[bufferSize];
     Import.EnumSystemFirmwareTables(firmwareTableProviderSignature,
         pFirmwareTableBuffer,
         bufferSize);
     Marshal.Copy(pFirmwareTableBuffer,
         buffer, 0,
         buffer.Length);
     Marshal.FreeHGlobal(pFirmwareTableBuffer);
     if (Encoding.ASCII.GetString(buffer).Contains("MSDM"))
     {
         uint firmwareTableID = 0x4d44534d;
         bufferSize = Import.GetSystemFirmwareTable(firmwareTableProviderSignature,
             firmwareTableID,
             IntPtr.Zero, 0);
         buffer = new byte[bufferSize];
         pFirmwareTableBuffer = Marshal.AllocHGlobal((int)bufferSize);
         Import.GetSystemFirmwareTable(firmwareTableProviderSignature,
             firmwareTableID,
             pFirmwareTableBuffer,
             bufferSize);
         Marshal.Copy(pFirmwareTableBuffer,
             buffer, 0,
             buffer.Length);
         Marshal.FreeHGlobal(pFirmwareTableBuffer); return true;
     }
     return false;
 }
					
This language is not supported or no code example is available.

.NET Framework

Supported in: 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8

.NET Core

Supported in: 5.0+, 6.0+

In this article

Definition