今回は小ネタなので簡単に。
64bitのリソースコンパイラの動きが変わった?
VisualStudio(VC++)で、32bitと64bitのプログラムを同じプロジェクトで作っているときに起こる現象が、
リソースファイルを共有する為に32bitと64bitのプログラムで同じリソースデータがコンパイルされて設定されてしまう
というものがあります。特にバージョン情報で32bit版と64bit版で違うバージョン表記をしたい、というときがありますが・・・。
このときにはやるとすると各バージョンで異なるdefineを行うことでそれを検知して処理する、という方法が考えつきます。
問題点は、リソースエディタを使うとその部分が消えてしまうことなのですが・・・。今回はそれではなくて。
64bit版で定義されていた(と思っていた)_WIN64の定義がなくなっていないか?
ということでした。元々がどうなっていたのかすでに不明ですが、リソースコンパイル時にも自動的に_WIN64が定義されると思い込んでいたら
その制約が無効になっているようでした。何なのでしょうか・・・?
というわけで、それに気がついたのでWebMのライブラリの更新もかねてDirectShow Extend Filter Libraryを0.06に更新したわけです。
ちゃんと32bit版と64bit版で異なるバージョン表記になっていることも確認していますので今回は大丈夫です。
AESのAES-128とかAES-256とか
何となく不安になったのでWikipediaでAESの情報・・・というより、AES-128の「128」は何を指しているのか?について調べてみようと思ったのですが・・・。
調べていくうちに日本語=>英語=>ドイツ語となんか変な順序で情報が詳しくなることに気がついてしまいました。
ちなみに、この場合の128とか256とかは、「ブロック暗号の鍵長(bit)」を表します。ブロック長はたぶん固定(128bit)だと思います。
ドイツ語版のWikipediaでは記述してありますが、AESは設計の段階では「ブロック暗号の鍵長」も「ブロック長」もいくつかの段階が用意されています。
どれを使うかは仕様で決定されるか、仕様を自分で決めてよいならその人次第と言うことでもあります。
あまりブロック長を変化させて設定している例はないようですが。
DVD+R DLの相性問題?
私のPCでは、光学ドライブとしてPlextorのPX-B940SAを使っているのですが、ちょっと微妙な問題が起こっています。
それが「DVD+R DLで二層を書き込むと層の切り替え時にエラーが発生して生焼け状態になる」というものです。
何に起因しているかつかめていないのですが、これの為にDLメディアを5枚ほどだめにしました。意外と痛い損失です。
DVD-R DLやBD-R DLでは今のところ失敗は起こっていないのでメディアかドライブか判別ができないのが厳しいです。
もう一度別のDVD+R DLで試してどうなるか調べてみないとだめかもしれませんね・・・。