0

私は現在、一種のレガシー システム (VC++ 6.0) をサポート/開発しています。しかし、それは実際の問題ではありません。

このプログラムは、いくつかの古いシステム .dll ファイル (私も持っています) に依存しています。

NSIS を使用して新しいインストーラーの構築を開始しましたが、古いシステムの .dll ファイルをどうすればよいですか?

現在のシステム ファイル (私は Win7 を実行しています) が古いプログラムのものよりも新しいかどうかをどうにかして判断できますか?

「タイムスタンプ」をチェックせずに、「新しい」システムファイルを古いシステムファイルで上書きする必要があるかどうかはよくわかりません。

4

1 に答える 1

1

99% の確率で、答えは「上書きしない」です。Windows XP 以降には、必要な DLL ファイルが既に含まれています。これらのファイルが重要なシステム ファイルである場合、Windows では、システム ファイル保護により、それらを上書きすることさえ許可されません。

私が通常行ったことは、ifnewerにSetOverwrite関数に組み込まれたNSISを使用することです(これは、最新バージョンのWindowsのDLLファイルに触れません)

SetOverwrite へのリンク: http://nsis.sourceforge.net/mediawiki/index.php?title=Reference/SetOverwrite

于 2013-08-17T00:26:29.450 に答える