是否可以在Windows窗体中“沙盒化”IE?
假设我在Windows窗体中有一个webbrowsercontrol,用户从表单登录到一个安全的站点。 如果用户单独打开IE,它也会显示它们已登录。是否可以隔离Windows窗体的IE实例?
WebBrowser控件构建在WebBrowser ActiveX之上,后者位于WinInet之上。 因此,您应该能够通过WinInet API影响其行为。
您可以尝试调用InternetSetOption
WinInet API来设置INTERNET_OPTION_END_BROWSER_SESSION
选项以结束当前会话并启动新会话。 要确保调用仅影响当前进程,请使用INTERNET_HANDLE_TYPE_INTERNET
句柄。
你没有提到你的版本; 行为从IE7更改为IE8。
在IE7和IE6中,您可以打开多个窗口并在一个站点上使用不同的用户ID进行身份validation。
在IE8中,您的会话状态在浏览器会话中共享。
您可以在隐私模式下打开IE; 这应该允许会话沙箱。
IE8具有命令行开关-nomerge
,它使用新会话启动浏览器
当您登录某个站点时,通常会从服务器上获取一个cookie,标记您已“登录”(非常简单……)。 我的猜测是删除cookie。 看这里:
如何从windows.form中删除Cookies?
上述就是C#学习教程:是否可以在Windows窗体中“沙盒化”IE?分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/1007362.html