2009-04-14 33 views
0

私はmsiインストーラに手を加えてインストールをテストしただけでアンインストールしませんでした。インストール後にexeを実行するようにしました。アドバタイズされたショートカットをプログラムによって削除するにはどうすればよいですか?

私はWindows Installer Cleanupユーティリティと、プロセスを自動化するために使用する関連するmsizapが見つかりました。問題は今、新しいバージョンがその後にインストールされたときに、アドバタイズされたショートカットがまだ修復(または古いバージョンをロードしようとしている作業)を試みて失敗することです。ファイルから直接プログラムを実行すると問題はありませんが、広告されたショートカットを自動化された方法で削除する必要があります。これは非常に堅牢で、今はかなり小さなプライベートベータのインストールベースである必要はないので、ショートカットはデスクトップとスタートメニューの最初にインストールされた場所にあると仮定できます。

アドバタイズされたショートカットを考慮する必要がありますか、それとも他のファイルとして扱い、削除するだけですか?

答えて

1

AFAIKのアドバタイズされたショートカットは、設定を行う責任があります。
これらは特別なlnkファイルで、起動時にセットアップを実行するspicelパラメータを持つインストーラを指します(メモ帳や16進エディタで情報を見ることができます)。
決してそれ以下では、MSIザップはセットアップのすべてのトレースを削除する必要があります。
ザップを実行してショートカットを押すとセットアップが実行されますか?またはあなたがエラーを取得する?

+0

"The parameter is incorrect"と表示されるエラーが表示されますが、新しいバージョンをインストールした後にセットアップを実行しようとしたときに何らかのエラーが表示されます(atmと同じことを思い出すことはできません) – Davy8

+0

ショートカットはザッピング後には機能しませんが、新しいバージョンをインストールした後はどのエラーになりますか? –

+0

うーん、数字、今は再現できません。別のHeisenbug私が推測する – Davy8

3

ショートカットに関する限り、これは単に削除できる通常のファイルです。

しかし、私はMSIZAPの使用についてご承知願います - それは本当に最後で、背後にある多くの情報を残し、一度あなたが必要とするWindowsインストーラ情報を削除するなどの共有DLL数、レジストリエントリ、ファイル、レジストリからプログラムに関する情報を削除します。あなたが新しいMSIで再インストール/アンインストールをしようとすると、SharedDLLのリファレンスカウントが最悪です。

ロブには、the pitfalls of using MSIZAPの詳細についての投稿があります。あなたが手にしているすべてのレジストリ情報を手動で捜索する準備ができていない限り、あなたが使いたいものではありません。

関連する問題