Vistaと7のUDFドライバはちょっとおかしい?

という結論に達しました。 XPで読めてもVistaや7で読めないものがあるようです。

具体的にはパケットライトでUDF2.01で書いたもの。技術的にはVirtual Partition Mapというのを使います。これは上書きできないDVD-Rなどのwrite onceのメディアにあたかも上書きされているかのように記録していくという複雑なファイルシステムです。

で、弊社には(自作の)UDFのツールがいくつかあるので、ディスクの全データを調べてみました。ファイナライズしてないと普通には吸い出せないのでATAPIコマンド発行でセコセコ吸いだし。

データ自体にはどこにも問題があるように思えません。念のため Philipsが出してるチェッカにかけてもちゃんと読めるし、問題は無い模様。

しかし、このOSはとても普及しているので、一応それなりにちゃんと調べないといけません。エラーログとかないので、一体どこが気に入らなくて読めないのかWindowsの気持ちになって調べることに。

こういうのは、読めるデータから読めないデータにちょっとづつ近づけていくのが早い。

そこで、Vista, 7で読めるデータを作成(具体的にはVistaで作る)。それをツールを使ってセコセコと崩していってみました。CRCとかcheck sumとか手動で計算してられないんで、こういうのはツールが大活躍。

で、その結果、ディレクトリのデータがVirtual Partition Map 上にあると読めないようです。これをVirtualじゃない方(普通のpartition Map)に配置すると読めます。

これはバグじゃないかなぁ?ディレクトリのデータはどっちに置いてもいい(と思われる)ので、Virtual Partition Map上あっても読めるようにしてほしかった。実際XPやMacOSでは実際読めます。というか、XPで読めてたのに、Vistaで読めなくなるって・・・

ちなみにXPにSonic UDF Readerというのを入れると同じ挙動をしめすから、どっかのやつを買ってきてVista以降に入れてるのかな?