1

Installshield 2008 Primer Edition を使用してパッケージを開発しています。プロジェクト タイプは Installscript MSI プロジェクトです。

私が直面している問題は、インストール中にいくつかのファイルをこの場所から次の場所にインストールしていることです。ファイルのセットをSystem32C:\Program Files\Company\SystemFilesフォルダーにコピーして追加しています。これには DLL と OCX ファイルが含まれており、 System32フォルダーへのコピーが完了しています。インストールスクリプトを使用。

これにより、アンインストール中に、インストールされたファイルがSystem32から削除されます。これは、同じ DLL セットを必要とする他の依存アプリケーションが動作を停止したためです。

Installscript を使用していることを避けるために、アップグレード中に問題が発生したため、組み込みオプションを使用するのではなく、ProgramFiles から System32 フォルダーにファイルをコピーするように Installscript にアプローチしました。

システム属性を設定するFILE_ATTR_SYSTEMのような Installscript を使用して System32 にファイルをコピーした後にファイル属性を設定するなど、いくつかの回避策を試しましたが、アンインストール中にファイルが削除されます。

ファイル属性をPERMANENTまたはSHAREDとして指定する方法。これは役に立ちますか?もしそうなら、Installscriptを使用してどのように設定できますか?

4

4 に答える 4

1

2 つのアイデアがあります。1) アンインストール中にファイルが削除されないため、SHARED オプションを使用できると思います。

2)Also when i was facing similar issue , what i did was putting all the required files in the installation directory itself so that while uninstalling only the installed files will be removed.(I know this is not a best solution)

(NOTE:I have worked on Install shield some 6 years back and so remember only certain things)

于 2010-07-28T06:59:46.997 に答える
0

インストール スクリプトからログを無効にすることもできます。これにより、インストーラーは、特定のファイル グループまたは機能をインストールしたことを「忘れる」ようになります。

システムに永続的に残したいファイルをコピーした後、もう一度ログを有効にする必要があります。

ログ記録を無効にした後に有効にすることを忘れた場合、アンインストール プロセスが正しく機能しない可能性があります。

構文は次のとおりです。

//ここに永続ファイルをコピーするコードを追加します Enable(LOGGING);

于 2014-02-03T18:49:24.453 に答える