在 C++Builder 工程里使用 Visual C++ DLL——第1部分:C函数

本文是关于如何在C++Builder项目中利用Visual C++创建的DLL的系列教程第一部分,主要讲解如何使用C函数。内容涵盖C++Builder与Microsoft DLL的互操作性,以及在C++Builder工程中调用C风格函数的步骤。
摘要由CSDN通过智能技术生成
在 C++Builder 工程里使用 Visual C++ DLL——第1部分:C函数

译者序:

  第一次读这篇文章是在 2001 年 10 月,帮我解决了一点小问题。本来不好意思翻译,因为英语水平实在太差。最近发现不少网友在问在 C++Builder 的工程里调用 Visual C++ DLL 的问题,也许是用 C++Builder 的人比以前多了吧。于是把心一横,不就是板儿砖嘛?“抛砖引玉”,希望它能给你帮点小忙,也欢迎指出翻译中的错误。

  shadowstar 2003-6-3

shadowstar's home: http://shadowstar.126.com/

source:http://www.bcbdev.com/articles/vcdll.htm

  很可能有一天你的老板问你是否能用 C++Builder 创建一个 GUI,调用现有的用 Microsoft Visual C++ 编译的 32 位 DLL。经常地,原始 DLL 的源代码不会提供给你,也许因为 DLL 来自第三方供应商,也可能是 22 岁的实习生不小心从网络上删除了 /DLL/SRC 目录。给你一个 DLL 和头文件,这篇文章为你示范如何在你的 C++Builder 工程里调用这种 DLL。

在 C++Builder 工程里调用 DLL 函数

  调用 Visual C++ DLL 给 C++Builder 程序员提出了一些独特的挑战。在我们试图解决 Visual C++ 生成的 DLL 之前,回顾一下如何调用一个 C++Builder 创建的 DLL 可能会有所帮助。调用 C++Builder 创建的 DLL 要比 Visual C++ 的少了许多障碍。

  为了在你的 C++Builder 工程里调用 DLL,你需要三种元素:DLL 本身,带有函数原型的头文件,和引入库(你可以在运行时载入 DLL,而不是使用引入库,但为了简单我们按引入库的方法做)。调用 DLL 函数,首先通过选择菜单 Project | Add to Project 的方法,把引入库添加到你的 C++Builder 工程里;其次,在需要调用 DLL 函数的 C++ 源文件里为 DLL 头文件插入 #include 声明;最后添加调用 DLL 函数的代码。

  程序清单 A 和 B 包含了做为测试 DLL 的源代码。注意,测试代码实现了两种不同的调用习惯(__stdcall 和 __cdecl)。这样帮是有充分的理由的。当你设法调用一个用 Visual C++ 编译的 DLL 时,大多让你头疼的事情都是由于处理不同的调用习惯产生的。还要注意一点,有一个函数,它没有明确列出使用的调用习惯。这个未知函数作为不列出调用习惯的 DLL 函数的标识。

//------------------------------------------
// Listing A: DLL.H

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值