社区
ATL
帖子详情
如何将com dll 编译生成一个lib库!
wilberchen
2005-07-13 11:58:12
现有一堆com dll,需要把它们转换为lib库.请教com高手,如何转换!
...全文
249
18
打赏
收藏
如何将com dll 编译生成一个lib库!
现有一堆com dll,需要把它们转换为lib库.请教com高手,如何转换!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
18 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
snowflyman
2005-07-20
打赏
举报
回复
恩,很有意思阿,关注
wshcdr
2005-07-19
打赏
举报
回复
呵呵,Bottol的方法是生成\\dll对应的lib文件.它记录的只不过是导出函数的入口地址.并不是我需要静态库!不过可以告诉大家一个好消息:我试验成功!用lib实现com是完全可能的!
///////////////////////////
com的先决条件之一就是可以动态链接,如果不具备动态链接的能力,如果组件进行了变动,比如升级,那么,客户端必须要进行重新编译,链接。这是明显不可能的.所以不可能用lib实现com。
wshcdr
2005-07-19
打赏
举报
回复
静态库也可以实现COM啦?
wilberchen
2005-07-18
打赏
举报
回复
呵呵,Bottol的方法是生成\\dll对应的lib文件.它记录的只不过是导出函数的入口地址.并不是我需要静态库!不过可以告诉大家一个好消息:我试验成功!用lib实现com是完全可能的!
Bottol
2005-07-15
打赏
举报
回复
已经有人教你如何变成lib文件了
然后你把exe源代码里面调用com的地方,全部改成调用普通函数一样,然后编译时候加上lib不就是静态编译了吗?
Igj1012
2005-07-14
打赏
举报
回复
不可能的。
一个变通的办法:
把COM都作为exe的资源,exe运行时先释放资源中的com,注册这些com
mdj_boy
2005-07-14
打赏
举报
回复
关注...
kingstar568
2005-07-14
打赏
举报
回复
我想问一下:既然变为静态库的方法行不通,可否不变为lib,但是要避免写注册表呢?例如,我们把com需要注册的信息都写在一个xml文件中,当需要用这些信息时再去xml中读.不过这样可能需要改写com库中涉及读注册表的涵数.这纯粹是我的想象,想听听各位的意见,谢谢!
wilberchen
2005-07-13
打赏
举报
回复
感谢,马上去试!
bohut
2005-07-13
打赏
举报
回复
如何从dll文件导出对应的lib文件?
Visual C++ 开发工具提供了两个命令行工具,一个是dumpbin.exe,另一个是lib.exe。利用这两个工具即可从dll导出其对应的lib。
1、在命令行执行:
dumpbin /exports yourdll.dll > yourdll.def
2、编辑 yourdll.def 文件,使之格式与.def文件格式一致。比如:
EXPORTS;
fn1;
fn2;
3、在命令行执行:
lib /def:yourdll.def /machine:i386 /out:yourdll.lib
wilberchen
2005-07-13
打赏
举报
回复
up
kingstar568
2005-07-13
打赏
举报
回复
用静态lib实现com!有人尝试过吗?
cdo
2005-07-13
打赏
举报
回复
up bohut(●伯虎● /*等待小生命的降临*/) 的
ncl1978
2005-07-13
打赏
举报
回复
up
wilberchen
2005-07-13
打赏
举报
回复
是想静态加载!现拥有的源代码是com dll,工程很大!现在需要做成零安装,所谓零安装,即是不需要安装,提供给用户的仅仅是一个exe file.so,我必须把所有dll嵌入在一个exe文件里.目前的思路是把所有dll都改成静态连接!但com不变,也即使使用lib来实现com.第一步工作是把com dll 转换成lib!这里向各路高手请教了!刚才bohut提供的shi是生成dll对应的lib吧,他能实现静态连接么!
goodboyws
2005-07-13
打赏
举报
回复
这个比较有挑战性,楼主直接建一个静态库工程,把有用的代码都加进去为上策
an_bachelor
2005-07-13
打赏
举报
回复
是想静态加载吧 不过对COM DLL有多大意义呢?
wilberchen
2005-07-13
打赏
举报
回复
我的目的是改动态连接为静态连接!
VC++动态链接
库
(
dll
)编程视频教学
动态链接
库
的开发
编译
属于VC++程序员技能。 本课程学习之后能够理解动态链接
库
原理,学会
编译
静态
库
、动态
库
,学会通过
lib
和头文件链接动态
库
,学会直接通过代码访问
dll
中函数
visual studio 动态链接
库
dll
、静态链接
库
lib
的
编译
生成
、调用(
dll
lib
)
版权声明:转载需标明该文链接。...
生成
链接
库
的方式有两种:一种是动态链接
库
,一种是静态链接
库
。操作稍微不同。以下详细讲解动态链接
库
.
dll
的
生成
&调用,文末简单讲解静态链接
库
.
lib
的
生成
...
windows在cmd中用cl、link工具
编译
生成
dll
与
lib
windows在cmd中用cl、link工具
编译
生成
dll
与
lib
运行环境:Win10 家庭版 , Visual Studio 2019 x64 本机工具命令提示符(cl 、linker 工具只能在VS配套的工具环境里面运行才能正常工作,否则可能会发生 ‘
LIB
CMT....
Qt
编译
动态
库
只
生成
dll
没有
lib
文件
背景描述: ... 主动修改
库
A为动态
库
(.pro文件去除CONFIG += static
lib
),只
生成
dll
而无
lib
文件; 现象a原因和解决方案: 原因:
库
A部分组件加载时涉及C++和C底层
库
,VS
编译
时可由VS
编译
环境完成查找和
根据
dll
文件
生成
lib
例如,Qt Msvc2019
编译
的
dll
和
lib
给msvc201不能调用,因为
lib
文件不同,需要重新
生成
lib
,或者更改加载
dll
的方式,即不用
lib
加载。其中test.def为def文件名,test.
lib
为
生成
的
lib
文件名,应该把test.
lib
该为...
ATL
3,245
社区成员
48,539
社区内容
发帖
与我相关
我的任务
ATL
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
复制链接
扫一扫
分享
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章