title: Argument Exception thrown by PtrToStructure
body: <p>Can someone please explain the following Argument Exception : <strong>The structure must not be a value class</strong> to me please.
  It's being cause by the following line of code in my program:</p>
  
  <pre><code>Marshal.PtrToStructure(m.LParam, dbh);
  </code></pre>
  
  <p>given that <code>dbh</code> is of type:</p>
  
  <pre><code>[StructLayout(LayoutKind.Sequential)]
  public struct Device_Broadcast_Header
  {
      public int dbch_size;
      public int dbch_devicetype;
      public int dbch_reserved;
  }
  </code></pre>
  
  <p>Thanks</p>