如何让在iframe框架内的按钮模拟HTA窗口的关闭功能? [复制链接]

简介: 从用HTA伪装客户端程序已经有好些时日了,虽说可以最大限度的去定义自己的操作界面,但是顶上的名称栏总规不是太完美,而且,如果从HTA窗口的关闭按钮关闭窗口的话,根本就无法让程序执行退出的步骤,所以往往会让一个用户在一个时间段内无法继续登录。
从用HTA伪装客户端程序已经有好些时日了,虽说可以最大限度的去定义自己的操作界面,但是顶上的名称栏总规不是太完美,而且,如果从HTA窗口的关闭按钮关闭窗口的话,根本就无法让程序执行退出的步骤,所以往往会让一个用户在一个时间段内无法继续登录。

后来一次偶然的机会,发现在HTA中使用iframe载入其它文件,那么这个文件在提交时的Session是无法保存的,在网上到处乱找,结果在一国外的博客上找到了些相关的内容。(事实上是GOOGLE翻译的译文中有相关的介绍,好在那次译文没有误导……)通过自定义HTTP头可以达到跨域的目的:HTTP头:P3P,HTTP头值:CP= CAO PSA OUR。这么一来你可以在iframe框架中加入如:记住用户名之类的功能。

接下来问题又来了:如果想退出程序,那么得分两步,先是执行iframe中的退出,接着再关闭HTA窗口。如果直接关闭HTA窗口,那么无法达到退出当前帐户的目的,一在段时间内会导致这个帐户无法登录。之前虽然对这问题一直耿耿于怀,可也没办法,将就着就算了。前些天准备伪装另一个客户端的时候又找了些相关的资料,结果还是白高兴一场。
可以实现从iframe框架内退出程序并关闭窗口,代码如下:
第一步:得在HTA中的iframe加入application="yes"
代码:<iframe frameborder="0" id="client" name="client" scrolling="no" src=" "  application="yes"></iframe
第二步:在iframe载入的页面中加入:
< %
a=Request.QueryString("a")
%>
< a href="?a=1">退出</a>
< %
IF a=1 Then
response.write("<script language=javascript>")
response.write("alert('我敢保证,你现在用的是超链接退出');")
response.write("top.window.close();")
response.write("</script>")
End IF
%>

<input type="button" value="退出" onClick="javascript:top.window.close();">
两种都行,但第二种如果要实现交互得调用JS函数,而不是单纯的关闭。

好了,这么一来退出可以实现了,那么是不是可以也用相同的思路用按钮或是链接模拟最大化和最小化呢?呃……结果,我实现不了……

先抛开最大化和最小化的问题不谈,因为还有其它问题!

当隐藏最大化,最小化按钮后,顶部的名称栏就只有关闭按钮,如果想隐藏它,那么就得隐藏系统菜单这一项,可是这么一来整个窗口就会变成无边框的一个窗口。问题就这么来了,当出现的是一个无边框窗口时,不管你用鼠标怎么去操作,它始终无法被拖动……

好了,我的问题到这里基本上都出现了:
1、如何能通过iframe框架载入的页面中的按钮或链接实现HTA窗口的最大化和最小化?
2、无边框的HTA窗口如何移动?

如果这两项可以实现,那么模仿像酷狗,毒霸等软件的窗口也不是什么难事了!
哦,另外再提一下,HTA文件我都是用ExeScript转成EXE文件,嘿嘿,事实上它就是一个客户端,绿色的!
目录
相关文章
|
6月前
|
JavaScript
如何使用JS控制指定页面大小开启全屏和退出全屏
如何使用JS控制指定页面大小开启全屏和退出全屏
53 0
|
12月前
|
JavaScript 前端开发
jQuery点击图片来回切换功能
jQuery点击图片来回切换功能
99 0
jQuery点击图片来回切换功能
|
12月前
|
JavaScript 数据库
jQuery点击图片开启,再次点击图片关闭效果
jQuery点击图片开启,再次点击图片关闭效果
49 0
|
JavaScript
网页里如何使用js屏蔽鼠标右击事件
网页里如何使用js屏蔽鼠标右击事件
62 0
Echarts链接操作弹出窗口防止重复触发点击事件的解决方案
Echarts链接操作弹出窗口防止重复触发点击事件的解决方案
126 0
iframe框架学习笔记---点击切换路径
iframe框架学习笔记---点击切换路径
86 0
|
存储 JavaScript 前端开发
Selenium之操作浏览器、元素等待、窗体切换和弹窗处理
最常用的几个方法: clear() 清除文本,send_keys(*values) 模拟按键输入,click() 单击元素, submit() 用于提交表单,有时候可以与click()方法互换使用。
Selenium之操作浏览器、元素等待、窗体切换和弹窗处理
|
大数据 开发工具 git
还在使用Window原始的CMD界面?教你一招进行界面完美优化(上)
还在使用Window原始的CMD界面?教你一招进行界面完美优化
438 0
还在使用Window原始的CMD界面?教你一招进行界面完美优化(上)
还在使用Window原始的CMD界面?教你一招进行界面完美优化(下)
还在使用Window原始的CMD界面?教你一招进行界面完美优化
133 0
还在使用Window原始的CMD界面?教你一招进行界面完美优化(下)
Python+selenium 自动化-切换窗口页签、切换iframe框架。确定页面是否包含iframe方法。
Python+selenium 自动化-切换窗口页签、切换iframe框架。确定页面是否包含iframe方法。
798 0