まあ、誰かが同じ問題に遭遇した場合は、win32api にアクセスできる C++のNPAPIプラグインを使用して解決しました...
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;
}
次に、このプロセスのメイン hwnd を取得し、それを js アドオンに返します。