从 IE 中读取 Cookie 信息

从 IE 中读取 Cookie 信息


我们首先正常登录到系统中,就会在客户端产生正常的 Cookie 信息。
需要引用两个 COM 组件:
1、Micrisoft Internet Controls 1.1,即 SHDocVw。
    这个组件,如果在脚本中运行时,直接导入 c:\Windows\System32\SHDocVw.dll,好像不行,会出错:
bad cli, header rva 0
通过添加引用,编译,会在 bin 下的相应目录中自动创建一个中 Interop.SHDocVw.dll 的文件,再用 #r 命令引用,就能正常使用了。
2、Microsoft.mshtml 7.0.3300.0


let mutable ck = new CookieContainer()


let GetCookieFromIE ( site: string ) =
  let sw = new SHDocVw.ShellWindowsClass()
  (
    [ for i in sw -> i :?> SHDocVw.InternetExplorer ]
    |> Seq.filter( fun i -> i.FullName.ToLower().Contains("iexplore.exe") )
    |> Seq.filter( fun i -> i.LocationURL.ToLower().Contains( site.ToLower() ) )
    |> Seq.map( fun i -> i.Document :?> mshtml.HTMLDocument )
    |> Seq.map( fun i -> i.cookie )
    |> Seq.head
  ).Split(‘;‘)  


let SetCookie site= 
    ( GetCookieFromIE site )
    |> Seq.iter( fun i -> ck.SetCookies(new Uri( site ), i) )


SetCookie "http://site.site.site"

从 IE 中读取 Cookie 信息

上一篇:怎么在浏览器里面调用微信聊天?


下一篇:IOS ShareSDK实现分享——微信分享 本地视频分享