Могу ли я получить HWND веб-страницы Chrome в Windows?

Я хочу портировать веб-игру с firebreath на ppapi, старая реализация:

  • Плагин firebreath передает HWND окна другому процессу
  • в другом процессе рендеринг и обновление игры

Я прочитал какой-то документ по ppapi, кажется, что нет способа получить HWND, может кто-нибудь дать мне идею?


person sssa2000    schedule 15.05.2015    source источник


Ответы (1)


Есть несколько важных вещей, которые нужно знать об этом:

1) PPAPI сам по себе поддерживается только для некоторых встроенных плагинов, таких как flash. Вы можете включить дополнительные, но только с помощью флагов командной строки, поэтому это нецелесообразно для любого реального использования.

2) единственное место, где вы можете использовать PPAPI, — это подключаемый модуль NACL/pNACL, где вы обычно просто говорите об использовании NACL (собственный клиент), а не беспокоитесь о названии API; NACL разработан специально для того, чтобы запретить доступ к системным API, таким как HWND, или ко всему, что могло бы использовать HWND.

Итак, короткий ответ: «Нет, нет возможности делать то, что вы хотите». Более длинный ответ заключается в том, что, скорее всего, то, что вы хотите сделать, потребует перезаписи по мере необходимости для использования OpenGL ES с NACL. Хорошей новостью является то, что это тот же OpenGL, который доступен на мобильных платформах, поэтому в игре вы можете использовать это.

person taxilian    schedule 16.05.2015