C# 【实现IE浏览器打开某个网页 网页某个按钮点击时】 C#程序获取点击,弹出“xxx按钮被点击”

时间:2022-07-08 00:59:26
新下来一个需求 运行一个C#程序(winfrom/wpf) 差不多是监听 当IE打开某个网页的时候 点击网页上面的按钮 需要程序弹窗提示“xxxx按钮被点击中”或者是点击登录按钮的时候 程序弹出"用户名 正在登录中"

20 个解决方案

#1


这底层winform和web应用程序之间的关系也不知道。怎么写啊。

如果是我的话。页面点击按钮的时候加一个ajax。然后后台就能运行了啊。可以在窗口上增加对后台类事件的关注。就ok了。

#2


引用 1 楼 qq_20324803 的回复:
这底层winform和web应用程序之间的关系也不知道。怎么写啊。

如果是我的话。页面点击按钮的时候加一个ajax。然后后台就能运行了啊。可以在窗口上增加对后台类事件的关注。就ok了。

这个页面可能是别人的页面。

#3


mshtml

获取到 Ihtmlelment

Ihtmlelment.click+= .....

#4


类似webbrowser这样。
C# 【实现IE浏览器打开某个网页 网页某个按钮点击时】 C#程序获取点击,弹出“xxx按钮被点击”

调用外部ie时用 mshtml 相信你能百度到。 

#5


引用 2 楼 luxHero 的回复:
Quote: 引用 1 楼 qq_20324803 的回复:

这底层winform和web应用程序之间的关系也不知道。怎么写啊。

如果是我的话。页面点击按钮的时候加一个ajax。然后后台就能运行了啊。可以在窗口上增加对后台类事件的关注。就ok了。

这个页面可能是别人的页面。


啥意思?别人的页面如果不加反应。你是没办法在你的程序里面接收到信息啊。怎么反应?
你的意思是你在你的程序里面打开别人的页面??那也是需要在页面上加信息把。

#6


引用 5 楼 qq_20324803 的回复:
Quote: 引用 2 楼 luxHero 的回复:

Quote: 引用 1 楼 qq_20324803 的回复:

这底层winform和web应用程序之间的关系也不知道。怎么写啊。

如果是我的话。页面点击按钮的时候加一个ajax。然后后台就能运行了啊。可以在窗口上增加对后台类事件的关注。就ok了。

这个页面可能是别人的页面。


啥意思?别人的页面如果不加反应。你是没办法在你的程序里面接收到信息啊。怎么反应?
你的意思是你在你的程序里面打开别人的页面??那也是需要在页面上加信息把。



C# 【实现IE浏览器打开某个网页 网页某个按钮点击时】 C#程序获取点击,弹出“xxx按钮被点击”

楼主应该是这个意思吧?点百度一下 。 可以弹窗提醒



#7


引用 6 楼 wawd74520 的回复:
Quote: 引用 5 楼 qq_20324803 的回复:

Quote: 引用 2 楼 luxHero 的回复:

Quote: 引用 1 楼 qq_20324803 的回复:

这底层winform和web应用程序之间的关系也不知道。怎么写啊。

如果是我的话。页面点击按钮的时候加一个ajax。然后后台就能运行了啊。可以在窗口上增加对后台类事件的关注。就ok了。

这个页面可能是别人的页面。


啥意思?别人的页面如果不加反应。你是没办法在你的程序里面接收到信息啊。怎么反应?
你的意思是你在你的程序里面打开别人的页面??那也是需要在页面上加信息把。



C# 【实现IE浏览器打开某个网页 网页某个按钮点击时】 C#程序获取点击,弹出“xxx按钮被点击”

楼主应该是这个意思吧?点百度一下 。 可以弹窗提醒




他应该不是这个意思。你这个只是点击控件。弹出提示。她是想点击网页中的button。

#8


准备工作
Microsoft.mshtml.dll
SHDOCVW.DLL
添加引用。 请自行百度下载
第一步。获取ie浏览器操作对象
 SHDocVw.ShellWindows shellWindows = new SHDocVw.ShellWindowsClass();
            object objFlags = 1;
            object objTargetFrameName = "";
            object objPostData = "";
            object objHeaders = "";
            webBrowser1= (SHDocVw.InternetExplorer)shellWindows.Item(shellWindows.Count-1);
            webBrowser1.Navigate("http://www.baidu.com");

我这里只是在原有的ie窗口打开新窗口。 也可以不打开百度。

第二步
  mshtml.IHTMLDocument2 doc2 = (mshtml.IHTMLDocument2)webBrowser1.Document;
            mshtml.IHTMLElement su = (mshtml.IHTMLElement)doc2.all.item("su", 0);
            ((mshtml.HTMLButtonElementEvents_Event)su).onclick += delegate { MessageBox.Show("23333"); return true; };
百度一下的按钮id是su。 那么查到这个后就可以添加自己的事件了。返回true和false应该是是否传递到网页按钮。 也就是可以控制人家能不能点这个按钮。

#9


引用 7 楼 qq_20324803 的回复:
Quote: 引用 6 楼 wawd74520 的回复:

