如何知道我的程序调用了那些DLL,我要学习做安装程序(利用最后时间上网放分,今日揭贴,能人志士快来给建议吧)

crazy_lazy_pig 2002-05-19 09:16:19
我要给我的程序做个安装程序,但一点也不会,想寻求帮助。主要问题是我用了MFC类库的动态连接,却不知我的程序调用了哪些相关DLL。
有关做安装程序的其他建议也给分
...全文
89 24 打赏 收藏 转发到动态 举报
写回复
用AI写文章
24 条回复
切换为时间正序
请发表友善的回复…
发表回复
akiy 2002-05-19
  • 打赏
  • 举报
回复
有好多打包程序都会自动提示你需要什么库吧
核桃2000 2002-05-19
  • 打赏
  • 举报
回复
Visual Studio 里的 depends 工具
AmiaBoy 2002-05-19
  • 打赏
  • 举报
回复
The Module Dependency Tree View displays a hierarchical view of all the modules' dependencies. There are three ways a module can be a dependent of another module:
1.Implicit Module Dependency: Module A is implicitly linked with a .LIB file for Module B at compile/link time, and Module A actually calls one or more functions in Module B. Module B is a load time dependency of Module A. and will be listed in Module A's import table.
2.Dynamic Module Dependency: Module A is not linked with Module B. At runtime, Module A dynamically loads Module B via a LoadLibrary() type technique. Module B becomes a run time dependency of Module A, but will not be listed in Module A's import table.

3.Forward Module Dependency: Module A is implicitly linked with a .LIB file for Module B at compile/link time, and Module A actually calls one or more functions in Module B. One of the functions called in Module B is actually a forwarded function to Module C. Module B and Module C are both load time dependencies of Module A, but only Module B will be listed in Module A's import table.
Dependency Walker fully handles cases 1 and 3. Case 2 is out of the scope of Dependency Walker since there is no way to detect a dynamic module dependency without actually loading the application as a running process and monitoring it. Even this approach is not guaranteed to find all dynamic module dependencies since certain modules may only be dynamically loaded when the application enters a particular state and requires the functionality of that particular module.
crazy_lazy_pig 2002-05-19
  • 打赏
  • 举报
回复
星期一恐怕我不能上网了,不过还是发我一份吧,
我的E-MAIL:crazy_lazy_pig@sohu.com
whz_time 2002-05-19
  • 打赏
  • 举报
回复
我有一个这样的例子,但我现在不在公司,如果你需要的话,我星期一给你。
zhu_lj 2002-05-19
  • 打赏
  • 举报
回复
你没用过REGSNAP吗,特别好用。试试吧,我们做安装程序都用的他。
1。先找一台干净的机器,装操作系统,(或者一个干净的分区)然后装regsnap,然后用ghost把此分区做个备份。
2。用regsnap做系统记录。
3。安装软件,然后在用regsnap做系统记录。然后他会去查找两次系统的差别,包括系统目录和注册表的差别;生成脚本做记录。
注意,有的差别需要重启机器才能表现,所以最好安装后重启机器。
4。如果还有其他软件,重复步骤3。
5。等所有的东西都做完了,做安装程序。
6。然后ghost回来,再安装你的安装程序,试试是不是可用了。
一切OK了。呵呵

NowCan 2002-05-19
  • 打赏
  • 举报
回复
对动态调用的dll怎么办?任何静态分析工具都不行吧。
akademecia 2002-05-19
  • 打赏
  • 举报
回复
up
joy8223 2002-05-19
  • 打赏
  • 举报
回复
InstallShield Professional 或者depend,要不然就自己一个个的试
crazy_lazy_pig 2002-05-19
  • 打赏
  • 举报
回复
############ 楼主广播 ############

十一点结贴,大家踊跃发言呀。
delphihero 2002-05-19
  • 打赏
  • 举报
回复
vc.net 会说你调用了什么 dll.如果用 boundcheck 检查内存泄漏的工具,你会告诉你你的程序用了那些 dll.
http://www.vckbase.com/tools/debug/BChecker6.01.zip
s/n: 6109-00009B-9F
junguo 2002-05-19
  • 打赏
  • 举报
回复
调用MFC,把程序编译成realse,不需要自己打包dll吧。
crazy_lazy_pig 2002-05-19
  • 打赏
  • 举报
回复
############楼主再次声明###############

想多拿分数的,请在此回帖后,都到:
http://www.csdn.net/expert/topic/734/734174.xml?temp=.5819361
留个名
crazy_lazy_pig 2002-05-19
  • 打赏
  • 举报
回复
用静态的好吗?因为我的程序里有一个我自己的DLL,它也是要用到MFC的,是不是也要把它的MFC静态一下?这不是很浪费吗?
hzwanglw 2002-05-19
  • 打赏
  • 举报
回复
VS的安装盘上应该有InstallShield Professional for Visual C++ 6.0,你找一下看看。
lightrain 2002-05-19
  • 打赏
  • 举报
回复
在做发行版时,可以使用静态连接,这样就不需要MFC的动态库了
project->setting->Genneral->using MFC in a static library
lightrain 2002-05-19
  • 打赏
  • 举报
回复
在做发行版时,可以使用静态连接,这样就不需要MFC的动态库了
project->setting->Genneral->using MFC in a static library
crazy_lazy_pig 2002-05-19
  • 打赏
  • 举报
回复
大家去
http://www.csdn.net/expert/topic/734/734174.xml?temp=.2882044
也留个名,我好分配分数。
crazy_lazy_pig 2002-05-19
  • 打赏
  • 举报
回复
Installsheld professional 在哪里找,我怎么找不到?
saucer 2002-05-19
  • 打赏
  • 举报
回复
depends.exe
加载更多回复(4)

16,472

社区成员

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

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

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