• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VB.netの配列とVB6の配列の違い)

VB.netの配列とVB6の配列の違い

このQ&Aのポイント
  • VB6とVB.netでの配列の渡し方には違いがあります。VB6では1次元目の添え字をインクリメントしないで2次元目の添え字をインクリメントしますが、VB.netでは1次元目の添え字もインクリメントします。
  • VB6からVC6のDLLの場合、配列渡しで1次元目の添え字をインクリメントせず、2次元目の添え字をインクリメントする動作です。一方、VB.netからVC6のDLLの場合、1次元目の添え字もインクリメントします。
  • VB.net側の配列渡しの仕様をVB6側の仕様に合わせる方法はありません。VB.netでは1次元目の添え字もインクリメントする仕様となっています。

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

  • ベストアンサー
noname#212058
noname#212058
回答No.1

VB.NET (というか、.NET Framework ) の配列と、ネイティブコードの配列は別物です。.NET FrameWork では両者を ・ VB.NET で宣言する配列を 『マネージド配列』 ・ C++等のネイティブコードの配列を 『アンマネージド配列』 と明確に別物として区別しており、両者を変換するためのマーシャリングをいう仕組みをわざわざ準備しています。詳細は以下を参照してください。 http://www.atmarkit.co.jp/fdotnet/vb6tonet/vb6tonet28/vb6tonet28_03.html 配列のマーシャリングの方法は以下が参考になると思います。 http://msdn.microsoft.com/ja-jp/library/z6cfh6e6.aspx

shouichi5928
質問者

お礼

お返事ありがとうございます。 ご指定の方法を調べましたが、多次元配列に関しては、サポートされていないかもしれませんね。残念です。 http://social.msdn.microsoft.com/Forums/ja-JP/vbgeneralja/thread/23156016-c50a-4ef3-b575-c00b6b028864

関連するQ&A