是定义的char
你说如果VB用string ,那么VC++用什么比较好啊

解决方案 »

  1.   

    VC的代码 有没有用stdcall还有C中的字符串最好是定长的!VB传给它的内容最好也是定长的!
      

  2.   

    stdcall是什么啊!!!
    Private Declare Function ADTOpenDataFile Lib "DataApart.dll" (FileName As String) As BooleanIf ADTOpenDataFile("data.dat") <> False Then
           
           MsgBox "ded"
    End If我用的这个代码,就是老出错!!!
      

  3.   

    我们就用的是char * filename 来定义的,
    可是不行,老是出错!!!看看有没有别的办法啊?
      

  4.   

    stdcall是VC用的!如果VC的函数要给其他程序调用的话,必须在函数定义的地方加上stdcall,则会自动将参数变成标准调用的方式例子:
    extern "C" { int __stdcall FACT( int n ); }要看一下VC的程序加上stdcall没有!
      

  5.   

    类似
    DeleteFiles(LPCTSTR FileName)
      

  6.   

    加stdcall这个也不行啊!!!还是那个错误!!!还有办法吗?谢谢了
      

  7.   

    LPCTSTR指针啊,我一直都是这么用的
      

  8.   

    LPCTSTR指针我们也试过了,也是出现那个问题!!!
    代码:
    bool WINAPI ADTOpenDataFile(LPCTSTR FileName)
    {
      MessageBox(NULL,FileName,"aded",MB_OK);
      return true;
    }你看看有什么错误啊!!!
      

  9.   

    调用时用Private Declare Function ADTOpenDataFile Lib "DataApart.dll" (ByVal FileName As String) As Boolean.把你的加个ByVal就可以了
      

  10.   

    当然有问题啊,你把这个改一下:
    Private Declare Function ADTOpenDataFile Lib "DataApart.dll" (FileName As String) As Boolean
    改成
    Private Declare Function ADTOpenDataFile Lib "DataApart.dll" (byval FileName As String) As Boolean
    在试试