47

Windows レジストリの変更を追跡する方法はありますか? さまざまなプログラムのインストール中にレジストリにどのような変更が加えられるかを確認したいと思います。

4

10 に答える 10

45

Process Monitorを使用すると、さまざまなプロセスのファイルとレジストリのアクティビティを監視できます。

于 2008-09-27T21:03:01.167 に答える
41

特定のプログラムによって行われたレジストリの変更を監視できます。

https://www.nirsoft.net/utils/reg_file_from_application.html

更新:NirLauncher(NirSoftのすべてのアプリケーションを含む)をダウンロードするだけです。これは、Windowsツールボックスへの最良の追加機能の1つです。 https://launcher.nirsoft.net/

于 2012-12-08T21:12:54.470 に答える
11

WMI とレジストリについて:

レジストリに関する 3 つの WMI イベント クラスがあります。

  • RegistryTreeChangeEvent
  • RegistryKeyChangeEvent
  • RegistryValueChangeEvent

レジストリ イベント クラス

ただし、次の制限に注意する必要があります。

  • RegistryTreeChangeEvent と RegistryKeyChangeEvent では、どの値またはキーが実際に変更されたかを直接知る方法はありません。これを行うには、イベント前のレジストリの状態を保存し、イベント後の状態と比較する必要があります。

  • これらのクラスを HKEY_CLASSES_ROOT または HKEY_CURRENT_USER ハイブで使用することはできません。これは、監視するレジストリ キーを表す WMI クラスを作成することで解決できます。

修飾子を使用したレジストリ クラスの定義

__InstanceOperationEvent 派生クラスで使用します。

したがって、WMI を使用してレジストリを監視することは可能ですが、完璧とは言えません。利点は、「リアルタイム」で変化を監視できることです。もう 1 つの利点は、WMI の永続的なイベント サブスクリプションです。

イベントの常時受信

レジストリを「常に」監視する方法。アプリケーションが実行されていない場合のイベント。

于 2008-09-28T14:21:08.707 に答える
9

追加のツールを使用せずにこれを行う簡単な方法は、インストール前にレジストリをテキスト ファイルにエクスポートし、インストール後に別のファイルにエクスポートすることです。次に、2 つのファイルを比較します。

そうは言っても、Sysinternals ツールはこれに最適です。

于 2008-09-27T21:23:41.260 に答える
2

SOの一部を監視できるsobek( http://code.google.com/p/sobek-hids/ )と呼ばれるpython-hidsがあります。ファイルの変更を監視するために私にとっては正常に機能しています。ドキュメントには、レジストリの変更を監視できると書かれていますが、私にとっては機能しません。

Pythonベースのhidを簡単に再生するための優れたソフトウェア。

于 2011-11-29T14:56:07.770 に答える
1

いくつかの方法があります。オンザフライで自分でやりたい場合は、おそらく WMI が最適です。RegistryKeyChangeEventそしてその親戚は注目すべきものです。__InstanceCreationEvent__InstanceDeletionEventおよび__InstanceModificationEventクラスでも監視する方法があるかもしれません。

http://msdn.microsoft.com/en-us/library/aa393040(VS.85).aspx

于 2008-09-27T22:29:47.777 に答える
0

私は Franci に同意します。すべての Sysinternals ユーティリティは一見の価値があります (Autoruns も必須です)。古き良き Filemon と Regmon を置き換える Process Monitor は貴重です。

必要な使用法に加えて、プロセスが失敗した理由 (存在しないファイルまたはレジストリ キーにアクセスしようとするなど) などを確認することは非常に役立ちます。

于 2008-09-27T21:14:16.587 に答える
0

PhiLho は、ついでにAutoRunsについて言及しましたが、私はそれを詳しく説明する価値があると思います。

レジストリ全体をスキャンするのではなく、自動的にロードされるもの (EXE、DLL、ドライバーなど) への参照を含む部分だけをスキャンします。これはおそらくあなたが興味を持っているものです。変更を追跡しませんが、テキストにエクスポートできます。ファイルなので、インストールの前後に実行してdiffを実行できます。

于 2008-10-11T09:43:37.290 に答える