CWebBrowser2 如何去除用户名密码对话框

xueyu人生 2017-11-02 11:06:50
本人点击一个按钮,模拟登陆路由器的参数设置网页,代码如下:

void testwebdlg::OnBnClickedButton1()
{
// TODO: 在此添加控件通知处理程序代码
CComVariant vtUrl;//用以存储打开网址
vtUrl = (L"http://test:123456@192.1.1.100/cnfg.htm");//test和123456是用户名和密码,这个是免密码登陆
CComVariant vtEmpty;
m_web.Navigate2(&vtUrl, &vtEmpty, &vtEmpty, &vtEmpty, &vtEmpty);
}
第一次点击可以直接进入到设置参数界面,无需再次输入用户名和密码,不过等上十分钟左右的时间,貌似登陆失效,我再次单击该按钮,出现如下登陆界面:

请问如何在第一次点击十几分钟后,再次点击模拟登陆,禁止这个界面出现呢?按道理两次走的代码都一样,不应该出现这样的问题,可能是由于缓存的问题吧,求大神解答
...全文
248 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
chen_JADE 2017-11-03
  • 打赏
  • 举报
回复
引用 6 楼 zaokang5603 的回复:
你这样只能防止对话框一直存在的情况,但这里还有个问题就是,第一次点击后,手动关闭对话框,按道理这个对话框对象已经被析构,过一段时间后,再次打开对话框,点击,还会出现登陆界面,你说的方法我用了一个定时器不停刷新就可以了,但关闭对话框在打开对话框的问题依然难解决
我说的这个变量不是在对话框里面创建啊,跟析构没有关系。 建一个全局的变量。判断是否点击两次。
xueyu人生 2017-11-03
  • 打赏
  • 举报
回复
引用 5 楼 chen_JADE 的回复:
可以用一个变量来判断是否是第二次点击啊,点击一次+1,第二次点击就不跑调出登陆界面就可以了。
你这样只能防止对话框一直存在的情况,但这里还有个问题就是,第一次点击后,手动关闭对话框,按道理这个对话框对象已经被析构,过一段时间后,再次打开对话框,点击,还会出现登陆界面,你说的方法我用了一个定时器不停刷新就可以了,但关闭对话框在打开对话框的问题依然难解决
chen_JADE 2017-11-03
  • 打赏
  • 举报
回复
可以用一个变量来判断是否是第二次点击啊,点击一次+1,第二次点击就不跑调出登陆界面就可以了。
xueyu人生 2017-11-02
  • 打赏
  • 举报
回复
引用 1 楼 oyljerry 的回复:
session超时了,你需要重新连接访问URL。
超时后,第二次跑代码,按道理就是从新连接访问URL,但就出现了登录界面,知道如何解决不?
xueyu人生 2017-11-02
  • 打赏
  • 举报
回复
引用 1 楼 oyljerry 的回复:
session超时了,你需要重新连接访问URL。
按道理我直接点击按钮,在跑一遍上边的代码就可以了,但实际第二次点击跑同样代码就出现登陆界面,你知道如何解决不?
oyljerry 2017-11-02
  • 打赏
  • 举报
回复
session超时了,你需要重新连接访问URL。
xueyu人生 2017-11-02
  • 打赏
  • 举报
回复
求大神帮助,此贴不能沉啊

16,473

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