Quote: 引用 5 楼 qq_20324803 的回复:

Quote: 引用 2 楼 luxHero 的回复:

Quote: 引用 1 楼 qq_20324803 的回复:

这底层winform和web应用程序之间的关系也不知道。怎么写啊。

如果是我的话。页面点击按钮的时候加一个ajax。然后后台就能运行了啊。可以在窗口上增加对后台类事件的关注。就ok了。

这个页面可能是别人的页面。


啥意思?别人的页面如果不加反应。你是没办法在你的程序里面接收到信息啊。怎么反应?
你的意思是你在你的程序里面打开别人的页面??那也是需要在页面上加信息把。



C# 【实现IE浏览器打开某个网页 网页某个按钮点击时】 C#程序获取点击,弹出“xxx按钮被点击”

楼主应该是这个意思吧?点百度一下 。 可以弹窗提醒




他应该不是这个意思。你这个只是点击控件。弹出提示。她是想点击网页中的button。



我这个不是点控件。 是点百度一下。 弹的 233333

#10


C# 【实现IE浏览器打开某个网页 网页某个按钮点击时】 C#程序获取点击,弹出“xxx按钮被点击”

#11


我觉得她应该是想监控别人电脑。。。。所以程序别人肯定不知道已经运行。

#12


引用 11 楼 qq_20324803 的回复:
我觉得她应该是想监控别人电脑。。。。所以程序别人肯定不知道已经运行。
 恩 是在用户不知道的情况下 获取信息 弹出提示 

#13


引用 10 楼 wawd74520 的回复:
C# 【实现IE浏览器打开某个网页 网页某个按钮点击时】 C#程序获取点击,弹出“xxx按钮被点击”
 我尝试看看  差不多是这样子  谢谢你啊:)

#14


引用 13 楼 luxHero 的回复:
Quote: 引用 10 楼 wawd74520 的回复:

C# 【实现IE浏览器打开某个网页 网页某个按钮点击时】 C#程序获取点击,弹出“xxx按钮被点击”
 我尝试看看  差不多是这样子  谢谢你啊:)
 请问可以去抓已经打开了的网页不,总不能让用户点击打开ie按钮 再浏览吧。。

#15


果然跟我想的一样。你这种应该从抓包上考虑了。。。。。

#16


不过我不会。哇喀喀喀

#17


C# 【实现IE浏览器打开某个网页 网页某个按钮点击时】 C#程序获取点击,弹出“xxx按钮被点击”小伙你这种想法很危险啊 
做木马吧

#18


C# 【实现IE浏览器打开某个网页 网页某个按钮点击时】 C#程序获取点击,弹出“xxx按钮被点击”

我也是醉了。 白给你写代码了。 

#19


现在伸手党越来越多了。 难怪大牛都不过来回答。 

#20


有干货,mark

#1


这底层winform和web应用程序之间的关系也不知道。怎么写啊。

如果是我的话。页面点击按钮的时候加一个ajax。然后后台就能运行了啊。可以在窗口上增加对后台类事件的关注。就ok了。

#2


引用 1 楼 qq_20324803 的回复:
这底层winform和web应用程序之间的关系也不知道。怎么写啊。

如果是我的话。页面点击按钮的时候加一个ajax。然后后台就能运行了啊。可以在窗口上增加对后台类事件的关注。就ok了。

这个页面可能是别人的页面。

#3


mshtml

获取到 Ihtmlelment

Ihtmlelment.click+= .....

#4


类似webbrowser这样。
C# 【实现IE浏览器打开某个网页 网页某个按钮点击时】 C#程序获取点击,弹出“xxx按钮被点击”

调用外部ie时用 mshtml 相信你能百度到。 

#5


引用 2 楼 luxHero 的回复:
Quote: 引用 1 楼 qq_20324803 的回复:

这底层winform和web应用程序之间的关系也不知道。怎么写啊。

如果是我的话。页面点击按钮的时候加一个ajax。然后后台就能运行了啊。可以在窗口上增加对后台类事件的关注。就ok了。

这个页面可能是别人的页面。


啥意思?别人的页面如果不加反应。你是没办法在你的程序里面接收到信息啊。怎么反应?
你的意思是你在你的程序里面打开别人的页面??那也是需要在页面上加信息把。

#6


引用 5 楼 qq_20324803 的回复:
Quote: 引用 2 楼 luxHero 的回复:

Quote: 引用 1 楼 qq_20324803 的回复:

这底层winform和web应用程序之间的关系也不知道。怎么写啊。

如果是我的话。页面点击按钮的时候加一个ajax。然后后台就能运行了啊。可以在窗口上增加对后台类事件的关注。就ok了。

这个页面可能是别人的页面。


啥意思?别人的页面如果不加反应。你是没办法在你的程序里面接收到信息啊。怎么反应?
你的意思是你在你的程序里面打开别人的页面??那也是需要在页面上加信息把。



C# 【实现IE浏览器打开某个网页 网页某个按钮点击时】 C#程序获取点击,弹出“xxx按钮被点击”

楼主应该是这个意思吧?点百度一下 。 可以弹窗提醒



#7


