请教如何二次封装VC的DLL?

cqpipilu 2015-05-26 12:00:38
我有一个VC的DLL文件,old.dll,以及old.dll包含的接口函数声明;
但是,old.dll里有一个函数A返回的是Cbitmap*类型,我用Delphi无法得到这个类型的返回值。
能不能用VC再做一个new.dll,在new.dll里调用old.dll的函数A,得到Cbitmap*返回值后再转成Delphi能用的类型,或者把这个返回值直接存储为bmp文件,请问该如何操作?
VC小白,白得发亮,没办法了到贵版求援,望详细,感谢!分不够另开贴在送。
...全文
294 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
Jaskle 2015-06-04
  • 打赏
  • 举报
回复
肯定可以啊,不过Cbitmap类型需要DLL去做转换了,看起来很复杂,默默路过
lgstudyvc 2015-06-04
  • 打赏
  • 举报
回复
自己的dll调用dll,留接口 咋了?
zhouxiaofeng1021 2015-06-03
  • 打赏
  • 举报
回复
用Depend工具看看 你这个old.dll接口是什么样的 采用何种标准编译生成的DLL
rundll64 2015-06-03
  • 打赏
  • 举报
回复
我知道delphi的执行程序是可以被逆转的,没试过dll是否也可以,如果可以,你可以用dede试试,找到它的方法和参数,然后直接调用,如果真的想二次封装dll,建议最好你写w32的dll,这样你可以把要被调用的dll启动软件的时候释放,关闭软件的时候删除,很方便,也很干净,
oyljerry 2015-05-27
  • 打赏
  • 举报
回复
封装成标准Windows DLL。如果Dephi中不用对应呃类型参数,那么其实就可以不导出
招财猫_Martin 2015-05-26
  • 打赏
  • 举报
回复
新建一个DLL,按你的要求编写导出函数。 在这个导出函数里,调用old.dll
zgl7903 2015-05-26
  • 打赏
  • 举报
回复
Delphi支持API的吧? 可以用HBITMAP句柄吧 返回(HBITMAP) xxbmp.m_hObject
Eleven 2015-05-26
  • 打赏
  • 举报
回复
引用 4 楼 cqpipilu 的回复:
[quote=引用 3 楼 zgl7903 的回复:] Delphi支持API的吧? 可以用HBITMAP句柄吧 返回(HBITMAP) xxbmp.m_hObject
old.dll我改不了的,没有源码[/quote] 你自己可以做个二次封装的,返回HBITMAP句柄~
cqpipilu 2015-05-26
  • 打赏
  • 举报
回复
引用 1 楼 rundll64 的回复:
首先要考虑到调用约定,delphi好像是_stdcall 所以如果用vc编写dll,调用约定要写成_stdcall 而且如果用mfc的dll,好像delphi无法调用 建议写成vc的win32 stdcall调用约定 这样就可以通用了 不建议写多个dll相互调用,意义不大
谢谢,能给些代码参考吗?
cqpipilu 2015-05-26
  • 打赏
  • 举报
回复
引用 3 楼 zgl7903 的回复:
Delphi支持API的吧? 可以用HBITMAP句柄吧 返回(HBITMAP) xxbmp.m_hObject
old.dll我改不了的,没有源码
rundll64 2015-05-26
  • 打赏
  • 举报
回复
首先要考虑到调用约定,delphi好像是_stdcall 所以如果用vc编写dll,调用约定要写成_stdcall 而且如果用mfc的dll,好像delphi无法调用 建议写成vc的win32 stdcall调用约定 这样就可以通用了 不建议写多个dll相互调用,意义不大

16,372

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

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