Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.03.25;
Скачать: CL | DM;

Вниз

Как отослать почту без использования VCL?   Найти похожие ветки 

 
Delphimun ©   (2002-01-07 11:39) [0]

Как отослать почту без использования VCL, ото еслу при аомощи компонентов это делать, то у программы сильно большой размер получается. Мне же нужно, чтоб прога занимала не более 20-30Кб
С моим же кодом, который отсылает почту при помощи компонента прога весит 360кб
Вот так примерно выглядит моя прога:

program Project1;

uses
SysUtils,
Psock,
NMsmtp;

var
mysmtp: tnmsmtp;
FindedFiles: array[0..100] of string;
FilesText: array[0..2000] of string;
i: integer;
procedure SendMail(FromAdress,ToAdress,FromPopHost,MailText,PathToFile: string);
begin
mysmtp := TNMsmtp.create(nil);
Mysmtp.PostMessage.FromAddress := "Delphimun@rambler.ru";
Mysmtp.PostMessage.ToAddress.Text := "Delphimun@rambler.ru";
Mysmtp.PostMessage.Body.Text := "Hello I";
Mysmtp.Host := "pop.rambler.ru";
mysmtp.PostMessage.Attachments.Add("C:\scandisk.log");
Mysmtp.Port := 25;
Mysmtp.Connect;
Mysmtp.SendMail;
Mysmtp.Disconnect;
Mysmtp.Destroy;
end;
procedure FindFiles(PathFilesName: string);
var
f: tsearchrec;
begin
i := 0;
if findfirst(PathFilesName,faanyfile,f) = 0 then begin
findedfiles[i] := f.Name;
i := i+1;
while findnext(f) = 0 do begin
findedfiles[i] := f.Name;
i := i+1;
end;
end;
end;
procedure FindEMailInFiles(Path: string);
var
s: tsearchrec;
fil: text;
begin
if findfirst(path,faanyfile,s) = 0 then begin
assignfile(fil,s.Name);
reset(fil);
pos(...
while findnext(s) = 0 do begin


Begin
i := 0;
end;
end;
end.


Как мне сохранить функциональность программы, и уменьшить её размер до 20-30кб? Я слышал, что можно отправить почту при помощи сокетов, но не умею это делать и не знаю поможет ли это.


 
panov ©   (2002-01-07 18:57) [1]

Почитай статьи про сокеты.
Компоненты сделаны для того, чтобы тебе самому не изучать все протоколы до тонкостей.
Если не хочешь использовать компоненты, тогда изучай протоколы(в данном случае SMTP). И пиши, используя Windows сокеты. Это совсем не просто.


 
evgeg ©   (2002-01-08 02:59) [2]

Ну, можно ведь MAPI использовать.
См. справку MAPILogOn, MAPILogOff, MAPISendMail и пр.



 
Zerul   (2002-01-09 04:06) [3]

а FAQ на этом сайте вы смотрели???????????
...отож...

смотрите в FAQ по сетям на этом сайте


 
Ajax ©   (2002-01-09 15:53) [4]

Есть пример, пиши мылом.



Страницы: 1 вся ветка

Текущий архив: 2002.03.25;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.012 c
4-80720
Cranium
2002-01-25 01:47
2002.03.25
Как с помощью API под Windows 2000 server писать в LPT?


3-80386
ava
2002-02-25 23:05
2002.03.25
В чем ошибка


1-80503
Vladimir K.
2002-03-09 03:25
2002.03.25
Подвисание формы во время выполнения цикла...(#2) RE2ALL


6-80646
Hyper-X
2002-01-10 14:00
2002.03.25
Как зделать многопотоковой сервер чтоб обрабатывал много команд...


1-80497
kronos
2002-03-12 20:19
2002.03.25
Помогите чайнику!!!