C#清除WebBrowser中Cookie缓存的方法
本文实例讲述了C#清除WebBrowser中Cookie缓存的方法。分享给大家供大家参考,具体如下:
最近用C#写一个程序,用一个窗体中的WebBrowser来登陆网站,但是WebBrowser有cookie缓存,第二次登陆的时候WebBrowser仍然是第一次登陆后的状态,所以要清除WebBrowser的cookie缓存。
在stackoverflow上找到一段可用的代码:
[DllImport("wininet.dll",CharSet=System.Runtime.InteropServices.CharSet.Auto,SetLastError=true)] publicstaticexternboolInternetSetOption(inthInternet,intdwOption,IntPtrlpBuffer,intdwBufferLength); privateunsafevoidSuppressWininetBehavior() { /*SOURCE:http://msdn.microsoft.com/en-us/library/windows/desktop/aa385328%28v=vs.85%29.aspx *INTERNET_OPTION_SUPPRESS_BEHAVIOR(81): *Ageneralpurposeoptionthatisusedtosuppressbehaviorsonaprocess-widebasis. *ThelpBufferparameterofthefunctionmustbeapointertoaDWORDcontainingthespecificbehaviortosuppress. *ThisoptioncannotbequeriedwithInternetQueryOption. * *INTERNET_SUPPRESS_COOKIE_PERSIST(3): *Suppressesthepersistenceofcookies,eveniftheserverhasspecifiedthemaspersistent. *Version:RequiresInternetExplorer8.0orlater. */ intoption=(int)3/*INTERNET_SUPPRESS_COOKIE_PERSIST*/; int*optionPtr=&option; boolsuccess=InternetSetOption(0,81/*INTERNET_OPTION_SUPPRESS_BEHAVIOR*/,newIntPtr(optionPtr),sizeof(int)); if(!success) { MessageBox.Show("Somethingwentwrong!>?"); } }
更多关于C#相关内容感兴趣的读者可查看本站专题:《C#常见控件用法教程》、《C#数据结构与算法教程》、《C#面向对象程序设计入门教程》及《C#程序设计之线程使用技巧总结》
希望本文所述对大家C#程序设计有所帮助。