菜鸟求助一个DLL的问题

南瓜饼 2013-09-02 04:38:57
我再VS2008里面生成一个DLL文件,然后生成的文件里面有一个lib文件 这个文件不是静态链接库嘛 这个静态链接库 再程序打包的时候 我听别人说可以去掉 但是我的代码里面有加载这个静态链接库 到时候打包不会提示找不到文件报错吗
...全文
96 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
Saleayas 2013-09-02
  • 打赏
  • 举报
回复
这个叫导入库。 不管是哪种库,发布时都不需要的。
davidyu720 2013-09-02
  • 打赏
  • 举报
回复
引用 6 楼 max_min_ 的回复:
[quote=引用 5 楼 wenwei19861106 的回复:] [quote=引用 4 楼 max_min_ 的回复:] 可以不用打包进去, 但是你打包后,程序运行的时候,当连接这个静态库的时候需要把静态库放 在对应它能连接到的位置就好了!
如果不把lib打包进去 就需要loadlibary这样的函数吧 #pragma comment就不行了把[/quote] 程序最后跑起来的时候,连接的时候能找到就好拉![/quote] 不对吧。 如果lib是dll的导出库,exe运行时只需要dll,不需要lib; 如果lib是静态库,linker会把lib中的代码链接到exe中,exe运行时也不需要lib。 总之,exe运行时不需要lib。
movezzzz 2013-09-02
  • 打赏
  • 举报
回复
动态链接的话loadlibary加载动态库dll就行了,那么就需要dll一起打包。如果你使用的是静态链接,#pragma comment 这个是编译器编译过程中处理的,如果是静态链接库,打包时连dll都可以不要。反正不论如何打包都不需要lib的。
max_min_ 2013-09-02
  • 打赏
  • 举报
回复
引用 5 楼 wenwei19861106 的回复:
[quote=引用 4 楼 max_min_ 的回复:] 可以不用打包进去, 但是你打包后,程序运行的时候,当连接这个静态库的时候需要把静态库放 在对应它能连接到的位置就好了!
如果不把lib打包进去 就需要loadlibary这样的函数吧 #pragma comment就不行了把[/quote] 程序最后跑起来的时候,连接的时候能找到就好拉!
南瓜饼 2013-09-02
  • 打赏
  • 举报
回复
引用 4 楼 max_min_ 的回复:
可以不用打包进去, 但是你打包后,程序运行的时候,当连接这个静态库的时候需要把静态库放 在对应它能连接到的位置就好了!
如果不把lib打包进去 就需要loadlibary这样的函数吧 #pragma comment就不行了把
max_min_ 2013-09-02
  • 打赏
  • 举报
回复
可以不用打包进去, 但是你打包后,程序运行的时候,当连接这个静态库的时候需要把静态库放 在对应它能连接到的位置就好了!
davidyu720 2013-09-02
  • 打赏
  • 举报
回复
都说了 打包时不需要lib。 只是开发环境的链接程序需要lib。链接后的exe只需要dll,不需要lib。
南瓜饼 2013-09-02
  • 打赏
  • 举报
回复
引用 1 楼 buyong 的回复:
you need the lib and your source code to generate you exe file. but you don't need the lib to run you exe, only need dll file.
那我打包的时候不要lib嘛 毕竟我的代码里面有连接lib库啊
buyong 2013-09-02
  • 打赏
  • 举报
回复
you need the lib and your source code to generate you exe file. but you don't need the lib to run you exe, only need dll file.

64,662

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