>>351
違いますよ。AnsiStringのコンストラクタに conct char* 型の引数を
取る時は、そのポインタはワイド文字列を指していなければならないと
決まっています。

>>348
原因は、inStr = infile; にあります。代入演算子 operator=(const char*)
内で、AnsiStringのコンストラクタが呼び出されているので、奇数バイトの
文字列を渡した時は、最期のワイド文字列が無効だと無視されてしまう
のではないかと思われます。