掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
CのDLLファイルをVBで (ID:109523)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
ん〜! まず構文の間違いは for(i=0; i<3, i++) -> for(i=0; i<3; i++) ここだけかな。 デバッグウインドウでエラーが示された行をクリックすると エラーの行に飛びますよ。 ただこれだと引数が色々でVBの方からの呼び出しが難しい。 こういう場合はC側はポインターでVB側は配列で受け渡します。 #C側 TEST_API void __stdcall fncSub(double *c); TEST_API void __stdcall fncSub(double *c) { double sum = 0; int i; for(i=0; i<3; i++){ sum += *(c + i); //p(0)〜P(2)までの足しこみ } *(c + 5) = *(c + 3) * sum; //*(c + 5) = p(5) *(c + 6) = *(c + 4) * sum; //*(c + 6) = p(6) } #VB側 Private Declare Sub fncSub Lib "TEST.dll" (p As Double) Private Sub Command1_Click() Dim p(0 To 6) As Double p(0) = 10.3: p(1) = 20.5: p(2) = 30.6: p(3) = 40.2: p(4) = 50.1 fncSub p(0) 'DLLの呼び出し Text1.Text = p(5) '結果の表示 Text2.Text = p(6) '結果の表示 End Sub こんなかんじになります。 *(c + i)なんかが判りにくいのですがほぼ配列と同じと思ってください。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.