3
私はMarshalクラスを使用して管理されていない構造体を解析しています。これまでのところ、すべてが期待どおりに機能しますが、管理されていないCharをManaged列挙型に変換する方法を苦労しています。例えば列挙するバイトをマーシャル
:これはエラーになります
<StructLayout(LayoutKind.Sequential, Pack:=1)>
Public Structure UnamangedToManaged
<MarshalAs(UnmanagedType.I1)>
Public _Enum As ManagedCustomEnum
end structure
Public Enum ManagedCustomEnum
Value_1
Value_2
Value_3
Value_4
Value_etc
End Enum
:Unvalid combination
私は単に構造体の残りのためのインデックスを除く<MarshalAs(UnmanagedType.I1)>
、その後の解析作品を削除する場合はオフになっている、unvalid値を与えます。
多くの可能性を試してみましたが、MSDNのすべての記事も読んでいますが、まだ運がありません。
誰かが私を正しい方向に向けることができたらいいと思います。
正確には私が探していたもの、時にはそれはあなたが思うより簡単です:-)あなたは宣言の中で
Byte
に変更する必要があります。 – Gforse