DEV_BROADCAST_DEVICEINTERFACE (Structures)
Last changed: -93.104.237.91

.
Summary
Contains information about a class of devices.

1)

C# Signature:

   [StructLayout(LayoutKind.Sequential)]
   struct DEV_BROADCAST_DEVICEINTERFACE
   {
      public int dbcc_size;
      public int dbcc_devicetype;
      public int dbcc_reserved;
      public Guid dbcc_classguid;
      public char dbcc_name;
      public static readonly int Size = Marshal.SizeOf(typeof(DEV_BROADCAST_DEVICEINTERFACE));
   }

2)

C# Signature:

   [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Auto)]
   public struct DEV_BROADCAST_DEVICEINTERFACE
   {
      public int dbcc_size;
      public int dbcc_devicetype;
      public int dbcc_reserved;
      public Guid dbcc_classguid;
      [MarshalAs(UnmanagedType.ByValTStr, SizeConst=255)]
      public string dbcc_name;
   }

VB Signature:

    <StructLayout(LayoutKind.Sequential, CharSet:=CharSet.Auto)> _
    Public Structure DEV_BROADCAST_DEVICEINTERFACE
    Public dbcc_size As UInteger
    Public dbcc_devicetype As UInteger
    Public dbcc_reserved As UInteger
    Public dbcc_classguid As GUID
    <MarshalAs(UnmanagedType.ByValTStr, SizeConst:=255)> Public dbcc_name As String
    End Structure

User-Defined Field Types:

None.

Notes:

If you need to read the dbcc_name, start reading as a buffer at "dbcc_name" address until you get a '\0' character.

Documentation