解放されないままじゃ

というか確保しなくてもキャストしたらいいんじゃない
Application.MessageBox(PChar(Edit1.Text), '', 0);