![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Работа с Cookies Internet Explorer [D7, XP]
Canya © (2009-07-16 16:36:00)Здравствуйте!!! Подскажите как Удалить куки IE.
Попробывал вот такой код, но ни чего неудаляется
function GetUserName:string;
{Определение имени пользователя}
var
Buffer: array[0..MAX_PATH] of Char;
sz:DWord;
begin
sz:=MAX_PATH-1;
if windows.GetUserName(Buffer,sz)
then begin
if sz>0 then dec(sz);
SetString(Result,Buffer,sz);
end else begin
Result:='Error '+inttostr(GetLastError);
end;
end;
procedure TForm1.FormCreate(Sender: TObject); var SearchRec: TSearchRec;
begin
//webbrowser1.Navigate(' http://postoy-site.narod.ru/');
s:=PChar('C:\Documents and Settings\'+GetUserName+'\Cookies');
ShellExecute(Handle,'open',s,nil,nil,SW_SHOW);
IdCookieManager1.Destroy;
label1.Caption:=GetUserName;
if FindFirst(s+'*.txt', faAnyFile, SearchRec) <> 0 then
repeat
DeleteFile(ExpandFileName(SearchRec.Name));
until
FindNext(SearchRec) <> 0;
FindClose(SearchRec);
end;
Плохиш (2009-07-21 11:02:00) [1]
> Canya (17.07.09 19:38) [9]
>
> Дак Ищет то FindFirst и FindNext. А ExpandFileName возвращает
> полное имя файла (с абсолютным путем) по неполному имени.
>
Можно цитату из справки с подтверждением этого бреда?
brother (2009-07-21 09:50:00) [2]единственное, что я не понял - зачем удалять все куки пользователя?
Canya (2009-07-18 18:34:00) [3]
function DeleteUserCookies: Boolean;
var
UserProfileDirectory: ShortString;
SR: TSearchRec;
begin
Byte(UserProfileDirectory[0]):=GetEnvironmentVariable('USERPROFILE',PChar(@UserP rofileDirectory[1]), 255);
if FindFirst(UserProfileDirectory + '\Cookies\*.txt', faAnyFile, SR) = 0 then
begin
repeat
if (SR.Attr <> faDirectory) then DeleteFile(PChar(UserProfileDirectory + '\Cookies\' + SR.Name));
until FindNext(SR) <> 0;
FindClose(SR);
result:=true;
end
else result:=false;
end;
Я сообразил все. Спасибо за помощь
Canya (2009-07-18 17:23:00) [4]
s:=PChar('C:\Documents and Settings\'+GetUserName+'\Cookies\');
if FindFirst('*.txt', faAnyFile, SearchRec) <> 0 then
repeat
DeleteFile(ExpandFileName(s+SearchRec.Name));
until
FindNext(SearchRec) <> 0;
FindClose(SearchRec);
Такой код тоже не удаляет
Игорь Шевченко (2009-07-17 20:40:00) [5]
> А ExpandFileName возвращает полное имя файла (с абсолютным
> путем) по неполному имени
deletefile(s+SearchRec.Name);
Canya (2009-07-17 19:38:00) [6]Дак Ищет то FindFirst и FindNext. А ExpandFileName возвращает полное имя файла (с абсолютным путем) по неполному имени. Но я не пойму почему не работает. Подскажите, пожалуйста
Плохиш (2009-07-17 15:15:00) [7]
> Canya (17.07.09 13:15) [7]
>
>
> > Справку по функции ExpandFileName уже изучил?
>
> Я понимаю в скрытых папках не ищет это функция?
Эта функция ничего не ищет...
Canya (2009-07-17 13:15:00) [8]
> Справку по функции ExpandFileName уже изучил?
Я понимаю в скрытых папках не ищет это функция?
Плохиш (2009-07-17 13:09:00) [9]
> Canya (17.07.09 13:04) [4]
Справку по функцииExpandFileNameуже изучил?
Canya (2009-07-17 13:08:00) [10]
> s:=PChar('C:\Documents and Settings\'+GetUserName+'\Cookies\');
>
> if FindFirst(s+'*.txt', faAnyFile, SearchRec) <> 0 then
> repeat
> DeleteFile(ExpandFileName(SearchRec.Name));
> until
> FindNext(SearchRec) <> 0;
> FindClose(SearchRec);
> end;
Забыл написать, что Обрабатывается нажатием на Button
Canya (2009-07-17 13:04:00) [11]Я просто пробовал разные способы.
Вот код которым я хотел удалить все текстовые файлы из папки Cookies:
function GetUserName:string;
{Определение имени пользователя}
var
Buffer: array[0..MAX_PATH] of Char;
sz:DWord;
begin
sz:=MAX_PATH-1;
if windows.GetUserName(Buffer,sz)
then begin
if sz>0 then dec(sz);
SetString(Result,Buffer,sz);
end else begin
Result:='Error '+inttostr(GetLastError);
end;
end;
s:=PChar('C:\Documents and Settings\'+GetUserName+'\Cookies\');
if FindFirst(s+'*.txt', faAnyFile, SearchRec) <> 0 then
repeat
DeleteFile(ExpandFileName(SearchRec.Name));
until
FindNext(SearchRec) <> 0;
FindClose(SearchRec);
end;
подскажите почему не удаляются файлы?
brother (2009-07-17 06:25:00) [12]> '*.txt'
там еще index.dat есть...
brother (2009-07-17 06:24:00) [13]> но ни чего неудаляется
аргументируй...
palva (2009-07-16 21:59:00) [14]
> ShellExecute(Handle,'open',s,nil,nil,SW_SHOW);
> IdCookieManager1.Destroy;
Расскажите, что делают эти строчки.
Ваша программа удаляет файлы из директории
'C:\Documents and Settings\'+GetUserName+'\Cookies'
И что, файлы не удаляются?