使用c#

时间:2015-06-03 12:34:04

标签: c# internet-explorer cookies setcookie

我在尝试将我在.NET应用程序中收到的cookie保存到IE cookie商店时遇到了一些麻烦。

我有一个请求(带有其他参数,未显示)

HttpWebRequest request = HttpWebRequest.Create(RequestString) as HttpWebRequest;

响应得到了cookie。

[DllImport("wininet.dll", CallingConvention = CallingConvention.Cdecl)]
        static extern bool InternetSetCookie(string UrlName, string CookieName, string CookieData, uint dwFlags, IntPtr dwReserved);

HttpWebResponse response = (HttpWebResponse)request.GetResponse();

                    foreach (Cookie cookie in response.Cookies)
                    {
                        InternetSetCookie(cookie.Domain, cookie.Name, cookie.Value, 2147484672, IntPtr.Zero);
                    }

我试图关注Writing cookies from CookieContainer to the IE cookie store,但我无法让InternetSetCookie工作。它似乎无法在本地创建cookie。

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

我弄清楚了......看起来这只是设置会话cookie。 此外,必须有一个有效的网址。

InternetSetCookie(ValidURL, cookie.Name, cookie.Value);

InternetSetCookie是bool,它返回'false',当我设置一个有效的URL时,它开始返回'True',这似乎对我有效。