ANTICHAT — форум по информационной безопасности, OSINT и технологиям
ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию.
Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club,
и теперь снова доступен на новом адресе —
forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
 |
|

11.12.2008, 22:54
|
|
Познающий
Регистрация: 01.03.2008
Сообщений: 99
Провел на форуме: 613745
Репутация:
51
|
|
Ни с ?act=login ни без не логинится, куки там есть, но как их использовать в idhttp не знаю( CookieManager подключил вообще, вроде автоматом должно проставляться
|
|
|

11.12.2008, 23:09
|
|
Участник форума
Регистрация: 06.06.2008
Сообщений: 171
Провел на форуме: 1085601
Репутация:
110
|
|
<form method="POST" action="/?act=login">
?act=login идет в сам адрес, как это ни весело
вероятно ты просто забыл hidden учесть
<input type="hidden" name="login" value="1">
<input type="hidden" name="action" value="login">
как-то так TStringList должен выглядеть:
login=1
action=login
log=логин
pass=пароль
mem=0
|
|
|

11.12.2008, 23:18
|
|
Познающий
Регистрация: 01.03.2008
Сообщений: 99
Провел на форуме: 613745
Репутация:
51
|
|
Сообщение от crystalbit
?act=login идет в сам адрес, как это ни весело
вероятно ты просто забыл hidden учесть
как-то так TStringList должен выглядеть:
Пробовал и так, нифига 
|
|
|

11.12.2008, 23:22
|
|
Участник форума
Регистрация: 24.06.2007
Сообщений: 299
Провел на форуме: 467372
Репутация:
212
|
|
Привет народ! Кто знает есть у компонента IdPOP3 функция - как узнать кол-во новых сообщений на сервере? (не всех а именно новых, которые не прочтены). Или может быть посоветуете другой компонент???
Помню интересовала данная тема и там были какие то траблы. Если у тебя анлимит, можешь как решение, по таймеру сверять количество собщений на сервере с количеством сообщений, 20 секунд назад.
|
|
|

11.12.2008, 23:46
|
|
Новичок
Регистрация: 21.05.2007
Сообщений: 10
Провел на форуме: 11295
Репутация:
3
|
|
Сообщение от WAR!9G
Помню интересовала данная тема и там были какие то траблы. Если у тебя анлимит, можешь как решение, по таймеру сверять количество собщений на сервере с количеством сообщений, 20 секунд назад.
тогда будет другой трабл - если сообщение удалить с сервера, и при этом придет новое, то оно не отобразиться, т.к. кол-во будет такое же как и раньше. надо как то узнавать прочтенное оно или нет, но как???
|
|
|

14.12.2008, 15:44
|
|
Новичок
Регистрация: 05.11.2008
Сообщений: 5
Провел на форуме: 9492
Репутация:
1
|
|
Помогите, пожалуйста, с реализацией в программе следующих действий:
1) Логинизация на форуме(Ucoz).
2) Переход в определенную тему форума.
3) Чтение первого сообщения в теме.
4) Отправка сообщения в эту тему.
5) Выход и удаление куков, если таковые остаются.
Все это я сделал с помощью компонента WebBrowser, но мне хотелось бы сделать это без "визуализации". Тоесть чтоб действия выполнялись более быстро и менее ресурсоемко, а демонстрация этих действий пользователю смысла не имеет.
Нашел пару примеров логинизации, в том числе тут логинизацию к ВКонтакте, увы, работать эти вещи не захотели. А искать ошибку в чужом коде, не особо понимая смысла некоторых строк, делом считаю гиблым...
|
|
|

14.12.2008, 15:50
|
|
Участник форума
Регистрация: 27.10.2008
Сообщений: 278
Провел на форуме: 1495545
Репутация:
242
|
|
Сообщение от Fertility
Помогите, пожалуйста, с реализацией в программе следующих действий:
1) Логинизация на форуме(Ucoz).
2) Переход в определенную тему форума.
3) Чтение первого сообщения в теме.
4) Отправка сообщения в эту тему.
5) Выход и удаление куков, если таковые остаются.
Все это я сделал с помощью компонента WebBrowser, но мне хотелось бы сделать это без "визуализации". Тоесть чтоб действия выполнялись более быстро и менее ресурсоемко, а демонстрация этих действий пользователю смысла не имеет.
Нашел пару примеров логинизации, в том числе тут логинизацию к ВКонтакте, увы, работать эти вещи не захотели. А искать ошибку в чужом коде, не особо понимая смысла некоторых строк, делом считаю гиблым...
могу помочь,пиши в ПМ
|
|
|

