アプリ版:「スタンプのみでお礼する」機能のリリースについて

Install Shield 2008でsetupファイルを作成しました。
インストールすると、特定ファイルはフォルダを作り
そのフォルダ内にファイルが作成されます。
ファイルは書き換えが行われるデータファイルです。
アンインストールを行うと、ファイル名が同じなことから
消されてしまうようです。当然というば当然なんでしょうが。。。
この特定のファイルは消さないような方法、設定等はありませんか。
ご教授ください。よろしくお願いいたします。

A 回答 (1件)

インストール シールドについては知りませんので、詳しいかたからの回答が待たれますが、ご希望の処理は msi ファイルの Component テーブルにあるご希望のファイルについて Attributes 属性として msidbComponentAttributesPermanent (16) も指定することで実現できます。



『Orca データベース エディタを使用して Windows インストーラ ファイルを編集する方法』
http://support.microsoft.com/kb/255905/ja

の手順で Orca を導入してください。
msi ファイルを 右 クリックして、表示されたメニューから 「Edit with Orca」 を選んでください。

File Table の FileName 列から、残しておきたいファイル名を見つけて、その Component_ の値を Component Table
『Component Table』
http://msdn.microsoft.com/en-us/library/aa368007 …
の Component 列から見つけて、その要素の Attributes 列の値に 16 を加えてください。

ビルドするごとに手作業でなおすのは面倒だというのであれば MsiOpenDatabase()、MsiDatabaseOpenView()、MsiViewExecute() などの関数と SQL 風の命令を使って msi ファイルを編集するプログラムを書くこともできます。
    • good
    • 1
この回答へのお礼

大変参考になりました。
確認をして試してみます。
ありがとうございます。

お礼日時:2009/02/18 14:03

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!