Форум: "Сети";
Текущий архив: 2005.10.09;
Скачать: [xml.tar.bz2];
ВнизidPOP3Server Найти похожие ветки
← →
Scorp123 © (2005-06-12 16:33) [0]Я пытаюсь в своей программе использовать компонент idPOP3Server.
Посмотрел в HELPE, естьть такое свойство у компонента, как наприер Password или Username.
Когда пытаюсь задать какоето значение свойству, например:procedure TForm1.FormCreate(Sender: TObject);
begin
idPOP3Server1.Username := "scorp2005";
end;
end.
Компилятор мне говорит что такого свойства не существует: Undeclared identifier: "Username"
Что я делаю не правильно?
С уважением Владимир.
← →
АНТИСпаммер (2005-06-13 00:52) [1]Это свойство отдельного потока при аутентификации. Оно есть наприме р при событии onCheckUser
← →
Scorp123 © (2005-06-13 01:44) [2]Я внимательно, прочитал о работе с компонентом TNPOP31.
Данный компонент входит в стандартный набор компонентов Delphi5.
Например чтобы получить письмо, необходим примерно следующий код.
NPOP31.DeleteOnRead := FAlse;//После прочтения письмо не удаляетя
NPOP31.Hosr := "mail.chat.ru";//Сервер POP3
NPOP31.Port := 110;//Задаём порт
NPOP31.UserID := "delphi5test";//Логин
NPOP31.Password := "erd88uy";//Пароль
NPOP31.Connect;//Подключаемся
То есть здесь всё предельно просто и ясно. К сожалению подобной информации о компоненте idPOP3Server мне найти не удалось.
Каким образом всё это осуществить с помощью idPOP3Server?
С уважением Владимир.
← →
АНТИСпаммер (2005-06-13 02:36) [3]procedure TFMain.popCheckUser(AThread: TIdPeerThread;
LThread: TIdPOP3ServerThread);
var user,pass,pro:string;
i:integer;
begin
user:=LThread.Username;
//pass:=Crypt(LThread.Password); исправить !!!
pass:=LThread.Password;
accounts.Open;
accounts.First;
for i:=1 to accounts.RecordCount do
begin
if (accounts.FieldByName("Username").AsString=user) and (accounts.FieldByName("Password").AsString=pass) then
begin
if Accounts.FieldByName("Status").AsInteger=0 then // если сервер свободен
begin // разрешаем аутентификацию
Accounts.Edit; // выставляем запрет на последующие аутентификации и получение из Сети
Accounts.FieldByName("Status").AsInteger:=2;
// сервер залочен клиентом
Accounts.Post;
pro:=accounts.FieldByName("id").AsString+IntToStr(2); // при отключении выставляем 0
AThread.Connection.Tag:=StrToint(pro); // id файла
// в событиях смотреть состояние через поиск в таблице по id
LThread.State := Trans;
end;
if Accounts.FieldByName("Status").AsInteger=2 then // если занят клиентом
begin // запрет аутентификации
end;
if Accounts.FieldByName("Status").AsInteger=1 then //если залочено сервером (передавать mailbox is empty)
begin
// НЕ менять запись в таблице при onCheck и onDisconnect
// Accounts.Edit;
pro:=accounts.FieldByName("id").AsString+IntToStr(1); // при отключении выставляем 0
AThread.Connection.Tag:=StrToint(pro);
// AThread.Connection.Tag:=accounts.FieldByName("id").AsString;
LThread.State := Trans; // ВЕРНУТЬ !!!!
end;
end;
Accounts.Next;
end;
Accounts.Close;
end;
← →
Scorp123 © (2005-06-13 11:33) [4]Спасибо за помощ, тоько ещё один вопрос,
accounts это что.
Страницы: 1 вся ветка
Форум: "Сети";
Текущий архив: 2005.10.09;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.012 c