タイトル | : VB6.0のExeとVC++6.0のDLLの文字列 |
記事No | : 12320 |
投稿日 | : 2008/05/20(Tue) 14:56 |
投稿者 | : VB |
☆VB6.0 ・標準モジュール Public Declare Function test Lib "test.dll" (ByRef PINFO() As DLL) As Long Public Type DLL flg As String * 1 End Type ・フォーム Dim PINFO(0) As DLL Dim rtn As Long PINFO(0).sflg = "X" rtn = clhsmain(PINFO) Text1.Text = rtn ------------------------------------------------------------------------------- ☆VC++6.0 _declspec(dllexport) WINAPI test(const DLL* PINFO[1]) { int fret; if ((PINFO[0]->flg != "X") && (PINFO[0]->flg != "Y")) <= { fret = 0 - 11; return(fret); } return 0; }
struct DLL{ char flg[1]; };
-------------------------------------------------------------------------------- はじめまして。 早速質問なのですが。 上記のプログラムを見てもらうとなんとなくやりたい事がわかってもらえるかと思いますが、 VC++で作ったDLLをVBで使おうとしているわけなんですが。 VBでflgという変数に"X"か"Y"のどちらか入力し、 その判別をVC++のDLLで文字を判別しReturnを返したいのですが。 『<=』この矢印の部分でその判別の式としてIf文が書かれているところで その入っている変数を確認すると必ず「1 "£"」と言う値が入ってしまっていて うまく受け渡しが出来ていません。 どのようにすれば、VC++のDLLでVBの文字列を判別することが出来るでしょうか? アドバイス宜しくお願いいたします。 初心者なので説明不足も多々あると思います。何か他に必要な情報があれば言って下さい。 では、お待ちしております。
|