3

ボリュームフィルタードライバーを使用して、WindowsOSでNTFSボリュームの変更を追跡するソフトウェアがあります。ドライバーがインストールされているOSの外部でボリュームがマウントおよび変更された場合の状態を処理する必要があります。

ボリュームの「最終マウント時間」を把握することはできますか?または、ボリュームがドライバーコントロールの外部にマウントされているかどうかを確認できるその他のパラメーターはありますか?

4

1 に答える 1

2

「最終マウント時間」はわかりませんが、「ログファイルオープンカウント」があります。http://www.opensource.apple.com/source/ntfs/ntfs-64/kext/ntfs_logfile.hを見ると、次のRESTART_AREAような構造が表示されます。

/ * 40 * / le32 restart_log_open_count;/*毎にインクリメントされるカウンター
                                     ログファイルが再起動された時間
                                     ログファイルが開かれるマウント時。
                                     ランダムな値に設定を作成する場合。Win2k
                                     現在の下位32ビットに設定します
                                     NTFS形式のシステム時刻(time.hを参照)。* /
/ * 44 */le32予約済み; /*8バイト境界への予約/調整。* /
/ * sizeof()= 48(0x30)バイト* /
} __attribute __((__ packed__))RESTART_AREA;

restart_log_open_countマウントの追跡に使用できるのは、その終わり近くにあることがわかります。値を見て、保存された値と比較します。保存された値に1を加えた値に等しくなければなりません。もしそうなら、あなたが最後にコントロールして以来、それはマウントされていません。

于 2012-06-08T05:01:41.583 に答える