初学DLL有关配置步骤的问题

蒙飞鸿 2009-08-02 11:15:29
初学DLL,教学例题里,是需要在调用DLL的工程工作空间里建立DLL工程,然后还有进行一系列没介绍详细机制的设置以后,才能运行。所以对DLL的配置实际上感觉只能死板地按部就班,没有灵活发挥的空间(至少我试了只建立程序工程再添加DLL工程,然后复制一些文件的办法,不能够成功运行DLL)。

所以想了解配置和编写DLL的根本机制(让它能被程序调用的机制)是什么,有没有什么灵活编写DLL的方法。(注:还没有接触到MFC的DLL,请以SDK为基础)


顺便想了解下:在不修改原有程序和原有DLL的情况下,怎么让原有程序调用新写的DLL?(注:还没有接触到MFC的DLL,请以SDK为基础)
...全文
139 14 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
wxf54318 2009-08-03
  • 打赏
  • 举报
回复
建议仔细研究下孙鑫的《VC++》深入详解动态链接库那一章
xquanhao 2009-08-02
  • 打赏
  • 举报
回复
没听过要设置.调用DLL的工程里面最主要的是DLL的路径正确就行啦。
wltg2001 2009-08-02
  • 打赏
  • 举报
回复
初学DLL,教学例题里,是需要在调用DLL的工程工作空间里建立DLL工程,然后还有进行一系列没介绍详细机制的设置以后,才能运行。所以对DLL的配置实际上感觉只能死板地按部就班,没有灵活发挥的空间(至少我试了只建立程序工程再添加DLL工程,然后复制一些文件的办法,不能够成功运行DLL)。
======================
没听过做DLL还要设置什么的啊?不就是对于导出的函数要用相关的关键字说明要导出,为了防止编译时函数名会发生变化加extern "C",除此之外,还要什么设置啊?
不动如岳 2009-08-02
  • 打赏
  • 举报
回复
学习一哈
在他乡奋斗 2009-08-02
  • 打赏
  • 举报
回复
在被调用的函数声明时加一个__declspec(dllimport)
wltg2001 2009-08-02
  • 打赏
  • 举报
回复
别人的程序已经写好了,我怎么让它调用我的DLL呢,
=============
两种方式,上面用LoadLibrary是一种方法,还有一种方法,在头文件中将要用到的DLL中的函数声明一下,不过注意要声明为导入。然后用.#pragma comment(lib,"xxx.lib")对LIB文件进行引用就可以了,你的程序中可以直接调用DLL中的函数,不过要注意DLL文件一般要和最后生成的EXE放在同一个目录下,但是LIB文件却要和源文件放在同一个目录下。
WaistCoatX 2009-08-02
  • 打赏
  • 举报
回复
不是有向导嘛?
oyljerry 2009-08-02
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 mengfeihong 的回复:]
别人的程序已经写好了,我怎么让它调用我的DLL呢,
[/Quote]
LoadLibrary等调用DLL
蒙飞鸿 2009-08-02
  • 打赏
  • 举报
回复
别人的程序已经写好了,我怎么让它调用我的DLL呢,
wltg2001 2009-08-02
  • 打赏
  • 举报
回复
DLL工程在编译好之后,别人如果要用的话,只要用到两个文件,一个DLL文件本身,一个是LIB文件,当然,为了方便使用相应的头文件还是要提供的,一些教材里面为了教学方便,将宿主程序和DLL工程放在一个工作区,那不过是为了方便使用,不用考虑DLL的路径问题。
oyljerry 2009-08-02
  • 打赏
  • 举报
回复
比较好的,就是替换原来的DLL,用同样的DLL名称,DLL导出函数..
wltg2001 2009-08-02
  • 打赏
  • 举报
回复
比如说必须“设置”在同一个工作区,这不是设置么
===================
谁告诉你说必须在同一个工作区啊?按你这么说,你写的DLL我是没办法用的了,因为我的工程怎么可能会和你的DLL工程在同一个工作区呢?
gg606 2009-08-02
  • 打赏
  • 举报
回复
关于你顺便想想了解的那个问题:
让新写的DLL和原来的DLL有相同的文件名,和相同的接口
蒙飞鸿 2009-08-02
  • 打赏
  • 举报
回复
比如说必须“设置”在同一个工作区,这不是设置么

16,548

社区成员

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

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

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