меня смущает вот это из help-а:
property AttachInside: boolean read FAttachInside;
When is True, then this part maybe(!) have included some uuencoded binary data.
я так понимаю, в этом моя проблема

Так как оно не определяет точно, может быть сделать перебором? И запихнуть его в try..except? Буду пробывать, но хотелось бы узнать, как правильно.
помещаю свой код на всякий. Код корявенький, но вы уж простите

<span style='font-size:7pt;line-height:100%'>
</span>
var
full: tstringlist;
walk:thookwalkpart;
n:integer;
s:string;
pop1:TPOP3Send;
MessageRes:tmimemess;
countmess: integer;
i2:integer;
flag:boolean;
size, crc:longint;
History: THistoryFile;
SizeMail: THistoryFile;
filename11:string;
isiz:integer;
begin //1
..........вырезано........
messageRes:=Tmimemess.create;
messageRes.Lines.assign(pop1.FullResult);
messageRes.DecodeMessage;
if (Pos('res', messageres.Header.Subject) > 0) then
begin //3
crc:=crc32(messageres.Header.MessageID);
if not History.Exists(Size,CRC) then
begin //4
history.add(size,crc);
for i2:=0 to messageres.MessagePart.GetSubPartCount-1 do
begin //5
messageRes.messagepart.GetSubPart(i2).DecodePart;
if messageRes.messagepart.GetSubPart(i2).AttachInside then
begin //6
filename11:=messageRes.messagepart.GetSubPart(i2).FileName;
form1.lb.items.Add(Presult+'\'+messageRes.messagepart.GetSubPart(i2).FileName);
if not FileExists(Presult+'\'+messageRes.messagepart.GetSubPart(i2).FileName) then
messageRes.messagepart.GetSubPart(i2).decodedLines.SaveToFile(Presult+'\'+messageRes.messagepart.
GetSubPart(messageres.MessagePart.GetSubPartCount-1).FileName)
else
begin
filename11:=messageRes.messagepart.GetSubPart(i2).FileName;
form1.lb.items.Add('присоединенный файл '+Presult+'\'+messageRes.messagepart.GetSubPart(messageres.
MessagePart.GetSubPartCount-1).FileName + ' уже создан');
end;
flag:=true;
end; //-6
end; //-5
if flag=false then
if not FileExists(Presult+'\'+messageRes.messagepart.GetSubPart(messageres.MessagePart.GetSubPartCount-1).FileName) then
begin
messageRes.messagepart.GetSubPart(messageres.MessagePart.GetSubPartCount-1).decodedLines.SaveToFile(Presult+'\'+messageRes.
messagepart.GetSubPart(messageres.MessagePart.GetSubPartCount-1).FileName);
filename11:=messageRes.messagepart.GetSubPart(messageres.MessagePart.GetSubPartCount-1).FileName;
form1.lb.items.Add(Presult+'\'+messageRes.messagepart.GetSubPart(messageres.MessagePart.GetSubPartCount-1).FileName);
end
else
begin
form1.lb.items.Add('присоединенный файл '+Presult+'\'+messageRes.messagepart.GetSubPart(messageres.MessagePart.
GetSubPartCount-1).FileName+ ' уже создан');
filename11:=messageRes.messagepart.GetSubPart(messageres.
MessagePart.GetSubPartCount-1).FileName;
end;