Разработан плагин для IE (как часть информационной системы), написанный на Delphi. Он принимает некий список почтовых адресов и тело письма, которе рассылается по этому списку адресов. В целом можно считать что плагин работает. Но вот когда длина списока адресов становится больше 250 симоволов LN начинает чудить: обрезает его как ему захочется, причем не обязательно лишь с позиции, превышающей гипотетический лимит 250, а, скажем, выкинет 2, 3 и 4 адрес из списка с 8 адресами...
Плагин полноценно отлаживается из-под среды разработки и оттуда видно что строка до установки значения поля MailDoc.SendTo в нормальном состоянии, однако, в Лотус прилетает лишь обрубок. Пытался поиграться с типами AnsiString, WideString, String, Variant - результата не добился...
Помогите кто понимает проблему глубже!
procedure TForm2.doEmail;
var
UserName, MailDBName, MailServer: string;
Session, WorksSpace, uiDoc, MailDB, MailDoc: OLEVariant;
begin
Session := CreateOleObject('Notes.NotesSession');
MailServer := Session.GetEnvironmentString('MailServer', True);
MailDBName := Session.GetEnvironmentString('MailFile', True);
UserName := Session.UserName;
MailDB := Session.GetDatabase(MailServer, MailDBName);
if (not MailDB.isOpen) then
begin
MailDB.OpenMail;
end;
MailDoc := MailDB.CreateDocument;
MailDoc.Form := 'Memo';
MailDoc.SendTo := edTo.Text;
MailDoc.EnterCopyTo := edCc.Text;
MailDoc.Subject := edSubject.Text;
MailDoc.Body := reMessageBody.Text;
WorksSpace := CreateOleObject('Notes.NotesUIWorkspace');
WorksSpace.EditDocument(True, MailDoc);
MailDoc.SaveMessageOnSend := True;
uiDoc := WorksSpace.CurrentDocument;
uiDoc.FieldClear('Body');
uiDoc.GotoField('Body');
doLoadText();
uiDoc.Paste;
end;