INNO SETUP注册DLL文件

在用INNO SETUP制作安装脚本时常常遇到DLL没有注册而安装完成后运行程序出现错误的问题

经过一系列的搜索终于找到了解决方案 特此共享

代码如下:

[Files]
Source: “DLL文件所在路径”; DestDir: “{app}”; Flags:ignoreversion regserver

Source: “DLL文件所在路径”; DestDir: “{app}”; Flags:regtypelib

代码解析:

其中Flags:段的regserver参数就是注册

在RUN段就是多余的
来源:(http://blog.sina.com.cn/s/blog_49cd68940100fekc.html) – INNO SETUP注册DLL文件_FreeFox_新浪博客

ignoreversion 忽略版本

regserver 注册activeX DLl/OCX

regtypelib 注册类型库TLB

restartreplace 如文件在使用重启替换

noregerror 注册失败不显示错误信息

replacesameversion 替换相同版本

uninsnosharedfileprompt 卸载时不出现共享文件提示

sharedfile 设为共享文件

sharedfile 设为共享文件”

例:

你开发了一个xxx.dll,在第一个软件soft.exe使用了此DLL,打包时使用了了共享,初次安装测计数加一

再开发了第二个soft2.exe软件,也是用了这个DLL,那么共享计数就为二。

两个软件都在一台机器上安装了,当卸载其中一个软件时,共享计数减一,因另计数未到0,所以此DLL不会卸载,当再卸载每二个软件,计数已到0,说明系统中已没有任何软件使用此DLL了,卸载程序就会把此DLL卸载掉。
来源:(http://blog.sina.com.cn/s/blog_49cd68940100fekc.html) – INNO SETUP注册DLL文件_FreeFox_新浪博客

发表评论

您的电子邮箱地址不会被公开。