*[Macrium]ハードコーディングの多用・・・しかも地雷あり

今に始まったことでは無いのだが・・・
Reflectのソースはかなり汚い
ハードコーディングの多用はもちろんのこと、リソースを用意しているのに
それを忘れているのかリテラルを使用とかパッチの作成はかなりの手間

例えばReflectbin.exeだとFull(フルバックアップ)が該当し、英語だと &Full で
10Byteに対し日本語だと フル(&F) 12Byteでバイト数の関係で翻訳できない場所がある
差分(&D)、増分(&I)と並んで表示されているところなので使い込んでいる人なら
気がついているだろう
まさか 古(&F) にするわけにも行かないし・・・
(恐らく誤変換だと笑われるだろう)

そしてRMBuilder.exeはReflectbin.exe以上に酷い
今回悩みまくったのがこちらの文字列
Rescue media successfully created
f:id:nakapon:20181108121639p:plain

リソースのStringtableにはちゃんと用意されているのに書き換えても変わらない
f:id:nakapon:20181108121642p:plain

どこかにリテラルがあるのだろうとバイナリエディタで検索するも見つからず・・・
とりあえず後回しにし、他の翻訳を進めつつ何が原因だろうか?と
考えていたのだが・・・ふと思いついたのがコード

まさかと思いつつUNICODEからASCIIに切り替えると・・・
やっと見つけることができた
なんだかなぁー
(通常のリテラルUNICODE。なぜASCIIのリテラルがあるのか不明)
f:id:nakapon:20181108121651p:plain

どうにか日本語メッセージに置換できたが、文字数(バイト数)の関係で
メッセージが短くなってしまったのがやや不満
f:id:nakapon:20181108121657p:plain

Reflectにはこの手の手抜きが本当にたくさんあって、そのためなのか
ドイツ語対応も中途半端
Macriumは他言語(多言語)対応を積極的にする気は無いのだろう
基本性能は良いのだから日本語版を出して欲しいのだが・・・