![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Где хранятся cookie в TWebBrowser [D5, D6, D7, Win95/98, WinXP]
WebSQLNeeder © (2005-10-31 10:56:00)И возможно ли определить свою директорию для куки?
WebSqlNeederr (2006-04-30 13:12:00) [1]Вопрос остается актуальным. Наверняка ведь как то можно заставить мой ТВебБровзер хранить куки в своей директории, ведь можно же изменить для моего клиента прокси то почему нельзя куки сохранять там где мне хочется ?
Кто то уже разобрался в этой проблеме?
URALS (2006-02-03 13:13:00) [2]Я понял, что ты хочешь, но Webbrowser не может это сделать, исполльзуй компоненты INDY(IDHTTP и IDCOOKIEMANAGER), ищи инфу в нете, разбирайся с помощью них можно все сделать, а Webbrowser он только отображение IE 6.
WebSQLNeeder (2005-11-05 13:56:00) [3]Спасибо, конечно за Procedure ClearCache - но она я так понял удаляет кеш и в ИЕ, а мне хотелось бы что бы только в WebBrowser.
Возможно ли как то реализовать что бы очищались кеш и куки только моего WebBrowser ??
VENOM (2005-11-04 20:34:00) [4]Юзай, студент:
Procedure ClearCache;
Var
lpEntryInfo : PInternetCacheEntryInfo;
hCacheDir : LongWord;
dwEntrySize : LongWord;
dwLastError : LongWord;
Begin
dwEntrySize := 0;
FindFirstUrlCacheEntry( NIL, TInternetCacheEntryInfo( NIL^ ), dwEntrySize );
GetMem( lpEntryInfo, dwEntrySize );
hCacheDir := FindFirstUrlCacheEntry( NIL, lpEntryInfo^, dwEntrySize );
If ( hCacheDir <> 0 ) Then
DeleteUrlCacheEntry( lpEntryInfo^.lpszSourceUrlName );
FreeMem( lpEntryInfo );
Repeat
dwEntrySize := 0;
FindNextUrlCacheEntry( hCacheDir, TInternetCacheEntryInfo( NIL^ ), dwEntrySize );
dwLastError := GetLastError();
If ( GetLastError = ERROR_INSUFFICIENT_BUFFER ) Then Begin
GetMem( lpEntryInfo, dwEntrySize );
If ( FindNextUrlCacheEntry( hCacheDir, lpEntryInfo^, dwEntrySize ) ) Then
DeleteUrlCacheEntry( lpEntryInfo^.lpszSourceUrlName );
FreeMem(lpEntryInfo);
End;
Until ( dwLastError = ERROR_NO_MORE_ITEMS );
End;
WebSQLNeeder (2005-11-04 19:35:00) [5]Что то ничего не находится ...
Может кто то знает готовый ответ?
WebSQLNeeder (2005-10-31 13:14:00) [6]Та ну это опять таки не самый лучший способ (это про учетные записи), ну это в ХР еще пройдет, а в 98 то никак ...
WinInet.pas - пороюсь поищу здесь ...
А вообще то я думал, что вопрос кукизов в веброузере это вопрос тривиальный и решался уже много раз, но вот уже несколько дней и на нескольких страницах поиска Яндекса ответа найти не могу :(
SergP. (2005-10-31 12:53:00) [7]
> Ну вот как аналогично есть пример использования прокси только
> для моего WebBrowser (раньше я тоже думал что это через
> реестр нужно менять и всякая такая чушь) так вот может как
> то можно и для отдельного ВБ сделать свою директорию для
> кукизов??
Понятно... НЕсколько єкземпляров проги запускать с разными куками...
ИМХО проще только сделать на компе несколько учетных записей и запускать каждый экземпляр от имени другого юзера. А у разных юзеров куки находятся в разных папках...
Ihor Osov'yak (2005-10-31 12:32:00) [8]Не совсем понятно, зачем все это нужно..
Если есть необходимость выборочно почистить куки определенного сайта - то обратите внимание на WinInet.pas, а более конкретно на FindFirstUrlCacheEntryEx, FindNextUrlCacheEntryEx, DeleteUrlCacheEntry. Спросив гуглю по этим ключевым словам и добавив слово Delphi можно найти готовіе решения.
Если же есть желание ну совсем гибко куки управлять, то можете посмотреть в сторону перехвата IHtmlDocument2.GetCookie
Но это уже из области хака, возможно, не совсем чистого.. Да и гугля не сию тему ничего не скажет.
WebSQLNeeder (2005-10-31 11:58:00) [9]Не, через реестр не пойдет - тогда и для ИЕ будет изменен путь к кукам. А мне нужно только исключительно для моего экзмемпляра ТВебБровзера.
Ну вот как аналогично есть пример использования прокси только для моего WebBrowser (раньше я тоже думал что это через реестр нужно менять и всякая такая чушь) так вот может как то можно и для отдельного ВБ сделать свою директорию для кукизов??
SergP. (2005-10-31 11:24:00) [10]
> WebSQLNeeder © (31.10.05 11:10) [2]
> В смысле одновременно от разных пользователей? На разных
> компьютерах что ли? Не круто ли будет ? :)
Зачем на разных... Можно и на одном... :-)
Просто на компе должно быть несколько учетных записей.
[ИМХО]
А путь к кукам хранится в реестре... Поменять можно. Но поможет ли это тебе? Вобщем все зависит от того - для чего тебе это нужно...
[/ИМХО]
А для чего тебе понадобилось менять директорию с куками?
WebSQLNeeder (2005-10-31 11:10:00) [11]В смысле одновременно от разных пользователей? На разных компьютерах что ли? Не круто ли будет ? :)
А вообще как то же должно быть возможно переопределить свои директории для кукизов и кеша ведь ИЕ то такая же прога и как то формирует этот путь, значит и Делфи может сформировать свой путь ...
SergP. (2005-10-31 11:06:00) [12]
> Где хранятся cookie в TWebBrowser
Там же где и у эксплорера.
> И возможно ли определить свою директорию для куки?
х/з. По крайней мере не встречал чтобы можно было....
А зачем?
Если смысл в том чтобы работать одновременно с несколькими у каждого из которых свои куки - то ИМХО для этого есть более простое решение -Запускать несколько приложений от разных пользователей...