掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
VB6からVC6++作DLLへ引数受け渡しがうまくいきません (ID:82092)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
############################################## VC6側 struct aStruct { int lStart; int lLen; char* cFileName; }; FCONVPROJREADWRITE_API short __stdcall fncRead(aStruct* pData,char* OutByte); ############################################## VB6側 Public Type sInput lStart As Long lLen As Long cFileName As String * 200 End Type Public Declare Function fncRead Lib "FConvProjReadWrite.dll" (aData As sInput, ByVal oLineRead As Byte) Private BBufR(0) As Byte 〜 With tsInput .lStart = 1 .lLen = 1 .cFileName = Space(200) .cFileName = Replace(InputFilePath, "\", "\\") & Chr(0) End With AnsDll = fncRead(tsInput, BBufR) 〜 ############################################## と作ったのですが、VC側でデバッグをかけてみると、うまく格納していないみたいなのです。 結果が、 pData 0x0012f19c ├lStart 0 ├lLen 4307969 └cFileName 0x00000001 "" └CX0030: Error: 式を評価できません OutByte 0x0012f014 "■" └ 1 "■" lStartに1 lLenに1 cFileNameにファイルのパス(日本語含む) のようになってほしいのですが、HPをまわっていろいろなパターンを試したのですがだめでした。 そして、引数のcFileNameを使い。 if((fp=fopen((*pData).cFileName,"rb"))==NULL){ 〜 としたいのですが、これも可能なのでしょうか? 指摘をよろしくお願いいたします。 最後ですが長文申し訳ありません。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.