AOL桌面的浏览器控制台?

时间:2013-08-12 17:48:12

标签: debugging browser webbrowser-control aol-desktop

我参与了一个网站的开发,该网站有大量用户通过适用于Windows的 AOL Desktop v9.7 查看我们的网站 - 它自己生成浏览器窗口。在调试时,我没有通常可以调用的工具(例如Chrome的开发者控制台; Firebug; MSIE的 F12开发人员工具)。

当在AOL桌面内时,我似乎没有任何这些,或类似的东西。是否有我可以调用的开发者模式或控制台,发掘?

2 个答案:

答案 0 :(得分:8)

在我的评论中,我的意思是,您可以使用一个非常不错的JavaScript调试器,其中包含Visual Studio( [EDITED] 包括免费版)的手动DOM检查功能。有了一些技巧,它也可以用于AOL桌面(这是一个有趣的软件,BTW :)当然,这与IE的F12工具不同,它缺乏像visual DOM这样的交互功能树,CSS跟踪等。但它仍然允许单步执行代码,观察本地和对象,计算表达式和访问DOM元素。它是一个非常宝贵的工具,我将它用于托管WebBrowser控件的项目。毕竟,这也是AOL所做的。无论如何,如果您已经熟悉这个,请给这个帖子一个微笑并忽略它。否则,请继续阅读:)


我使用IE9,Visual Studio 2012 Pro(Update3)和最新的AOL Desktop 9.7在Win7 SP1 VM下测试了以下内容。 [已编辑] 它也适用于免费版Visual Studio 2012 Express for Desktop,Update3。

唯一的主要障碍是在进入调试器后大约20秒内 AOL浏览器用于重启,从而与调试器断开连接。解决方法是关闭AOL并删除以下文件:

"C:\Program Files (x86)\AOL Desktop 9.7\" 
    shellmon.exe
    shellmon.ini
    shellrestart.exe

然后,我使用以下基本HTML文件进行调试(作为" debug.html"在localhost的根目录中):

<!doctype html>
<html>
<head>
<title>Debugger Test Page</title>
<script>
function debugPrompt()
{
    if (confirm("debug?"))
    {
        debugger; // breakpoint
        alert("after debugger");
    }
}

document.onkeydown = function()
{
    if (event.altKey && event.ctrlKey && event.keyCode === 'D'.charCodeAt(0))
    {
        event.cancelBubble = true;
        debugPrompt();
        return;
    }
}
</script>
</head>
<body>
<button onclick="debugPrompt()">Debug</button>
</body>
</html>

这是我完全做的事情:

  • 确保在 Internet Explorer 其他的IE设置中脚本调试 启用

IE Script Debugging settings


  • 确保在 VS2012调试设置,及时部分( [EDITED] )中选中了 [x]脚本此功能从 VS2012 Express 中丢失,但它并不重要):

VS JIT Debugging Settings


  • Ran AOL并导航到localhost / debug.html。

  • 运行Visual Studio并附加到aolbrowser.exe进程(使用脚本作为目标类型的代码),通过调试/附加到进程菜单:

VS Attach to Process


  • 返回AOL并点击Ctrl-Alt-D(在我上面列出的JavaScript中调用&#34;调试器&#34;提示符)。接下来,我在debugger;代码行的VS Debugger中。此时,所有常用的调试功能都可用。请注意立即窗口面板和 Watch1 面板。此外,我没有使用debugger关键字对断点进行硬编码,而是可以使用Visual Studio 解决方案面板(一旦附加调试器)选择其中一个页面加载的JavaScript文件和交互式切换断点。

VS Debugging AOL


现在,我没有使用Visual Studio Express 2012验证它是否可以使用它,尽管我认为应该是这样。我稍后会试一试。

[更新] 以上几乎所有内容都适用于免费提供的Visual Studio 2012 Express for Desktop w / Update3,但有一个例外:即时调试< / strong>选项似乎缺席。这不是一个show-stopper,因为它仍然可以附加到正在运行的AOL进程并以相同的方式调试当前加载的页面。

PS。感谢您对无关question of mine的自愿赏金提议,这是一个非常好的姿态。

答案 1 :(得分:1)

万一有人来这里寻找信息:最新的9.8版本的AOL桌面现在包含Chrome的开发者工具,当你按下F12时,它会在新窗口中打开。