嵌入式 WebBrowser Web 控制台访问

Posted

技术标签:

【中文标题】嵌入式 WebBrowser Web 控制台访问【英文标题】:Embedded WebBrowser web console access 【发布时间】:2012-09-23 11:49:32 【问题描述】:

我有一个运行嵌入式 Web 浏览器 (System.Windows.Forms.WebBrowser) 的 .NET 应用程序。我不知道如何访问我通常可以通过按 f12 访问的 Web 控制台(相当于 firebug 的控制台)。有没有办法启用它?也可以将此输出重定向到文件吗?

【问题讨论】:

为什么需要控制台?你想得到什么? 我想调试嵌入式网络浏览器应用程序。 Web 浏览器类使用 Internet Explorer:然后使用不同版本的 IE、不同版本的 Windows(XP、Vista、7)和不同的处理器类型(32 位或 64 位)测试您的应用程序。来源:msdn.microsoft.com/en-us/library/… 【参考方案1】:

您尝试过使用 FirebugLite 吗?

https://getfirebug.com/firebuglite

在您的页面中包含此脚本,您将拥有一个精简版的 firebug 可以用来调试你的JS。

<script type="text/javascript" src="https://getfirebug.com/firebug-lite.js"></script>

【讨论】:

我只能控制 .NET 应用程序,而不是网站内容。 页面加载后可以在浏览器中注入javascript 试试这个答案注入脚本***.com/questions/153748/… 这非常适合嵌入式浏览器。只需在主 html 标记中添加 即可使其默认显示。谢谢! 救命稻草!我正在尝试使用桌面应用程序中的嵌入式 WebBrowser 控件深入了解 Google Maps for Work 授权(可能注定要失败),而您的建议是我发现看到来自 Google 的有用错误消息的唯一方法写入console.error()。在浏览器中进行测试没有意义,因为该消息包含 Google 看到的 HTML 文件位置(这是问题所在)。【参考方案2】:

嵌入式网络浏览器不支持 ActiveX 控制器,因此没有网络控制台。

【讨论】:

浏览器网页控制台都是基于ActiveX的吗? (即,Firefox 和 chrome) Firefox 和 Chrome 不支持 ActiveX 控件,因为它是 Microsoft 技术 :)) 是否可以访问其他嵌入式浏览器的 Web 控制台? (IE除外) 我尝试使用几个组件来嵌入 Geko (FF) 和 Webkit (Chrome),但每次它都是一个重大错误,比如没有打印选项或冻结,所以我决定坚持IE,你可以在这里阅读更多关于这个***.com/questions/790542/…【参考方案3】:

你可以使用虚拟工作室来调试它

    启动应用程序 通过调试打开“附加到对话框”->附加到进程 在附加到选择中,选择“脚本” 然后选择你要调试的进程

【讨论】:

以上是关于嵌入式 WebBrowser Web 控制台访问的主要内容,如果未能解决你的问题,请参考以下文章

Frame和WebBrowser关系

webbrowser 控件实现WinForm与WebForm交互

在 WebBrowser 的文档中从 JavaScript 调用 C# 代码

WebBrowser脚本错误的原因及Web Browser Control & Specifying the IE Version

C# 控制台应用程序 WebBrowser

如何控制WebBrowser控件不下载图片