掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
.Net でVarPtrの代わりなるものは? (ID:78600)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
具体的には、どのような処理を行おうとしているのでしょうか? そもそも、変数の位置はメモリ内で動的に移動されますから、 たとえVarPtr関数があったとしても無意味だと思いますよ。(^_^;) # 一応、System.Runtime.InteropServices.GCHandleを使うことで、 # インスタンスの移動を禁止/再許可する事が可能なため、 # AddrOfPinnedObjectメソッドでIntPtrを得る事はできますけれどね。 もし、過去(VB5やVB6など)のソースを移行しようとしているのであれば、 コーディングの仕方を見直した方が、効率が良いかもしれません。 大抵の場合、VarPtr(実在しませんが)関数で変数のアドレス値を 得ようとせずとも、標準的なP-Invokeの機能だけで実現できたりします。 例えば、メモリデータのコピーなどで、VB6などでは RtlMoveMemory APIが良く使われていましたが、.NETでは、 System.Runtime.InteropServices.Marshal.StructureToPtrメソッドなどが 使えるため、そうしたAPIに頼る必要も無くなっています。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.