在某项目中,有一些静态库,这些静态库中有类型命名的函数GET_XXX。在一次项目结构调整的时候,我想将调用这静态库的代码编译成DLL,并且将这些Get函数导出,我就直接就这些函数前面添加了_declspec(dllexport),

然后代码结构就成为:

静态库A: 包括很多 _declspec(dllexport) GET_XXX 函数。

动态库B:未直接调用 GET_XXX

调用B的应用程序C:动态Load动态库B,然后使用GetProcAddress获取函数地址后使用。

但是很不幸编译出来的中一直没有这些函数。

百思不得其解,最后在网上发现下面的信息(from:http://support.microsoft.com/kb/141459):

When you build a DLL from component libraries (.lib files) that have functions declared with _declspec(dllexport) to export them from the DLL, the functions aren't exported or even included in the DLL.

解决方案:

1、DEF文件或者是在LInk时添加/export:func.

2、在其它地方强引用。

3、把GET等函数所在源码直接放到dll代码里编译。

对于我的工程,1、2不适合,所以我使用了3.

http://www.cnblogs.com/k1988/archive/2013/02/16/2913534.html

http://www.cnblogs.com/k1988/p/3587820.html

最新文章

  1. 利用jmSlip写一个移动端顶部日历选择组件
  2. Servlet实现重定向的两种方式
  3. 使用cxf开发webservice应用时抛出异常
  4. Bootstrap基础学习-1
  5. 《Genesis-3D开源游戏引擎完整实例教程-跑酷游戏篇04:如何实现触控操作》
  6. jquery delegate
  7. OCMOCM
  8. Android供TextView添加多个点击文字
  9. lpc1768usb使用-配置
  10. css 绝对居中
  11. MySQL · 引擎特性 · InnoDB奔溃恢复
  12. lua简单入门
  13. Vue取消eslint语法限制
  14. 简单的自定义ViewGroup
  15. oday获取系统最高权限的代码
  16. SDE在64位Server2008下Post启动服务失败官方解释
  17. Subarray Sum Equals K LT560
  18. iOS常用第三方类库及Xcode插件
  19. CSS中 Zoom属性
  20. react 知识点

热门文章

  1. Android GPS应用:动态获取位置信息
  2. epoll相关
  3. linux驱动: 如何向模块传递参数, module_param和module_param_array
  4. C指针陷阱
  5. 「OC」 封装
  6. 使用yum来下载RPM包而不进行安装
  7. 我的Python成长之路---第八天---Python基础(23)---2016年3月5日(晴)
  8. sql差异
  9. HAMA
  10. spring mvc 分页