tagCANDY CGI VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板
VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板
[ツリー表示へ]  [ワード検索]  [Home]

タイトル VB6.0のExeとVC++6.0のDLLの文字列
投稿日: 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の文字列を判別することが出来るでしょうか?
アドバイス宜しくお願いいたします。
初心者なので説明不足も多々あると思います。何か他に必要な情報があれば言って下さい。
では、お待ちしております。

- 関連一覧ツリー をクリックするとツリー全体を一括表示します)

古いスレッドにレスはつけられません。