0

HTML コンテンツ、javascript、および vbscript で構成される HTA アプリケーションから外部 .swf ファイルを埋め込もうとしています。swfobject を使用して、javascript から swf をロードします。

リモート サーバーは、元のサーバーとして 'localhost' を許可し、http://localhostで実行されている Web サーバーの HTML ページに埋め込むことができましたが、ローカルで実行されている HTA から動作させる必要があります。 http:// ではなく file:// プロトコルを使用します。現在、このアプローチを試みると、埋め込まれた swf がエラーを通知します。

リモート サイトで crossdomain.xml を確認したところ、次のように表示されていました。

<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy 
    SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
<allow-access-from domain="localhost" to-ports="*" />
...
</cross-domain-policy>

Web サーバーを実行せずに HTA アプリから動作させる方法はありますか?

ありがとう。

4

2 に答える 2

0

No need to use file:// protocol, which I believe is simply not supported by ShockwaveFlash. Just use the name of the .SWF file and it will be loaded from the same directory as the HTA file. Or use the full path like C:\something\flash\applet.swf

The crossdomain stuff is irrelevant because you are running it all on one machine.

And the .HTA security model is much more open than the web security model, because it only works on a single machine, just like a .EXE or any other Windows application.

于 2010-07-29T22:16:13.383 に答える
0

HTAファイルについてはよくわかりませんが、次のような方法で外部の.swfファイルをWebページに直接埋め込むことができることは知っています.

<EMBED type="shockwave-flash" src="http://path/to/file.swf" height="swf_height" width="swf_height" (other tags neccesary> </EMBED>
于 2009-07-28T05:00:47.280 に答える