覚えられませんっ

元「覚えらんない人のためのオンラインソフト備忘録」。遅ればせながらブログ移行してみた次第。

ファイルの名前が入れ替わる?

不思議なことを経験した。
ここ半年ほど使用していなかったソフトを、久々に使おうとしたら、起動できない。コンソールアプリでもないのになぜかDOS窓が出現し、ついでエラーメッセージが出た。タイトルバーに「16 ビット Windows サブシステム」、メッセージは「CPU は不正命令を検出しました。」ぐぐって流し読んだが、これといった原因が特定できるメッセージではなさそう。とりあえずあふでフォルダ内を点検する。Readme.txtをttPage-Rで開いてみるとバイナリな状態。テキストファイルと思って開いたものがバイナリだった場合、俺のような素人は非道く禍々しいものを見てしまったような印象を受ける。「どー見てもファイルが書き換えられている」=「ウィルスの仕業」と俺の脳内はパニクった。そういえばこのアプリのアイコンが例のDOSアプリ汎用みたいなのに変わってたんだよなあれこのソフトアイコンなかったっけかなとは思ったがそれ以上追究しなかったのがいかんかったしかし待てよ考えてみりゃそーなってからひと月くらいたつぞ他のアプリもデータも何ら問題ないぞウィルスならそんなちんたらしてないんじゃなかろうかそうだそうだ何か他の原因に違いない。
幸いなことにこのアプリはレジストリを書き換えないタイプのもので、俺はそうしたアプリはProgram Files以下にインストールすることはなく、別の場所にまとめてある。フォルダごとコピーするだけでバックアップがとれ、書き戻すだけで再インストール可能なので面倒がないからだ。昔からの習慣でこのフォルダはシステムドライブ(C:)に作っていたのだが、TrueImageを導入してシステムドライブのリストアを頻繁にするようになると、データドライブにおいておいた方が何かと都合がよい。そこで、以前CドライブにあったこのフォルダをそっくりそのままDドライブにコピーし、このフォルダ以下の設定ファイル中のパスを秀丸のマクロ(FastPerm)を使って大胆に一括置換した。いざとなればCドライブにそのままコピーもとが残っているし、上書きするだけで復活できるからね。
そんな経緯があったので、とりあえずDFでコピー元のドライブとファイルを比較してみることに。すると見事にフォルダ内のファイルすべてが不一致。タイムスタンプは変わっていないのに、すべてサイズが違う。フォルダツリーの同階層にあるフォルダも軒並み被害に遭っている。そんなふうにあちこちのフォルダをDFで比較していくうちに、あることに気づいた。上下に並んだバイナリファイルとテキストファイルの、サイズがきれいに入れ替わっている。これって偶然?いや、もしや、と思い、バイナリな拡張子がついているファイルをttPage-Rで参照すると、ビンゴ。これが見事にもとのテキストファイルの方であった。つまり、「名前がずれてしまった」わけである。
原因は不明。ずっと使っていなかったアプリのフォルダばかりが被害に遭っていたので気づくのが遅れてしまい、どのタイミングで発生したかわからない。大胆置換がいけなかったのかなあ。