0

基本の MSI プロジェクトを作成するために installshield 11 を使用しています。私の要件は、プロジェクトをアンインストールするときに、特定のファイルを保持したいということです(アンインストールが行われるときにこれらの特定のファイルを削除したくない)。さらに、これらのファイルはコンポーネントの一部ではありませんが、特定の場所から copyfile (スクリプト) コマンドを使用して、インストール プロセス中に作成 (コピー) されます。

-開発者

4

4 に答える 4

2

無効 (LOGGING)...有効 (LOGGING) を使用します。これらのメソッドの間に CopyFile() を使用すると、アンインストールでファイルが削除されなくなります

于 2013-09-04T09:51:52.470 に答える
0

Balachandra さん、ご回答ありがとうございます。

保存したいファイルがCopyFileで作成され、copyfileコマンドで言及した対象のディレクトリが存在しません。そのため、CopyFile はフォルダーを作成し、ファイルをそのフォルダーにコピーします。そのため、installsheild の dir テーブルにこのフォルダー エントリがないことは明らかです。

しかし、このアプローチは役に立ちません。アンインストールすると、コピーされたすべてのファイルがこのフォルダーから削除されます。-開発者

于 2011-09-23T05:00:56.753 に答える
0

Windows インストーラーは、インストールしたファイルとフォルダーのみを削除します。これは、ファイル テーブルとフォルダ テーブルのデータベースに存在する各ファイルです。フォルダーの場合と同様に、ファイル テーブルにエントリがないファイルは削除されません。

また、フォルダが空でない場合、そのフォルダはアンインストール中に削除されません。

Copyfile スクリプトを使用していくつかのファイルをインストールする場合 (カスタム アクションを使用している可能性があります)、それらのファイルはアンインストール中に削除されません。

于 2011-09-22T19:44:03.287 に答える
0

ありがとう、アラーター、私はこれと 2 日間戦ってきた。

サンプル構成ファイルをインストールし、そのコピーを作成します (最初のインストール時)。お客様が構成ファイルを変更した場合は、構成ファイルを保持する必要がありましたが、ファイルはアンインストール時に常に削除されていました。CopyFile コマンドの周りの LOGGING を無効にすることは、まさにこの状況の解決策でした。

開発者、これが古い投稿であることは知っていますが、これを正しい答えとして受け入れる必要があります。

このフレーズが、他の人が検索エンジンを通じてこのソリューションを簡単に見つけるのに役立つことを願っています: CopyFile で作成された Installshield ファイルは、アンインストール中に常に削除されます。

于 2016-09-01T12:28:15.880 に答える