我编了一个例子准备用到PB里,其原程序如下:
extern "C" long __declspec(dllexport) long add(long lp1,long lp2)
{
    return lp1*lp2;

我用在PB或VB中,出现错误:Bad runtime function reference at line 3 in clicked event of object pb_1 of w_scheme.
请问大虾我的错误在那里?该怎么做?谢谢!

解决方案 »

  1.   

    可以用的,是否你的声明不对。写一个def文件。在PB里面这样声明
    declare function long add(long p1,long p2) library "libname.dll"
      

  2.   

    应该是参数调用方式不统一造成的!对于VB,Delphi应该用__stdcall参数压栈调用方式(我不知道PB是否相同)
    应该是:
    extern "C" __declspec(dllexport) long WINAPI add(long lp1,long lp2)
    {
        return lp1*lp2;
    } 然后在*.Def文件定义导出的这个函数 add @1要在PB里需要怎么声明我就不知道了.