Windows 8 のサンプルコード、DeviceEnumerationを見ていたら、XMLへのシリアライズコードが入っていた。ライブラリでシリアライズを支援しているのか?と期待したがそうではなく、プロパティのキーと型をXMLファイルに落として復元するというものであった。Boost.Serializationを使うほうが簡潔に書けるけど、^や%なんかのシリアライズには当然対応していないので悩ましい。
デバイスのプロパティをいじるのはとても簡単になっている。単なるキーと値のペアのコンテナなのだが、IMMDeviceの時はアクセスするためにゴリゴリコードを書かなくてはいけなくて本当に面倒臭かったのだ。