- PR -

VB6からVCで自作したDLLへByte配列をパラメータとして送る方法について

1
投稿者投稿内容
rabi
会議室デビュー日: 2006/06/07
投稿数: 14
投稿日時: 2007-06-25 14:41
現在、VB6 VC++を使っています。

 VB6からByte配列の変数を VC++で自作したDLL内のAPI関数に送りたいのですが、
うまく送れません。

◎VB6
Declare Function CRC16 Lib "TEST01.DLL" (ByVal a As Byte)

Private Sub Command1_Click()
Dim TEST01(10) As Byte
TEST01(0) = &H32
TEST01(1) = &H34
Call CRC16(TEST01)
End Sub

◎VC++のDLL
int WINAPI CRC16(unsigned char *a){
int ab;
ab = (int)*(a+0);
ab = (int)*(a+1);
return 0;
}

上記の様に作成しましたが、VC++のデバッグモードで*(a+0),*(a+1)を
確認した所、下記の通りとなりました。
*(a+0)=&H3F
*(a+1)=0
:
:
*(a+10)=0

別のDLL内APIについては、正常にパラメータの値が遅れるのですが、
例えば
int WINAPI Add(int a,int b){
return a + b;
}
など。

インターネットで検索しても、なかなか見つけることが出来ませんでした。
基本的な話ではありますが、ご教示の程宜しくお願いします。



[ メッセージ編集済み 編集者: rabi 編集日時 2007-06-25 15:03 ]
rabi
会議室デビュー日: 2006/06/07
投稿数: 14
投稿日時: 2007-06-25 15:05
引用:

rabiさんの書き込み (2007-06-25 14:41) より:

書込み場所を誤ってしまいました。
VBの会議室に変更致します。
お騒がせしました。
m(_ _)m

[ メッセージ編集済み 編集者: rabi 編集日時 2007-06-25 15:03 ]

1

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