0

我目前正在支持/开发一种遗留系统(VC++ 6.0)。但这并不是真正的问题。

该程序依赖于一些旧的系统 .dll 文件(我也有)。

我已经开始使用 NSIS 构建一个新的安装程序,但是我应该如何处理旧的系统 .dll 文件?

我能否以某种方式确定当前的系统文件(我正在运行 Win7)是否比旧程序中的更新?

我不确定是否应该用旧的系统文件覆盖“较新的”系统文件,而不检查任何“时间戳”?

4

1 回答 1

1

99% 的情况下,答案将是“不要覆盖”。Windows XP 和更新版本已经有您需要的 DLL 文件。如果这些文件是关键系统文件,由于系统文件保护,Windows 甚至不允许您覆盖它们。

我通常做的是使用 NSIS 内置的 SetOverwrite 函数来 ifnewer (这将 - 正确 - 不会触及现代版本的 Windows 上的 DLL 文件)

链接到 SetOverwrite:http ://nsis.sourceforge.net/mediawiki/index.php?title=Reference/SetOverwrite

于 2013-08-17T00:26:29.450 回答