Retrieving a specified message from the IMAP server

procedure TForm1.btnGetClick(Sender: TObject);   
var   
   MsgNo: Integer;   
   MsgUids: TStrings;   
begin   
   if clIMAP4.Active then Exit;   
 
   clIMAP4.Server := 'mail.test.com';   
   clIMAP4.UserName := 'test';   
   clIMAP4.Password := 'test';   
   clIMAP4.UseSasl := False;   
   clIMAP4.Open();   
 
   MsgUids := TStringList.Create();   
   try   
      clIMAP4.UidSearchMessages('SUBJECT hello', MsgUids);   
 
      MsgNo := 0;   
      clIMAP4.UidRetrieveMessage(MsgUids[MsgNo], clMailMessage1);   
   finally   
      MsgUids.Free();   
   end;   
 
   ShowMessage('From: ' + clMailMessage1.From.FullAddress + #13#10 + 
        'Subject: ' + clMailMessage1.Subject);   
 
   clIMAP4.Close();   
end

Add Feedback