0

크롬 확장이 있는데 새 탭이있는 경우 현재 창이면 창에서 창 핸들을 가져오고 싶습니다.크롬 확장에서 창 핸들 (int)을 가져 오는 방법은 무엇입니까?

이벤트에서 나는 탭 개체를 얻었고 크롬의 내부 창 ID를 가졌지 만 이것은 Windows의 핸들이 아닙니다.

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

고마워요!

답변

0

글쎄, 사람이 같은 문제가 발생하면, 내가 win32api에 접근 C++에서 NPAPI 플러그인 ... 난 내 방식 (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; 
} 

그런 다음 나는이 과정의 주요 HWND를 가지고 내 JS의 부가 기능으로 돌아갑니다.

+1

예제 코드를 포함하여 답변을 조금 넓힐 수 있습니까? 현재의 대답은 거의 유용하지 않습니다. –

+0

완료, 의견을 주셔서 감사합니다 ... – Omri

관련 문제