2006年12月06日
Zone.Id(Zone.Identifier)の一括削除
XPSP2以降のIE6では、ネット経由でダウンロードするファイルにZone.Identifierが付加される。
(参考)http://www.atmarkit.co.jp/fwin2k/win2ktips/498zoneid/zoneid.html
これは危険なファイルを誤って実行してしまわないよう、マークをつけておくものらしい。
ファイルを右クリックしてプロパティを表示すると。「全般」タブの下部に「ブロックの解除」ボタンが現れる。
このボタンを押すとZone.Idが削除される。
Zonr.IdはNTFSのストリームとして記録されている。サイズが小さいため、ほとんどの場合MFTのFILEレコード内に格納されているものと思われる。(したがってディスク容量に問題はない)
しかし、安全であると確認したものについて何度も警告されるのもアレなので、一括削除したいところ。
(「この種類のファイルであれば常に警告する」のチェックを外しておくのはためらわれる)
そこでSysinternalsのStreamsというコンソールアプリを使用する。
やり方は
http://www.microsoft.com/technet/sysinternals/FileAndDisk/Streams.mspx
でStreams.zipをダウンロード、解凍。
Zone.Idを消したいファイルを一時ディレクトリ等に移動しておく。
コマンドプロンプトを起動して、
>streams.exe -d <ストリームを消したいファイルのあるディレクトリ> ~~または~~streams.exe -d <ストリームを消したいファイルのあるディレクトリ>¥*.*
を入力、実行。
(注意)他のアプリで管理用データとしてストリームを記録している場合や、ストリームに暗号化ボリュームのコンテナを記録している場合、
上のコマンドを不用意に実行するとそのような有意のストリームまで消えてしまうおそれがあるので注意すること。
必ず、ZoneIdを消したいデータを一時ディレクトリに移動させておいてから実行する。
<2007.3.9追記>
Zone.IdentifierをGUIで一括削除できる便利なソフトがVectorで紹介されていた。
このソフトを使えば、指定したサブフォルダ内にあるファイルのZoneIDを一括削除できる。