2013-07-10 3 views
1

Я пытаюсь установить файл cookie из кода на стороне клиента. Я могу сказать, используя прекрасный инструмент IECookiesView или менее прекрасный Блокнот, что файл cookie содержит несколько файлов cookie разных имен для того же домена.Установить несколько cookie IE10 для одного домена?

Однако, если я попробую (из C#) установить cookie с помощью InternetSetCookieEx, то я могу указать только один файл cookie для домена.

Есть ли способ установить несколько файлов cookie?

ответ

1

При использовании InternetSetCookieEx вы добавляете по одному файлу cookie за раз. Вы вызываете его несколько раз, чтобы добавить несколько файлов cookie.

Сказав это, InternetSetCookieEx только модифицирует хранилище cookie пользователя на уровне целостности, на котором он запущен; по умолчанию вкладки интернет-зоны выполняются с низкой целостностью или целостностью AppContainer, и, как следствие, любые файлы cookie, установленные приложением, запущенным на MediumIL, будут проигнорированы этим процессом.

Для получения дополнительной информации см Q10 здесь: http://blogs.msdn.com/b/ieinternals/archive/2009/08/20/wininet-ie-cookie-internals-faq.aspx и читать http://blogs.msdn.com/b/ieinternals/archive/2012/03/23/understanding-ie10-enhanced-protected-mode-network-security-addons-cookies-metro-desktop.aspx

+0

Вы на самом деле это сделали? Я пробовал называть его несколько раз с именованными куки-файлами, и только последний из них присутствует в результирующем файле (как показано в IE или показан в IECookiesView). –

+0

Я не просто попробовал, я также пересмотрел код рассматриваемого кода WinINET. Я не знаю, что вы подразумеваете под «Результирующим файлом»; правильный способ проверить, установлен ли файл cookie, либо вызвать InternetGetCookie, либо выдать запрос и посмотреть заголовки с помощью Fiddler или аналогичного инструмента. Не помните, чтобы указать EXPIRES, чтобы ваш файл cookie был постоянным файлом cookie, а не файлом cookie сеанса? – EricLaw

0

Я думаю, что проблема у меня была то, что я пропустил от замыкающей точки с запятой на первое печенье. Это означало, что последующие попытки установить куки были проигнорированы.

Смежные вопросы