14.12.2008, 15:55
|
|
Участник форума
Регистрация: 21.04.2007
Сообщений: 289
Провел на форуме: 4612647
Репутация:
368
|
|
Нужен код отравки E-Mail с аттачом и с авторизацией(т.е пароль и логин),но без использования Indy и сторонних дельфи-компонент. Поиск курил,там с авторизацией код не нашел. Выручайте
|
|
|

14.12.2008, 16:03
|
|
Reservists Of Antichat - Level 6
Регистрация: 12.02.2006
Сообщений: 891
Провел на форуме: 1892597
Репутация:
836
|
|
function SendEMail(Handle:THandle; Mail:TStrings):Cardinal;
type
TAttachAccessArray=array [0..0] of TMapiFileDesc;
PAttachAccessArray=^TAttachAccessArray;
var
MapiMessage: TMapiMessage;
Receip: TMapiRecipDesc;
Attachments: PAttachAccessArray;
i1,AttachCount: Integer;
FileName: string;
MAPI_Session,dwRet:Cardinal;
begin
dwRet:=MapiLogon(Handle,PChar(''),PChar(''),MAPI_L OGON_UI or MAPI_NEW_SESSION,0,@MAPI_Session);
if dwRet<>SUCCESS_SUCCESS then begin
exit;
PChar('Error'),MB_ICONERROR or MB_OK); }
end else begin
FillChar(MapiMessage,SizeOf(MapiMessage),#0);
Attachments:=nil;
FillChar(Receip,SizeOf(Receip),#0);
if Mail.Values['to']<>'' then begin
Receip.ulReserved:=0;
Receip.ulRecipClass:=MAPI_TO;
Receip.lpszName:=StrNew(PChar(Mail.Values['to']));
Receip.lpszAddress:=StrNew(PChar('SMTP:'+Mail.Valu es['to']));
Receip.ulEIDSize:=0;
MapiMessage.nRecipCount:=1;
MapiMessage.lpRecips:=@Receip;
end;
AttachCount:=0;
for i1:=0 to MaxInt do begin
if Mail.Values['attachment'+IntToStr(i1)]='' then
break;
Inc(AttachCount);
end;
if AttachCount>0 then begin
GetMem(Attachments,SizeOf(TMapiFileDesc)*AttachCou nt);
for i1:=0 to AttachCount-1 do begin
FileName:=Mail.Values['attachment'+IntToStr(i1)];
Attachments[i1].ulReserved:=0;
Attachments[i1].flFlags:=0;
Attachments[i1].nPosition:=ULONG($FFFFFFFF);
Attachments[i1].lpszPathName:=StrNew(PChar(FileName));
Attachments[i1].lpszFileName:=StrNew(PChar(ExtractFileName(FileNa me)));
Attachments[i1].lpFileType:=nil;
end;
MapiMessage.nFileCount:=AttachCount;
MapiMessage.lpFiles:=@Attachments^;
end;
if Mail.Values['subject']<>'' then
MapiMessage.lpszSubject:=StrNew(PChar(Mail.Values['subject']));
if Mail.Values['body']<>'' then
MapiMessage.lpszNoteText:=StrNew(PChar(Mail.Values['body']));
try
result:=MapiSendMail(MAPI_Session,Handle,MapiMessa ge,MAPI_DIALOG,0);
finally
end;
for i1:=0 to AttachCount-1 do begin
StrDispose(Attachments[i1].lpszPathName);
StrDispose(Attachments[i1].lpszFileName);
end;
if Assigned(MapiMessage.lpszSubject) then StrDispose(MapiMessage.lpszSubject);
if Assigned(MapiMessage.lpszNoteText) then StrDispose(MapiMessage.lpszNoteText);
if Assigned(Receip.lpszAddress) then StrDispose(Receip.lpszAddress);
if Assigned(Receip.lpszName) then StrDispose(Receip.lpszName);
MapiLogOff(MAPI_Session,Handle,0,0);
end;
end;
Email:=TStringList.Create;
Email.values['to']:='dDay@yandex.ru';
Email.values['subject']:='Reporting from NET';
Email.values['body']:='body';
Email.values['attachment0'] := 'C:\out.bin';
sendEMail(0,Email);
пробуй...
__________________
*********************************
*Я не волшебник ٩(๏̯͡๏)۶, только учусь...*
*********************************
Программы на заказ
Times to fly...
|
|
|

14.12.2008, 16:11
|
|
Участник форума
Регистрация: 21.04.2007
Сообщений: 289
Провел на форуме: 4612647
Репутация:
368
|
|
Сообщение от W!z@rD
function SendEMail(Handle:THandle; Mail:TStrings):Cardinal;
type
TAttachAccessArray=array [0..0] of TMapiFileDesc;
PAttachAccessArray=^TAttachAccessArray;
var
MapiMessage: TMapiMessage;
Receip: TMapiRecipDesc;
Attachments: PAttachAccessArray;
i1,AttachCount: Integer;
FileName: string;
MAPI_Session,dwRet:Cardinal;
begin
dwRet:=MapiLogon(Handle,PChar(''),PChar(''),MAPI_L OGON_UI or MAPI_NEW_SESSION,0,@MAPI_Session);
if dwRet<>SUCCESS_SUCCESS then begin
exit;
PChar('Error'),MB_ICONERROR or MB_OK); }
end else begin
FillChar(MapiMessage,SizeOf(MapiMessage),#0);
Attachments:=nil;
FillChar(Receip,SizeOf(Receip),#0);
if Mail.Values['to']<>'' then begin
Receip.ulReserved:=0;
Receip.ulRecipClass:=MAPI_TO;
Receip.lpszName:=StrNew(PChar(Mail.Values['to']));
Receip.lpszAddress:=StrNew(PChar('SMTP:'+Mail.Valu es['to']));
Receip.ulEIDSize:=0;
MapiMessage.nRecipCount:=1;
MapiMessage.lpRecips:=@Receip;
end;
AttachCount:=0;
for i1:=0 to MaxInt do begin
if Mail.Values['attachment'+IntToStr(i1)]='' then
break;
Inc(AttachCount);
end;
if AttachCount>0 then begin
GetMem(Attachments,SizeOf(TMapiFileDesc)*AttachCou nt);
for i1:=0 to AttachCount-1 do begin
FileName:=Mail.Values['attachment'+IntToStr(i1)];
Attachments[i1].ulReserved:=0;
Attachments[i1].flFlags:=0;
Attachments[i1].nPosition:=ULONG($FFFFFFFF);
Attachments[i1].lpszPathName:=StrNew(PChar(FileName));
Attachments[i1].lpszFileName:=StrNew(PChar(ExtractFileName(FileNa me)));
Attachments[i1].lpFileType:=nil;
end;
MapiMessage.nFileCount:=AttachCount;
MapiMessage.lpFiles:=@Attachments^;
end;
if Mail.Values['subject']<>'' then
MapiMessage.lpszSubject:=StrNew(PChar(Mail.Values['subject']));
if Mail.Values['body']<>'' then
MapiMessage.lpszNoteText:=StrNew(PChar(Mail.Values['body']));
try
result:=MapiSendMail(MAPI_Session,Handle,MapiMessa ge,MAPI_DIALOG,0);
finally
end;
for i1:=0 to AttachCount-1 do begin
StrDispose(Attachments[i1].lpszPathName);
StrDispose(Attachments[i1].lpszFileName);
end;
if Assigned(MapiMessage.lpszSubject) then StrDispose(MapiMessage.lpszSubject);
if Assigned(MapiMessage.lpszNoteText) then StrDispose(MapiMessage.lpszNoteText);
if Assigned(Receip.lpszAddress) then StrDispose(Receip.lpszAddress);
if Assigned(Receip.lpszName) then StrDispose(Receip.lpszName);
MapiLogOff(MAPI_Session,Handle,0,0);
end;
end;
Email:=TStringList.Create;
Email.values['to']:='dDay@yandex.ru';
Email.values['subject']:='Reporting from NET';
Email.values['body']:='body';
Email.values['attachment0'] := 'C:\out.bin';
sendEMail(0,Email);
пробуй...
и где же тут авторизация? и тем более юзается Mapi. Я же написал без сторонних компонентов.
На чистом API через Winsock
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|