CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C++ Builder >  基础类

DLL的问题,请帮忙

楼主jevin8011(相信自己)2004-12-04 00:10:11 在 C++ Builder / 基础类 提问

我得到一个DLL动态库  
   
  1.检查头文件dll函数的调用习惯都是_stdcall;  
  2.检查dll里面的连接名称  
  TDUMP   -ee   -m   Mwic_32.dll   >   Mwic_32.lst  
  发现在__stdcall   函数上没有前缀下划线和后缀   @4。证明   DLL   编译的时候带   DEF   文件,在   __stdcall   函数上的修饰符不会出现。  
  3.生成一个引入库  
  IMPLIB   Mwic_32.lib   Mwic_32.dll  
   
  应该说是一切正常,可我在CB里面调用时出现  
  [Linker   Error]   Unresolved   external   '_av_init'   referenced   from   d:\TEST_2\UNIT1.OBJ  
   
  各位帮忙  
   
  问题点数:50、回复次数:4Top

1 楼xpdavis(咕嘟-不想孤独)回复于 2004-12-04 10:43:49 得分 30

你在函数声明之前加上“extern   "C"”看看?  
  比如extern   "C"   void   sqlcxt   (void   **,   unsigned   long   *,  
                                          struct   sqlexd   *,   const   struct   sqlcxp   *);  
  我在使用ORACLE   PRO*C的时候也是碰到这个问题,就是这样解决的。Top

2 楼sunliwen780502(孙立文)回复于 2004-12-04 18:56:21 得分 15

楼主的dll文件可能是一个IC卡读写的dll吧.   可以向楼上说的那样加extern   "C"   __stdcall   auto_init().或者直接包含头文件.或许能更方便.先试试看.Top

3 楼xiaomatian(趴趴熊◎%#……※×)回复于 2004-12-04 20:21:51 得分 5

看看Top

4 楼jevin8011(相信自己)回复于 2004-12-06 19:30:36 得分 0

谢谢大家,在函数声明之前加上“extern   "C"   就可以了,这次给的分太少了,下次了给高分Top

相关问题

  • VB DLL请教
  • 请帮忙 --- DLL
  • mfc dll请教
  • 请教DLL
  • DLL
  • DLL?
  • dll
  • DLL
  • *.dll
  • dll?

关键词

  • 函数
  • 文件
  • dll
  • mwic
  • stdcall
  • extern

得分解答快速导航

  • 帖主:jevin8011
  • xpdavis
  • sunliwen780502
  • xiaomatian

相关链接

  • CSDN Blog
  • 技术文档
  • 代码下载
  • 第二书店
  • 读书频道

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo