首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

bcb怎么调用lib中类的函数?已经静态添加入工程 100分送下

2012-12-29 
bcb如何调用lib中类的函数?已经静态添加入工程100分送上手头上有一个项目,要求做一个B/S结构的的系统,WEB

bcb如何调用lib中类的函数?已经静态添加入工程 100分送上
手头上有一个项目,要求做一个B/S结构的的系统,WEB页面调用硬件读取客户端的数据采集。供应商只提供了几个dll文件。

我想通过bcb创建一个控件,这个控件调用外部dll(已经转成lib并且添加入当前工程)中的类的函数。

然后打包成cab。客户端用javascript来实现调用。


目前做到:已经新创建一个工程并且也将相关的dll转成lib文件,并添加入当前工程,不知道如何调用lib中的类函数。

lib中的文件是一个个类,和类的函数。

1:如有相关类似的源码的不知道能否提供。

2:因为对c++不是很熟悉,请详细写明哪里调用,如何申明,最好能提供一段代码。
[解决办法]
一般来说dll都会有接口函数提供给你的,不需要去转什么,甚至dll里的类,还有实例的属性方法什么的你都不用去关心

你应该叫供应商提供你一个dll相关的函数列表,然后在程序里去调用这个dll,并使用相关的函数
[解决办法]
如果供应商提供了dll给你 那肯定是有dll内容的函数什么的让你直接调用的 
你问一下他们 要一份dll里函数的说明然后根据需求去调用这个dll
比如 他告诉你dll里有个函数叫 Show_Message 功能就是弹出一个提示框
那么在.h文件里定义
    /* DLL */
    HINSTANCE dll_show_message;
    /* DLL Define */
    Word (__stdcall *Show_Message)(int, String, String *, int, int, String);
在.cpp文件这个form的构造函数里去载入这个dll
    try
    {
        this->dll_show_message = LoadLibrary("show_message.dll");
        (FARPROC&)Show_Message = GetProcAddress(this->dll_show_message, "Show_Message");
        if (!(this->dll_show_message && Show_Message))
            ShowMessage("Load dll file show_message.dll failed");
    }
    catch (...)
    {
        FreeLibrary(this->dll_show_message);
    }
在cpp文件这个form的析构函数里去delete
        FreeLibrary(this->dll_show_message);

这样在其他地方就可以直接用这个dll里的函数比如Show_Message(......);


所以既然他们提供了dll,那就不用自己去往工程里面加什么东西,直接去调用dll相关函数去实现一些功能

热点排行