手机站
网通分站
电信主站
密 码:
用户名:
当前位置 : 主页>程序设计>delphi>列表

VC与Delphi之间动态链接库互相调用

来源:互联网 作者:西部数码 时间:2008-04-10
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!

VCDelphi之间动态链接库互相调用

    Delphi 调用VCDLL

  1. VCDLL声名格式:

    Extern “C” void __declspec(dllexport) __stdcall ShowMess(HWND hwnd, char* mess);

    输出格式为:_ShowMess@8,“8”为函数参数字节数

    为了避免名称分裂,可采用以下方法解决:

    1.声明中不加__stdcall,采用VC默认格式__cdecl,但在Delphi中要注明调用格式为cdecl

    2.在VC工程中添加def文件,如:

    LIBRARY

    EXPORTS

    ShowMess @1

    DLL中输出函数名称不分裂。

  2. Delphi中调用格式:

    Procedure ShowMess (h:HWND; mess:PChar); Stdcall;{Cdecl;} external LibName;

    如无StdcallCdecl声名,Delphi默认Register(FastCall)调用格式。

  3. 注意DelphiVC的对齐格式不同,在VC中定义结构时要用以下格式:

    #pragma pack(4)

    //结构定义

    文章整理:西部数码--专业提供域名注册虚拟主机服务
    http://www.west263.com
    以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!