有一商用程序是BS结构,无法修改的,网页上有几个如确定,取消,打印之类的按钮,如何用VC捕获按钮事件,并且区分出按的是哪一个按钮呢

hnjlske 2005-09-14 09:42:14
如题:
...全文
163 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
Atry 2005-10-13
  • 打赏
  • 举报
回复
我的第二种方法不需要加一个ISAPI

2、建议采用的办法:既然现有的程序无法修改,就在外面套个框架把:
<body scroll="no" TOPMARGIN=0 LEFTMARGIN=0 RIGHTMARGIN=0 BUTTONMARGIN=0>
<iframe frameBorder="no" src="index.aspx" id="E_MainFrame" width=100% height=100%></iframe>
<iframe id="E_Hook" style="display:none"></iframe>
<script language="jscript">
frames.E_MainFrame.all.E_Button1.onclick = function ()
{
alert("E_Button1 Clicked!");
location.href = "hook.asp?click=E_Button1";
}
</script>
</body>


然后你自己的hook.asp里面怎么处理都行了。
hnjlske 2005-10-11
  • 打赏
  • 举报
回复
up
hnjlske 2005-09-29
  • 打赏
  • 举报
回复
方法很好,可惜无法在服务器端加一个ISAPI筛选器,没有权限.
那位高手能解决??急急!!!
younggle 2005-09-17
  • 打赏
  • 举报
回复
有啊。
钩子。
hnjlske 2005-09-17
  • 打赏
  • 举报
回复
各位高手还有什么方法?
2025‘someday 2005-09-17
  • 打赏
  • 举报
回复
上面的可行!
Atry 2005-09-17
  • 打赏
  • 举报
回复
location.href = "hook.asp?click=E_Button1";
这句写错了,应该是

frames.E_Hook.location.href = "hook.asp?click=E_Button1";
Atry 2005-09-17
  • 打赏
  • 举报
回复
若是服务器端要捕获网页上的这些所谓的事件,肯定是没有现成的钩子什么的。不过你的问题并非完全没有办法,具体解决办法如下:
1、可以在服务器端加一个ISAPI筛选器,这样网页的请求会先送到你的ISAPI筛选器,你可以自己对post过来的数据进行解码,ISAPI如果用VC编写用MFC建立ISAPI筛选器的项目即可。

也可用C#或VB实现IHttpHandler,修改Web.Config:
<httpHndlers>
<add verb="*" path="*.aspx"
type=" MyNameSpace.MyHandr, MyNameSpace" />
</httpHndlers>

用ISAPI写程序是非常痛苦的,尤其是你自己还要做BASE64解码

2、建议采用的办法:既然现有的程序无法修改,就在外面套个框架把:
<body scroll="no" TOPMARGIN=0 LEFTMARGIN=0 RIGHTMARGIN=0 BUTTONMARGIN=0>
<iframe frameBorder="no" src="index.aspx" id="E_MainFrame" width=100% height=100%></iframe>
<iframe id="E_Hook" style="display:none"></iframe>
<script language="jscript">
frames.E_MainFrame.all.E_Button1.onclick = function ()
{
alert("E_Button1 Clicked!");
location.href = "hook.asp?click=E_Button1";
}
</script>
</body>


然后你自己的hook.asp里面怎么处理都行了。
如果要用VC的话,就用COM写个组件好了,也可以不用ASP直接发给ISAPI Extension处理,
wshcdr 2005-09-17
  • 打赏
  • 举报
回复
UP
hnjlske 2005-09-17
  • 打赏
  • 举报
回复
怎么用钩子捕获是那个按钮呢,能详细解释下吗?谢谢了!!真的很急啊!!
hnjlske 2005-09-16
  • 打赏
  • 举报
回复
非常感谢,研究中....
Hendy_So 2005-09-16
  • 打赏
  • 举报
回复
看看下面的文章及代码,对你可能有用:
http://www.codeproject.com/miscctrl/luo31.asp
http://www.codeproject.com/shell/dlgdhtmlevents.asp
http://www.codeproject.com/samples/dhtmlhook.asp
hnjlske 2005-09-15
  • 打赏
  • 举报
回复
对不起,skyonline(山中过客),我是生手,能详细解释下吗?非常感谢!!!
落入凡间的猪 2005-09-14
  • 打赏
  • 举报
回复
用xpcom,具体的资料你可以上网查

16,551

社区成员

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

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

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