Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|

17.12.2008, 20:46
|
|
Участник форума
Регистрация: 06.06.2008
Сообщений: 171
Провел на форуме: 1085601
Репутация:
110
|
|
application.processmessages против sleep не поможет)
если уж со sleep то в отдельном потоке делать
а если по таймеру, то лучше так:
Код:
with TIdSMTP.Create do begin
AuthType := atDefault;
Username:='5465446';
Password:='6565566565';
Host:='smtp.mail.ru';
Connect();
a:=formatdatetime('hh:mm',now);
msg:=TIdMessage.Create(self);
Msg.Subject:='ip';
Msg.Recipients.EMailAddresses:='55665656';
Msg.From.Address:='556454';
Msg.Body.Add(a+'время '+GetLocalip+' айпишник') ;
if Connected=True then Send(Msg);
Disconnect;
Free;
end;//with
так как если idsmtp еще не завершил работу, а пошел новый заход таймера, была бы ошибка или не то, что ожидаешь, а тут старый удаляется, а новый создается
NeXArmAor, sleep в SysUtils
Последний раз редактировалось crystalbit; 17.12.2008 в 20:48..
|
|
|

17.12.2008, 20:53
|
|
Новичок
Регистрация: 14.11.2007
Сообщений: 11
Провел на форуме: 16465
Репутация:
0
|
|
Вот что подключено в моём проекте...
Код:
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, WinSock , Registry, StdCtrls, IdBaseComponent, IdComponent,
IdTCPConnection, IdTCPClient, IdExplicitTLSClientServerBase, IdMessageClient,
IdSMTPBase, IdSMTP, IdPOP3, IdMessage, IdCustomTCPServer, IdTCPServer,
IdCmdTCPServer, IdSMTPServer, ExtCtrls;
|
|
|

17.12.2008, 20:54
|
|
Участник форума
Регистрация: 06.06.2008
Сообщений: 171
Провел на форуме: 1085601
Репутация:
110
|
|
пиши SysUtils.Sleep
ошибку в студию
|
|
|

17.12.2008, 20:55
|
|
Участник форума
Регистрация: 21.04.2007
Сообщений: 289
Провел на форуме: 4612647
Репутация:
368
|
|
NeXArmAor, sleep в SysUtils
тогда почему у него Sleep не пашет?
ошибку он показал. юзай первую ветку
[DCC Error] Unit3.pas(72): E2029 Declaration expected but identifier 'Sleep' found
это не связанно с самой функцией Sleep, а вот с этим
begin
IdSMTP1.AuthType := atDefault;
IdSMTP1.Username:='5465446';
IdSMTP1.Password:='6565566565';
IdSMTP1.Host:='smtp.mail.ru';
IdSMTP1.Connect();
begin
send: //ты метку убрал зачем
a:=formatdatetime('hh:mm',now);
зачем два begin
Последний раз редактировалось NeXArmAor; 17.12.2008 в 20:57..
|
|
|

17.12.2008, 21:01
|
|
Новичок
Регистрация: 14.11.2007
Сообщений: 11
Провел на форуме: 16465
Репутация:
0
|
|
Без того beginа если его удалит будет вылазить ошибка в
end;
IdSMTP1.Disconnect; в этом месте.
Если даже убрать его то ошибка остаётся
Так ошибка не в слипе а в синтаксесе но где..там с ендами замудрил что то)
Последний раз редактировалось Karacь; 17.12.2008 в 21:06..
|
|
|

17.12.2008, 21:11
|
|
Новичок
Регистрация: 14.11.2007
Сообщений: 11
Провел на форуме: 16465
Репутация:
0
|
|
Вот разобрался с endami всё запустилось =)
Код:
procedure TForm3.FormCreate(Sender: TObject);
label send;
var
msg:TIdMessage;
a:string;
begin
IdSMTP1.AuthType := atDefault;
IdSMTP1.Username:='5465446';
IdSMTP1.Password:='6565566565';
IdSMTP1.Host:='smtp.mail.ru';
IdSMTP1.Connect();
//этот begin не нужен убери его
send: //ты метку убрал зачем
a:=formatdatetime('hh:mm',now);
msg:=TIdMessage.Create(self);
Msg.Subject:='ip';
Msg.Recipients.EMailAddresses:='55665656';
Msg.From.Address:='556454';
Msg.Body.Add(a+'время '+GetLocalip+' айпишник') ;
if IdSMTP1.Connected=True then IdSMTP1.Send(Msg);
IdSMTP1.Disconnect;
Sleep(30000) ;
goto send;
end;
end.
ps Маленький вопрос сколько и в чём измеряется время в delphi просто в таймере как я понел 1 сек = 1000 .
А в слипе так же?
|
|
|

17.12.2008, 21:12
|
|
Участник форума
Регистрация: 21.04.2007
Сообщений: 289
Провел на форуме: 4612647
Репутация:
368
|
|
Сообщение от Karacь
Вот разобрался с endami всё запустилось =)
Код:
procedure TForm3.FormCreate(Sender: TObject);
label send;
var
msg:TIdMessage;
a:string;
begin
IdSMTP1.AuthType := atDefault;
IdSMTP1.Username:='5465446';
IdSMTP1.Password:='6565566565';
IdSMTP1.Host:='smtp.mail.ru';
IdSMTP1.Connect();
//этот begin не нужен убери его
send: //ты метку убрал зачем
a:=formatdatetime('hh:mm',now);
msg:=TIdMessage.Create(self);
Msg.Subject:='ip';
Msg.Recipients.EMailAddresses:='55665656';
Msg.From.Address:='556454';
Msg.Body.Add(a+'время '+GetLocalip+' айпишник') ;
if IdSMTP1.Connected=True then IdSMTP1.Send(Msg);
IdSMTP1.Disconnect;
Sleep(30000) ;
goto send;
end;
end.
ps Маленький вопрос сколько и в чём измеряется время в delphi просто в таймере как я понел 1 сек = 1000 .
А в слипе так же?
Да
|
|
|

17.12.2008, 21:20
|
|
Новичок
Регистрация: 14.11.2007
Сообщений: 11
Провел на форуме: 16465
Репутация:
0
|
|
Мда =) после не многочисленных проверок)) Повторно отправить мейл он отказывается... первый раз всё отправляется при запуске но формы не видно...и потом так и висит де то...
|
|
|

17.12.2008, 21:37
|
|
Участник форума
Регистрация: 06.06.2008
Сообщений: 171
Провел на форуме: 1085601
Репутация:
110
|
|
делай как я сказал и он отправит повторно и при ошибке отправки
|
|
|

17.12.2008, 21:42
|
|
Новичок
Регистрация: 14.11.2007
Сообщений: 11
Провел на форуме: 16465
Репутация:
0
|
|
Твоя форма для таймера?
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|