掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
VB2005で作成したDLLをVB6で使用するには? (ID:140013)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
VB6までのDLL参照方法と、.NETでの参照方法は内部的に随分違うらしい .NETでAPIを使ったりする際に問題になることが多いが、 変数のサイズなんかだけでなく、例えば構造体のメモリ内部での構造なんかも 変わってるので、.NETで構造体使うAPI呼び出す際は、わざわざ強制的に 「昔の形の構造体で」みたいな定義をしないとまともに動かなかったりする そんな違いがあるので、.NETの方は何とか昔のものも動かせるように 互換性を残してるが、それは基本的に「特例」と思われるので 逆方向の互換性は保たれないと思った方が良いかもしれない もしかしたら、2005側のDLL定義で、前述した「強制的な」互換定義を 使うことによって、VB6でも使えるDLLが作れるかもしれないが… やったことはないな ちなみにVB2005側の話としては System.Runtime.InteropServices 名前空間 MarshalAsAttribute クラス UnmanagedType 列挙体 …あたりがキーワードになるはずだが…正直私もあんま理解できてない
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.