Windowsにソフトウェアをインストールしていて、インストール中に行われたすべての変更を確認したいとします。これは、システムの変更を追跡する最も簡単な方法です。プログラム/システムファイルやレジストリなどで変更が発生する可能性があります。その変更を追跡するツールはありますか?これは、たとえば、管理者が行ったすべての変更を追跡したいパッチのインストールに役立ちます。
ここでは、Sysinternalのプロセスモニターが役立つ場合があります。少し冗長すぎるかもしれませんが、他のプロセスを除外して、最適に機能するまで微調整することができます。それを起動してスキャンし、インストールを開始し、完了したら停止します。
http://technet.Microsoft.com/en-us/sysinternals/bb896645.aspx
起動されたバイナリインストールに固有の他のFreeソリューションがあるかもしれませんが、私はそれらを認識していません。
クイックアップデート
少なくともレジストリについては、Evanに同意します。冗長すぎる場合は、インストールの前後にエクスポートを実行することをお勧めします。 Windows 2003サポートツールには、windiff.exe(2つの.regファイル間のレジストリの違いを検索するための古いお気に入り)が付属しています。
あなたは「貧乏人のスナップショット」をやりたいのです。 WIXを使用してサードパーティソフトウェア用に独自のMSIを構築する場合、これはかなり頻繁に行います。
プロセスモニターは、おそらくあなたがやろうとしていることに対して少し冗長すぎます。次のようなものを使用して、レジストリの「スナップショット」を作成してみてください。
REGEDIT /E BEFORE.REG
そして、後でもう一度比較できるようにします。
ファイルシステムでは、フリーウェアユーティリティ " FileList "を使用して、ファイルシステムの「前」と「後」のスナップショットを生成しました。
既存のファイル内の変更には問題があります。最初のスナップショットを取り、変更されたファイルを見つけてからロールバックする必要がある場合があります(通常、ロールバックにはVMおよび組み込みのディスクスナップショット機能を使用します))。わかっている各ファイルの「前」のスナップショットは、「後」のバージョンと比較するために変更されます。
変更内容をキャプチャすることは、セットアッププログラムのロジックをキャプチャすることと同じではないことに注意してください。可能な場合は、セットアッププログラムをリバースエンジニアリングする方が、変更内容をキャプチャしようとするよりも優先されます。スナップショットコンピューターの構成の状況により、表示されていないニュアンスを見逃す可能性があります。
Windows 2000Serverに付属の古いWinInstall2003 LEは、参照用にこれらの種類のスナップショットを生成するかなりまともな仕事をしますが、それが生成するMSIはひどいものです。 (私はそれを使うのをあきらめて、私が上で説明したように「手で」自分でスナップショットを作り始めました。)
トータルアンインストールをチェックしてください
インストールの前後から監視し、そのプログラムが何をしたかを正確に教えてくれます。
Installshield製品を使用してパッケージを開くことができるため、実際にインストールしなくても、何が行われるかがわかります。この製品はまた、キャプチャツールを統合して、前後のスナップショットを作成します