Загрузка SWF не работает, если SWF хранится на локальном ПК - PullRequest
0 голосов
/ 02 мая 2011

У меня есть HTML-файл, который содержит проигрыватель Flash .FLV; который затем загружает данное видео FLV и воспроизводит его. Идея состоит в том, что все эти файлы хранятся локально на ПК как часть установки приложения, мы используем HTML / flash для справки / руководства.

На моем ПК все работает нормально, но на ПК пользователя ничего не отображается. Однако, если я размещаю ту же самую файловую структуру в сети и даю им URL, она отлично работает.

Я предполагаю, что это какая-то проблема безопасности, но я не знаю, как ее решить. Используемый браузер на самом деле является приложением XULRunner, то есть движком FireFox 3, а не FF. Поскольку мой ПК является ПК-разработчиком, вполне возможно, что в прошлом я что-то делал для другого проекта, который заставляет его работать, вместо того, чтобы мой ПК каким-то образом был особенным.

Для справки, HTML содержит следующее - это сгенерировано из стороннего приложения:

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="723" height="445" id="FLVPlayer">
  <param name="movie" value="FLVPlayer_Progressive.swf" />
  <param name="quality" value="high" />
  <param name="wmode" value="opaque" />
  <param name="scale" value="noscale" />
  <param name="salign" value="lt" />
  <param name="FlashVars" value="&amp;MM_ComponentVersion=1&amp;skinName=Halo_Skin_2&amp;streamName=../../videos&amp;autoPlay=true&amp;autoRewind=false" />
  <param name="swfversion" value="8,0,0,0" />
  <!-- This param tag prompts users with Flash Player 6.0 r65 and higher to download the latest version of Flash Player. Delete it if you don’t want users to see the prompt. -->
  <param name="expressinstall" value="Scripts/expressInstall.swf" />
  <!-- Next object tag is for non-IE browsers. So hide it from IE using IECC. -->
  <!--[if !IE]>-->
  <object type="application/x-shockwave-flash" data="FLVPlayer_Progressive.swf" width="723" height="445">
    <!--<![endif]-->
    <param name="quality" value="high" />
    <param name="wmode" value="opaque" />
    <param name="scale" value="noscale" />
    <param name="salign" value="lt" />
    <param name="FlashVars" value="&amp;MM_ComponentVersion=1&amp;skinName=Halo_Skin_2&amp;streamName=../../videos&amp;autoPlay=true&amp;autoRewind=false" />
    <param name="swfversion" value="8,0,0,0" />
    <param name="expressinstall" value="Scripts/expressInstall.swf" />
    <!-- The browser displays the following alternative content for users with Flash Player 6.0 and older. -->
    <div>
      <h4>Content on this page requires a newer version of Adobe Flash Player.</h4>
      <p><a href="http://www.adobe.com/go/getflashplayer"><img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" /></a></p>
    </div>
    <!--[if !IE]>-->
  </object>
  <!--<![endif]-->
</object>

1 Ответ

1 голос
/ 02 мая 2011

Конечно, это проблема безопасности браузеры не имеют доступа к локальным файлам.
Он работал в вашей системе, потому что вы были в своей песочнице.
Вы можете сделать две вещи.
Первый - хостинг FLVs онлайн и доступ к нему таким образом. Как и любой другой игрок там.
Второй - создание приложения Air.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...