• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:C# ポインタ アクセス違反)

C#ポインタアクセス違反

このQ&Aのポイント
  • C#でDLLとリンクするプログラムを作成していますが、ポインタを渡す際にアクセス違反が発生します。
  • 問題の箇所は、宣言した変数がpublicではないため、DLL内で参照する際にエラーが発生している可能性があります。
  • また、publicにすることでエラーが解消するかどうかは不明であるため、根本の原因を解明する必要があります。

質問者が選んだベストアンサー

  • ベストアンサー
  • nda23
  • ベストアンサー率54% (777/1415)
回答No.2

>dllImport DllImportではないですか? だとすると、使い方が全然違います。 第一、関数のエントリポイントは何処で 宣言したんですか? 因みに、DLLには変数の値かアドレスが 渡るので、変数自体がpublicかどうかは 関係がありません。呼び出し元が参照 できるものであれば何でもよいのです。

pokeman-v
質問者

お礼

ご回答ありがとうございます やはりpublicは関係ないですか・・ もう少し調べてみます。 dllImportは関数の名前を私が書き換えたものです DllImportについては掲載し忘れておりました。 ご迷惑おかけします

その他の回答 (1)

  • wormhole
  • ベストアンサー率28% (1626/5665)
回答No.1

C#でポインタを使ったことはないので解決策はわかりませんが(そもそもDLLの関数がどんなものかも書かれてないし) >上記で宣言した char bit、 char Parity がpublicではないので >DLL内で参照するときに、エラーが出てしまうのではないかと考えて >char bit、 char Parity をどうにかpublicにできないか試したのですが >調べてもどうも方法がわからず、相談させていただきました。 変数のbit,Parityがpublicでないことはまったく関係ないはずです。

pokeman-v
質問者

お礼

ご回答ありがとうございます もう少し詳しく調べてみたいと思います

関連するQ&A