Выбор имени почтового ящика в Synapse по подстроке в UTF8
Добавлено: 19.06.2013 16:02:28
Эта функция возвращает имя почтового ящика в UTF7 , в SMTP используется искаженный вариант этой кодировки
В Synapse есть специальная опция для этого UTF_7mod
В Synapse есть специальная опция для этого UTF_7mod
- Код: Выделить всё
function SynapseSearchFolderSubstr(ImapSnd:TIMAPSend;FolderUTF8:string):string;
var
TrashNameUTF7:string;
StrList:TStringList;
i,count:integer;
begin
//Поиск ящика по подстроке
StrList:=TStringList.Create;
TrashNameUTF7:=CharsetConversion(FolderUTF8,UTF_8,UTF_7mod);
SynapseSearchFolderSubstr:='';
StrList.Clear;
imapsnd.List('',StrList);
count:=0;
for i:=0 to StrList.Count-1 do
begin
if Pos(TrashNameUTF7,StrList[i])>0 then
begin
SynapseSearchFolderSubstr:=StrList[i];
inc(count);
end;
end;
if count>1 then ShowMessage('Найдено больше 1 ящика');
//if count=0 then ShowMessage('Ящик по подстроке не найден');
FreeAndNil(StrList);
end;