Как Battlelog запускает игры из браузера? - PullRequest
1 голос
/ 03 ноября 2011

Battlelog недавно был выпущен EA вместе с Battlefield 3, и мне интересно, как он может запускать игры, такие как Battlefield 3, из веб-браузера?

В целом, как веб-сайт запускает программы локально?

Ответы [ 4 ]

8 голосов
/ 07 ноября 2011

Я один из разработчиков, отвечающих за запуск части Battlelog.Это обрабатывается комбинацией установленного плагина веб-браузера и JavaScript.Запуск игры в основном проходит через эти шаги.

  1. Мы выясним, где вы установили BF3.exe, используя ключ реестра
  2. Мы используем плагин для запуска этого exe спара параметров командной строки
  3. Когда клиент игры запускается, он открывает соединение с плагином для двусторонней связи между Battlelog и игрой.
  4. Игровой клиент отправляет информацию о состояниии сообщения об ошибках обратно через соединение, чтобы мы могли отображать прогресс и ошибки в Battlelog, а также знать, когда игра закрылась.
2 голосов
/ 05 ноября 2011

Это благодаря плагину, который вы установили в Battlelog. Веб-сайтам не разрешается выполнять программы на вашем локальном компьютере из-за ОГРОМНОЙ угрозы безопасности, которая может возникнуть. Плагины должны использоваться, если вы хотите выполнить практически все, что не входит в контекст браузера, поэтому вы должны явно дать им разрешение на установку, когда они пытаются запустить.

0 голосов
/ 03 ноября 2011

Я почти на 100% уверен, что он использует плагин, который нужно установить, чтобы управлять процессом запуска, так как он также контролирует, свернута ли игра или нет.

0 голосов
/ 03 ноября 2011

Я думаю, что есть два варианта. Во-первых, ссылка указывает на файл, который имеет расширение, понятное только этой программе, например, когда вы нажимаете ссылку PDF, открывается программа просмотра PDF. Мое второе предположение состоит в том, что ссылка может использовать другой протокол, связанный с рассматриваемой программой, действительно ли ссылка начинается с http: //?

...