如何从Chrome扩展程序获取窗口句柄(int)?

奥姆里

我得到了一个chrome扩展名,如果有新标签页,我想在当前窗口中获取窗口中的窗口句柄。

在事件上,我得到了tab对象,得到了chrome的内部窗口ID,但这不是Windows中的句柄。

chrome.tabs.onCreated.addListener(
        function (tab)
        {
            var intMainWindowHwnd = 0; // how to get it? not tab.windowId…
        });

谢谢!

奥姆里

好吧,如果有人遇到相同的问题,我使用C ++中NPAPI插件解决了该问题,该插件可以访问win32api ...

在Invoke方法中,我检查了我的方法(GetProcessId)并获得了父进程(因为插件位于另一个进程中):

ULONG_PTR MyAddon::GetParentProcessId() // By Napalm @ NetCore2K
{
 ULONG_PTR pbi[6];
 ULONG ulSize = 0;
 LONG (WINAPI *NtQueryInformationProcess)(HANDLE ProcessHandle, ULONG ProcessInformationClass,
  PVOID ProcessInformation, ULONG ProcessInformationLength, PULONG ReturnLength); 
 *(FARPROC *)&NtQueryInformationProcess = 
  GetProcAddress(LoadLibraryA("NTDLL.DLL"), "NtQueryInformationProcess");
 if(NtQueryInformationProcess){
  if(NtQueryInformationProcess(GetCurrentProcess(), 0,
    &pbi, sizeof(pbi), &ulSize) >= 0 && ulSize == sizeof(pbi))
     return pbi[5];
 }
 return (ULONG_PTR)-1;
}

然后,我得到了此过程的主要内容,并将其返回给我的js插件。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何从Chrome扩展程序中打开的窗口获取背景页面?

如何缩小Chrome扩展程序的弹出窗口

获取媒体会话的程序句柄和窗口句柄

在 Google Chrome 扩展程序中获取打开的弹出窗口

Chrome扩展程序:从弹出窗口获取当前标签

如何获取VBA MsgBox的窗口句柄?

如何获取弹出窗口的句柄(WebdriverIO)

如何在Google Chrome扩展程序中启动新窗口

如何防止我的Chrome扩展程序中的弹出窗口放大

如何为Chrome扩展程序添加粘性弹出窗口

如何阻止亚马逊上的Chrome扩展程序弹出窗口

如何使Chrome扩展程序弹出窗口可拖动?

如何在Chrome扩展程序弹出窗口上创建“ tail”

从窗口句柄首次打开时,如何获取Windows应用程序的原始大小?

chrome扩展程序-如何获取chrome商店的网址

获取SDL 2应用程序的窗口句柄

Chrome 扩展程序:如何获取新创建的标签 URL

如何在Chrome扩展程序开发中获取选定的文本?

如何使用 Chrome 扩展程序获取 Laravel 护照令牌?

Chrome扩展程序-如何获取HTTP响应正文?

Chrome扩展程序如何从url获取页面的源代码

如何从Google Chrome扩展程序获取当前标签的URL?

如何从Chrome扩展程序中获取用户的位置?

如何在Google Chrome扩展程序中获取基本URL

Chrome扩展程序:¿如何从课程中获取按钮的href?

无法在Chrome中打开扩展程序窗口

Chrome扩展程序弹出窗口不再显示

Chrome扩展程序窗口加载jQuery

Chrome扩展程序弹出窗口无法打开