奇(有挑战性?)问题的位。 是否有可能以编程方式从外部应用程序访问打开的浏览器的标签? 我知道这是一个模糊的问题,但听我说:
我想创建一个“Gmail聊天通知”应用程序时,存在一个悬而未决的聊天消息在闪烁Windows系统托盘中的通知图标。 现在,据我所知道的,唯一内置Gmail聊天通知如下:
- 启用声音(我不喜欢)
- 留意交替闪烁的“Gmail的” /“嗒嗒说...”消息的窗口/标签/页面标题。
以#2的问题是:当最小化浏览器窗口,并在Gmail的标签是不是在浏览器中的活动标签,窗口标题不会改变,我没有注意到新的聊天消息。
所以我想创建一个手表标签的标题为我的应用程序。 (所有标签的标题,而不仅仅是窗口标题,这是唯一的活动标签称号。)的我创建了一个验证的概念C#应用程序通过枚举活动Windows进程和留意闪烁的“嗒嗒检测未回答的聊天消息在窗口的标题说...”:
Process[] procs = Process.GetProcesses();
IntPtr hWnd;
foreach (Process proc in procs)
if ((hWnd = proc.MainWindowHandle) != IntPtr.Zero)
if (proc.MainWindowTitle.IndexOf(" says… ") >= 0)
...
但与此明显的问题是,当Gmail的标签是不是活动/集中标签(因为它只着眼于窗口标题)将无法正常工作。 所以,我需要的东西,可以深入挖掘,并期待在标签标题。
我接受任何东西。 我一直在思考可能的工作是找到一种方法以某种方式列举浏览器的标签(MDI子窗口?*手指交叉*),但也许这不是甚至接近可能的:)我也开放给其他的解决方案太多,如果有一个与方式,要做到这一点说,火狐插件或东西(但它会是不错的与Windows系统托盘整合,而不是仅仅在浏览器沙盒存在)。
任何人都可以帮助让我开始? 感谢很多提前。