- PR -

VB.NETとActiveXの受け渡し

1
投稿者投稿内容
ラン
会議室デビュー日: 2003/06/04
投稿数: 2
投稿日時: 2003-06-04 16:28
みなさまこんにちは。

VB.NETで自作ActiveX(VC++6で作成)を使うと引数が配列の場合、どうしても
配列の一番目しか書き換わりません。

下記のプログラム例でActiveX側のBalance関数の引数をみると、
Balch(0)だけ1、あとは0になっています。
どうしたらよいのでしょうか?
よろしくお願いします。

(VB.NET)
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim Balch() As Integer

Balch = New Integer(3) {1, 1, 1, 1}
AxAbc.Balance(Balch(0))  '<---配列の先頭を渡したい
End Sub

(VC++のActiveX側の関数)
long CAbcCtrl::Balance(long FAR* BalCh)

Izumi, Y.
ベテラン
会議室デビュー日: 2002/03/19
投稿数: 77
お住まい・勤務地: 東京
投稿日時: 2003-06-04 21:50
.NET から ActiveX に可変長の配列は渡せなかったような…
ヘルプで「マーシャリング」というキーワードで検索すれば、いろいろと情報が得られると思います。
ZEBRA
常連さん
会議室デビュー日: 2003/04/14
投稿数: 38
投稿日時: 2003-06-05 08:49
こんにちわ。
ヘルプで、「プラットフォーム呼び出しによるデータのマーシャリング」で検索掛けてみると見つかるかもしれません。
ラン
会議室デビュー日: 2003/06/04
投稿数: 2
投稿日時: 2003-06-05 10:00
おはようございます。

早速情報をいただきありがとうございます。
マーシャリングという単語をはじめて知りました。
いろいろ調べてみます。
わからなかったら、また教えてください。
1

スキルアップ/キャリアアップ(JOB@IT)