想要让WEBBROWSER 带COOKIE 运行,一直用InternetSetCookie 先设置了COOKIE 再用WEBBROWSER ,不过这个方法 一个进程用久了,多次调用了之后,有些COOKIE名就会反回FALSE ,设置不成功;而且不能同时开不同的COOKIE.想要直接把COOKIE 值不通过缓存直接附加到WEBBROWSER ,搜了N久也没搜到空想了几个方法,不知道是不是可行:
1.不知道WEBBROWSER是不是调用InternetGetCookie读出COOKIE 的,如果 是,那可不可以拦截这个API ,对数据进行修改呢?
2.重写WEBBROWSER ,在WEBBROWSER 进行读出COOKIE 时进行修改,不过找了很多,都没有看到可以继承有关COOKIE的东东.这两个只是我空想的,不知道有没有哪位大虾有可行的方法,感激不尽
另外,有谁知道360的那个游戏浏览器,可以登录多个小号的实现原理,告知一下

解决方案 »

  1.   

    webbrowser.document.cookie
    设置
      

  2.   

    以上那个 设置无效果, 只能读取 不能设置. MSDN 上说可以设置可是 ,设置了 并没有变化
    不知道 在哪个步骤设置?
      

  3.   


    不建意使用webbrowser干这些事
    webbrowser设置cookie可以用InternetSetCookie这个API函数
    VB里的用法如下(你自己改成C#对应的语法就是了)
    声明方法
    Private Declare Function InternetSetCookie Lib "wininet.dll" Alias "InternetSetCookieA" (ByVal lpszUrlName As String, ByVal lpszCookieName As String, ByVal lpszCookieData As String) As Boolean用法:在用webbrowser控件post之前调用这个函数设置cookie
    比如你要往http://www.baidu.com这个网址post数据,cookie是a=11;b=22;c=33
    就这样写:
    InternetSetCookie "http://www.baidu.com","a","11"
    InternetSetCookie "http://www.baidu.com","b","22"
    InternetSetCookie "http://www.baidu.com","c","33"
    设置完cookie之后再调用webbrowser的Navigate方法POST数据 
      

  4.   

    楼上的,我一直是用你说的方法 ,不过 这个方法很怪 ,就是 运行久了,就会出现有一个 COOKIE NAME 的值 怎么也设置不了,总是返回FALSE ,所以 想改一下