求助,用bcb6开发的com组件,只能在开发的机器上注册成功?

songzx66 2007-05-10 05:05:01
用bcb6开发的com组件,只能在开发的机器上注册成功,并正常被其他程序调用,但在其他机器上用regsrv32注册时提示:loadlibrary(...)找不到指定模块.

在编译项目前,已经将project ->options->packages->build with runtime packages的复选去掉了.linker中的use dynamic RTL的复选也去掉了.

项目中使用了第三方提供的dll动态链接库导出的lib.此dll已经复制到system32里,生成的lib文件是和com的dll在同一目录下

com组件项目建立时,是按先创建activex library,然后再从new中选择添加com object.然后在type library中的接口里创建一个新方法.生成classimpl.cpp文件后,在它的头文件中加入了3个private方法,执行内部服务处理用,不对外使用.
...全文
230 10 打赏 收藏 举报
写回复
10 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
hbqc_zh 2007-05-17
找到了,给分吧
  • 打赏
  • 举报
回复
constantine 2007-05-16
你的com还用别人的dll?简单点都放system32里面去吧
  • 打赏
  • 举报
回复
过客猫2022 2007-05-16
gz
  • 打赏
  • 举报
回复
jacknes009 2007-05-16
找到原因了,不是com的问题,是第3方的dll路径问题,必须要写死在固定的目录中才成.

那也可以啊,放到你当前程序地下就可以了吗?
然后去加载就行了吗,
  • 打赏
  • 举报
回复
jacknes009 2007-05-16
study
  • 打赏
  • 举报
回复
我不懂电脑 2007-05-16
组件间的依赖关系是要好好管。
  • 打赏
  • 举报
回复
Waiting4you 2007-05-10
为什么? 不是只要注册了COM组件就行了吗? 还要关心路径?
  • 打赏
  • 举报
回复
songzx66 2007-05-10
找到原因了,不是com的问题,是第3方的dll路径问题,必须要写死在固定的目录中才成.
  • 打赏
  • 举报
回复
songzx66 2007-05-10
使用Depends.exe 工具检查com的dll文件,显示了DWMAPI.DLL这个文件找不到.可是我本机的system32下也没有这个文件,但可以注册成功.
  • 打赏
  • 举报
回复
zwh202342 2007-05-10
com组件好像是要安装的.打开组件服务,看见你的组件在上面右键移动,然后按着向导走
  • 打赏
  • 举报
回复
相关推荐
发帖
C++ Builder

1.3w+

社区成员

C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
帖子事件
创建了帖子
2007-05-10 05:05
社区公告
暂无公告