誰かが次の引数例外を説明できますか?構造体は値クラスではありません。ここでのコード例を与えることはなく、ためPtrToStructureによってスローされる引数例外
答えて
この特定のMarshal.PtrToStructure
を値タイプ(つまり、struct
)と呼ぶことはできません。
this overloadに電話すると、タイプバックのインスタンスを受け取ることができます。
申し訳
[StructLayout(LayoutKind.Sequential)]
public struct Device_Broadcast_Header
{
public int dbch_size;
public int dbch_devicetype;
public int dbch_reserved;
}
ありがとう:dbh
は型であることを考えると
Marshal.PtrToStructure(m.LParam, dbh);
: それは私のプログラムでは、次のコード行によって原因であることですあなたを助けるかもしれないlinkです。ここで
は、上記のリンクからキーテキストです:
問題が RegisterTraceGuids APIで何もしません。
は Marshal.PtrToStructure(のIntPtr、Object)を http://msdn.microsoft.com/en-us/library/30ex8z62.aspx のドキュメントによれば、シーケンシャルまたは明示的または構造 ボックス化値型である構造のレイアウトがない ときにあなたが見た ArgumentExceptionがスローされます。
この場合、構造はシーケンシャルとして 宣言され、但し、配列 に 要素(traceGuidReg [I])をこのように使用すると、エラーが発生しました、なぜならアレイ オブジェクトの 管理ヒープに箱詰めされています" 構造体は値クラスであってはなりません。"
あなたが過負荷 Marshal.PtrToStructure法(のIntPtr、 タイプ) http://msdn.microsoft.com/en-us/library/4ca6d5z7.aspxを使用して配列要素に PtrToStructureの結果を割り当てる必要がある。
ありがとうJas私は、あなたが答えたとそのサイトも解決しましたが、あなたはthet guyがManaged Heapに入れられている要素の意味を説明できますか?私はこれがどういう意味かはっきりしていると思いますが、明確にしたいと思います。 –
[StructLayout(LayoutKind.Sequential)]
public class Device_Broadcast_Header_Wrapper{
public Device_Broadcast_Header Header
}
Device_Broadcast_Header_Wrapper wapper = new Device_Broadcast_Header_Wrapper();
Marshal.PtrToStructure(m.LParam, wapper);
コードのみの回答は将来の読者のために多くの情報を提供しないので推奨されません。 – WhatsThePoint
- 1. Javadoc @throwsエラーコードハンドラによってスローされる例外のタグ
- 2. BluetoothServiceJni:コールバック 'btgattc_notify_cb'によって例外がスローされました
- 3. com.parse.ParseException:bolts.ExecutorException:Executorによって例外がスローされた
- 4. サービスメソッドによってスローされた例外のリストを表示
- 5. WPFデータバインディング:プロパティゲッターによってスローされた例外をキャッチ
- 6. アプリケーションクラス 'java.lang.String.substring:1339'によってスローされた例外Websphere Liberty
- 7. Kotlin - インターフェイスメソッドによってスローされたドキュメント例外
- 8. spring-aopによってスローされた例外
- 9. ポインタによって捕捉された再スロー例外
- 10. bcrypt-nodejsによってスローされた「不正な引数」 - パスポート
- 11. 例外が処理されなかった - 再スロー例外
- 12. ファイルクローズによってスローされた例外を処理するには?
- 13. Castle Windsor:Resolve()によってスローされる例外を抑制する
- 14. boost :: ifind_firstによってどのような例外がスローされますか?
- 15. プロパティグリッドによってスローされた例外を処理する方法は?
- 16. Javascript:他のスクリプトによってスローされた例外を監視する
- 17. フィルタチェーンでSpringセキュリティによってフォーマット例外メッセージがスローされる
- 18. CompletableFuture.supplyAsyncによってスローされた例外を処理する方法
- 19. httpLbs(http-client)によってスローされた例外をキャッチする方法
- 20. imageWithDataによってスローされた例外をキャッチする方法:
- 21. CLRによってスローされた例外を検出する方法は?
- 22. ExecutorServiceタスクによってスローされた例外を処理する方法は?
- 23. Java例外処理:外部依存モジュールによってスローされた例外をキャッチ
- 24. コードの前にオブジェクトによってスローされたキャッチ例外... c#
- 25. Webイベントプロバイダ 'EventLogProvider'によって次の例外がスローされました
- 26. 呼び出しのターゲットによって例外がスローされました
- 27. ラクダの文脈でcxfによってスローされた例外をキャッチ
- 28. Flexで埋め込みURLによってスローされた例外をキャッチ
- 29. 呼び出しのターゲットによってVB.Net例外がスローされました
- 30. returnステートメントによってC++のbad_array_new_length例外がスローされましたか?
例: 'dbh =(Device_Broadcast_Header)Marshal.PtrToStructure(m.LParam、typeof(Device_Broadcast_Header));' – Pieniadz