ここの
ttp://www.ne.jp/asahi/nagoya/ahomaro/builder/cpb-015.html

// AnsiStringを返す

AnsiString BoolToStr(bool val)
{
return (val!=0) ? AnsiString("TRUE") : AnsiString("FALSE");
}

これって
関数のスコープ抜けて戻ってきた時点で
AnsiString("〜")は破棄されてるんじゃないですか?