引用 6 楼 wawd74520 的回复:
Quote: 引用 5 楼 qq_20324803 的回复:

Quote: 引用 2 楼 luxHero 的回复:

Quote: 引用 1 楼 qq_20324803 的回复:

这底层winform和web应用程序之间的关系也不知道。怎么写啊。

如果是我的话。页面点击按钮的时候加一个ajax。然后后台就能运行了啊。可以在窗口上增加对后台类事件的关注。就ok了。

这个页面可能是别人的页面。


啥意思?别人的页面如果不加反应。你是没办法在你的程序里面接收到信息啊。怎么反应?
你的意思是你在你的程序里面打开别人的页面??那也是需要在页面上加信息把。



C# 【实现IE浏览器打开某个网页 网页某个按钮点击时】 C#程序获取点击,弹出“xxx按钮被点击”

楼主应该是这个意思吧?点百度一下 。 可以弹窗提醒




他应该不是这个意思。你这个只是点击控件。弹出提示。她是想点击网页中的button。

#8


准备工作
Microsoft.mshtml.dll
SHDOCVW.DLL
添加引用。 请自行百度下载
第一步。获取ie浏览器操作对象
 SHDocVw.ShellWindows shellWindows = new SHDocVw.ShellWindowsClass();
            object objFlags = 1;
            object objTargetFrameName = "";
            object objPostData = "";
            object objHeaders = "";
            webBrowser1= (SHDocVw.InternetExplorer)shellWindows.Item(shellWindows.Count-1);
            webBrowser1.Navigate("http://www.baidu.com");

我这里只是在原有的ie窗口打开新窗口。 也可以不打开百度。

第二步
  mshtml.IHTMLDocument2 doc2 = (mshtml.IHTMLDocument2)webBrowser1.Document;
            mshtml.IHTMLElement su = (mshtml.IHTMLElement)doc2.all.item("su", 0);
            ((mshtml.HTMLButtonElementEvents_Event)su).onclick += delegate { MessageBox.Show("23333"); return true; };
百度一下的按钮id是su。 那么查到这个后就可以添加自己的事件了。返回true和false应该是是否传递到网页按钮。 也就是可以控制人家能不能点这个按钮。

#9


引用 7 楼 qq_20324803 的回复:
Quote: 引用 6 楼 wawd74520 的回复:

Quote: 引用 5 楼 qq_20324803 的回复:

Quote: 引用 2 楼 luxHero 的回复:

Quote: 引用 1 楼 qq_20324803 的回复:

这底层winform和web应用程序之间的关系也不知道。怎么写啊。

如果是我的话。页面点击按钮的时候加一个ajax。然后后台就能运行了啊。可以在窗口上增加对后台类事件的关注。就ok了。

这个页面可能是别人的页面。


啥意思?别人的页面如果不加反应。你是没办法在你的程序里面接收到信息啊。怎么反应?
你的意思是你在你的程序里面打开别人的页面??那也是需要在页面上加信息把。



C# 【实现IE浏览器打开某个网页 网页某个按钮点击时】 C#程序获取点击,弹出“xxx按钮被点击”

楼主应该是这个意思吧?点百度一下 。 可以弹窗提醒




他应该不是这个意思。你这个只是点击控件。弹出提示。她是想点击网页中的button。



我这个不是点控件。 是点百度一下。 弹的 233333

#10


C# 【实现IE浏览器打开某个网页 网页某个按钮点击时】 C#程序获取点击,弹出“xxx按钮被点击”

#11


我觉得她应该是想监控别人电脑。。。。所以程序别人肯定不知道已经运行。

#12


引用 11 楼 qq_20324803 的回复:
我觉得她应该是想监控别人电脑。。。。所以程序别人肯定不知道已经运行。
 恩 是在用户不知道的情况下 获取信息 弹出提示 

#13


引用 10 楼 wawd74520 的回复:
C# 【实现IE浏览器打开某个网页 网页某个按钮点击时】 C#程序获取点击,弹出“xxx按钮被点击”
 我尝试看看  差不多是这样子  谢谢你啊:)

#14


引用 13 楼 luxHero 的回复:
Quote: 引用 10 楼 wawd74520 的回复:

C# 【实现IE浏览器打开某个网页 网页某个按钮点击时】 C#程序获取点击,弹出“xxx按钮被点击”
 我尝试看看  差不多是这样子  谢谢你啊:)
 请问可以去抓已经打开了的网页不,总不能让用户点击打开ie按钮 再浏览吧。。

#15


果然跟我想的一样。你这种应该从抓包上考虑了。。。。。

#16


不过我不会。哇喀喀喀

#17


C# 【实现IE浏览器打开某个网页 网页某个按钮点击时】 C#程序获取点击,弹出“xxx按钮被点击”小伙你这种想法很危险啊 
做木马吧

#18


C# 【实现IE浏览器打开某个网页 网页某个按钮点击时】 C#程序获取点击,弹出“xxx按钮被点击”

我也是醉了。 白给你写代码了。 

#19


现在伸手党越来越多了。 难怪大牛都不过来回答。 

#20


有干货,mark

#21