Форум: "Прочее";
Текущий архив: 2006.12.10;
Скачать: [xml.tar.bz2];
ВнизINDY attach Найти похожие ветки
← →
zdm © (2006-11-22 11:40) [0]Дайте пожалуйста пример прикрепления файла к письму.
← →
zdm © (2006-11-22 11:56) [1]ведь не сложно же, просто встрял и не могу растормозиться, ну помогите же!!!! есть IdSMTP,IdMessage -просто письмо отрправляется без проблем, а для присоединения файла нужен constructor, в инете все ссылки на одну и ту же статью, не могу самостоятельно разобраться, может есть у кого готовый unit , приведите пример, пожалуйста!
← →
zdm © (2006-11-22 12:51) [2]АУ
← →
Орион © (2006-11-22 13:19) [3]в ответ эхо: "у... у..."
← →
easy © (2006-11-22 13:19) [4]*:\Program Files\Borland\Delphi\Demos\Indy\MailClient\MailDemo.dpr
← →
Megabyte © (2006-11-22 14:29) [5]msg : TIdMessage;
file : TIdMessagePart;
file := TIdAttachment.Create(msg.MessageParts, путь до attachfile);
← →
zdm © (2006-11-22 14:34) [6]блин, диска нету, а демки не ставил, скиньте текст юнита
← →
zdm © (2006-11-22 14:39) [7]
> Megabyte © (22.11.06 14:29) [5]
Так и делал. Я правильно понял?
procedure TForm_Osn.Button1Click(Sender: TObject);
var
msg : TIdMessage;
file_for_attach : TIdMessagePart;
begin
IdSMTP1.Connect;
file_for_attach := TIdAttachment.Create(msg.MessageParts, "c:\1\1.zip");
выдает ошибку что кол-во пар-ров превышено, т.е. "c:\1\1.zip" лишний... Я туплю и понимаю это ну помогите разобраться.
← →
Anatoly Podgoretsky © (2006-11-22 14:50) [8]> zdm (22.11.2006 14:39:07) [7]
F1 + TIdAttachment.Create
← →
zdm © (2006-11-22 14:57) [9]Хорошо, мне стыдно, но не занимался я ни когда constractor-ами, пожалуйста, распишите где, что и в каких секцияц надо прописать.
constructor Create(Collection: TIdMessageParts; const AFileName: TFileName = ""); reintroduce;
← →
Anatoly Podgoretsky © (2006-11-22 15:02) [10]> zdm (22.11.2006 14:57:09) [9]
Сначала справка, потом что непонятно в ней, потом что не выходит в коде.
Это как я понимают из справки по конструктору
Тогда первый параметр существующая коллекция, второй имя файла
← →
zdm © (2006-11-22 15:08) [11]
> Anatoly Podgoretsky ©
Ты всё как всегда правильно понимаешь. Нету сейчас под рукой книги, ведь задачка то элементарная, кинуть пару компонент-присоеденить файл-и кинуть сюда текст юнита, чего разглагольствовать то? Ну туплю, а надо решить задачку побыстрей.
← →
Anatoly Podgoretsky © (2006-11-22 15:19) [12]> zdm (22.11.2006 15:08:11) [11]
Ну правильно говоришь, задача элементарная, тебе даже код привели.
А вот в чем тупишь, вот это и надо объяснять, да так что бы другим было понятно.
← →
zdm © (2006-11-22 15:24) [13]
> Anatoly Podgoretsky © (22.11.06 15:19) [12]
Что и в каких секциях прописать!!!
← →
zdm © (2006-11-22 15:27) [14]ну не создавал я кострукторов!!!!
← →
Anatoly Podgoretsky © (2006-11-22 15:28) [15]> zdm (22.11.2006 15:24:13) [13]
О каких секциях идет речь.
Кроме того я сумел забыть почти все что знал про Инди где то за неделю.
Я его не использую ни в каком виде, альтернатив хватает.
← →
zdm © (2006-11-22 15:30) [16]
> Anatoly Podgoretsky © (22.11.06 15:28) [15]
Какие?
← →
Anatoly Podgoretsky © (2006-11-22 15:30) [17]> zdm (22.11.2006 15:27:14) [14]
А их и не надо создавать, все уже создано до нас. Просто используй существующее.
← →
Anatoly Podgoretsky © (2006-11-22 15:33) [18]> zdm (22.11.2006 15:30:16) [16]
Сходи на торри, там этого добра уйма, от гигантских наборов, до узкоспециализированых, только отсылка почти и больше ничего. Можно посмотреть в сторону Синапс, тоже что и Инди, только не монстр.
← →
zdm © (2006-11-22 15:33) [19]
> Anatoly Podgoretsky © (22.11.06 15:30) [17]
Какие?!?!?!? Анатолий, ну ответь хоть раз конкертно!
← →
zdm © (2006-11-22 15:34) [20]ок, у меня форум подтормаживает всегда, поэтому не одекватные ответы могут показаться, сейчас поищу
← →
zdm © (2006-11-22 15:37) [21]
> > Anatoly Podgoretsky ©
если не трудно, кинь ссылки.
← →
Anatoly Podgoretsky © (2006-11-22 15:44) [22]> zdm (22.11.2006 15:33:19) [19]
Хорошо, конкретно - я использую ICS
← →
Megabyte © (2006-11-22 15:44) [23]
> zdm © (22.11.06 14:57) [9]
Хорошо, мне стыдно, но не занимался я ни когда constractor-ами, пожалуйста, распишите где, что и в каких секцияц надо прописать.
constructor Create(Collection: TIdMessageParts; const AFileName: TFileName = ""); reintroduce;
Какие еще конструкторы, кроме стандартного? Не гони.
msg : TIdMessage;
file : TIdMessagePart;
msg := TIdMessage.Create(nil); Не забыл?
file := TIdAttachment.Create(msg.MessageParts, путь до attachfile);
← →
Anatoly Podgoretsky © (2006-11-22 15:44) [24]> zdm (22.11.2006 15:37:21) [21]
Сколько раз говорил, ссылки не храню, зачем? Есть же поисковые системы.
← →
zdm © (2006-11-22 15:49) [25]
> Anatoly Podgoretsky © (22.11.06 15:44) [22]
ок, посмотрю
> Megabyte © (22.11.06 15:44) [23]
Не ругайся только, ну не получается, кинь пожалуйста целиком текст юнита. Спасибо
← →
Anatoly Podgoretsky © (2006-11-22 15:57) [26]> Megabyte (22.11.2006 15:44:23) [23]
Этот код уже приводили.
← →
Megabyte © (2006-11-22 16:05) [27]
> Не ругайся только, ну не получается, кинь пожалуйста целиком текст юнита. Спасибо
Да нечего больеше приводить. Остальное к твоей задаче вообще не относится...
> Anatoly Podgoretsky © (22.11.06 15:57) [26]
> Megabyte (22.11.2006 15:44:23) [23]
Этот код уже приводили
Прочитал, не увидел...
Просто это единственное, что имхо можно было забыть, чтобы компилятор ругнулся... Все остальные проблемы уже не в приаттачивании файла.
Ну и конечно, в конце надо разрушить file, но на это компилятор не ругнется.
← →
zdm © (2006-11-22 16:13) [28]
> Megabyte © (22.11.06 16:05) [27]
Брат, я писал, что не создавал конструкторов, ну если тебе не трудно, создай быстренько приложение с прекрепленным файлом, и брось сюда текст, пожалуйста, буду очень благодарен.
← →
Virgo_Style © (2006-11-22 16:17) [29]а при чем тут создание конструкторов
← →
Андрей Сенченко © (2006-11-22 16:18) [30]zdm © (22.11.06 16:13) [28]
да не нужно тебе создавать никаких конструкторов. Тебе нужно создать переменную объявленного тобой класса
← →
Андрей Сенченко © (2006-11-22 16:22) [31]На вот. В местной кладовке нарыто. Давно бы уже сам нашел.
procedure SendMail;
var
LSMTP: TIdSMTP;
LMsg: TIdMessage;
begin
LSMTP := TIdSMTP.Create(nil);
LMsg := TIdMessage.Create(LSMTP);
with LMsg do
begin
CharSet := "rus-ascii";
From.Name := spMailName;
From.Address := spMailAddr;
Recipients.EMailAddresses := spToMail;
Subject := spToSubj;
Body.Text := spToBody;
if length(spToAttc) > 0
then TIdAttachment.Create(LMsg.MessageParts, spToAttc);
end;
with LSMTP do
begin
AuthenticationType:=atLogin;
Port := spMailPort;
Host := spMailHost;
UserId := spUserId;
if length(spMailPass) > 0
then Password := spMailPass;
try
Connect;
Send(LMsg);
// ShowMessage("письмо отправлено");
except
on e:exception do
begin
showmessage (Trim(e.message));
end;
end;
Disconnect;
end;
FreeAndNil(LMsg);
FreeAndNil(LSMTP);
end;
← →
zdm © (2006-11-22 16:24) [32]я понимаю, что туплю в какой то мелочи , но не могу её вычеслить вот код, подскажите где ошибка?
unit Unit5;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient,
IdExplicitTLSClientServerBase, IdMessageClient, IdSMTPBase, IdSMTP, IdIMAP4,
IdMessage,IdAttachment,IdMessageParts;
type
TForm5 = class(TForm)
IdSMTP1: TIdSMTP;
Button1: TButton;
IdMessage1: TIdMessage;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form5: TForm5;
implementation
{$R *.dfm}
procedure TForm5.Button1Click(Sender: TObject);
var
msg : TIdMessage;
file_ : TIdMessagePart;
begin
IdSMTP1.Disconnect;
msg := TIdMessage.Create(nil);
IdSMTP1.Connect;
file_ := TIdAttachment.Create(msg.MessageParts, "c:\1\1.zip"); ////Вот сдесь ошибка!!!!!!!
TIdAttachment.Create(IdMessage1);
IdSMTP1.Send(IdMessage1);
end;
end.
← →
zdm © (2006-11-22 16:31) [33]блин, у меня сейчас крыша съедит, ну нету у TIdAttachment.create свойства "имя файла" там только "Tcollecrtion"
← →
Anatoly Podgoretsky © (2006-11-22 16:31) [34]
> Прочитал, не увидел...
Смотри 5, там не приведено создание всей цепочки объектов, но это ведь само собой подразумеваемое.
← →
zdm © (2006-11-22 16:34) [35]приведите пожалуйста весь текст юнита, ну неужели это так сложно?!?!?!?!?
← →
Anatoly Podgoretsky © (2006-11-22 16:34) [36]Так может у тебя версия не та?
← →
zdm © (2006-11-22 16:37) [37]
> Anatoly Podgoretsky © (22.11.06 16:34) [36]
блин, а может правда, у меня bds2006 ну и полагающейся с ней комплект indy компонент.
← →
Джо © (2006-11-22 16:40) [38]> > Anatoly Podgoretsky © (22.11.06 16:34) [36]
>
> блин, а может правда, у меня bds2006 ну и полагающейся с
> ней комплект indy компонент.
Да, вроде в том Инди, который в BDS2006, в конструкторе всего один параметр. Зато у TIdAttachment имеется метод TIdAttachment.LoadFromStream :)
← →
Anatoly Podgoretsky © (2006-11-22 16:41) [39]> zdm (22.11.2006 16:37:37) [37]
Тогда у тебя Инди 10
← →
Джо © (2006-11-22 16:41) [40]Более того, у него имеется специализированный наследник: TIdAttachmentFile. И у него уже в конструкторе можно прямо задавать имя файла.
Страницы: 1 2 вся ветка
Форум: "Прочее";
Текущий архив: 2006.12.10;
Скачать: [xml.tar.bz2];
Память: 0.54 MB
Время: 0.046 c