It is necessary to specify how the string will be coded (ASCII or Unicode) using EXIF_UserCommentCode. Example:
ImageEnView1.IO.LoadFromFile('input.jpg');
ImageEnView1.IO.Params.EXIF_UserComment := 'Hello World!';
ImageEnView1.IO.Params.EXIF_UserCommentCode := IEEXIFUSERCOMMENTCODE_UNICODE;
ImageEnView1.IO.Params.EXIF_HasEXIFData := true;
ImageEnView1.IO.SaveToFileTIFF('test.tiff');
...and read back....
ImageEnView1.IO.LoadFromFileTIFF('test.tiff');
ShowMessage( ImageEnView1.IO.Params.EXIF_UserComment );
IEEXIFUSERCOMMENTCODE_UNICODE is defined in imageenio unit.