問題点 (ISSUE)

Flash Builder プロジェクトを実行する際、Flash Player が次のいずれかに似たエラーメッセージの例外を発することがあります。

*** Security Sandbox Violation ***
Connection to file:///swf_file_A.swf halted - not permitted from 
file:///swf_file_B.swf
SecurityError: Error #2148: SWF file file:///swf_file_B.swf cannot access local 
resource file:///swf_file_A.swf. Only local-with-filesystem and trusted local 
SWF files may access local resources.
Flash Player Warning
--------------------
Note: If the Flash player displays a "SecurityError" message or blank window
when you run your program, you may need to completely exit your browser and
try again.

上記メッセージは Windows クライアントで表示されることがあります。Mac クライアントの場合は、使用中のブラウザー ("your browser") ではなく、すべてのブラウザー ("all browsers") の終了を求めるメッセージが表示されます。

Flash Player がブラウザーウィンドウに初めて読み込まれる際、Flash Player は "FlashPlayerTrust" ディレクトリを確認して、どのローカルディレクトリに信頼済みの SWF ファイルが含まれているかを判定しますが、このファイルは一度しか読み取られないことが問題の原因になっています。この件および Flash Player のセキュリティ機能について詳しくは、http://www.adobe.com/devnet/flashplayer/articles/flash_player_9_security.pdf を参照してください。

bin-debug ディレクトリが Flash Builder の通常のワークスペース以外にある Flash Builder プロジェクトを作成する際または読み込む際、Flash Builder はその都度、当該 bin-debug ディレクトリを信頼済みディレクトリの一覧に追加します。しかし、ブラウザーが既に起動中で、Flash Player が FlashPlayerTrust 情報の読み込みを済ませている場合は、新しいプログラムが信頼されず、上記のいずれかのエラーメッセージが表示されることになります。

解決方法 (SOLUTION)

Windows クライアントをご利用の場合は、新たなデバッグセッションを開始する前に SWF の稼動するブラウザーを終了することで、この問題を回避できます。Mac クライアントをご利用の場合は、実行中のすべてのブラウザー (Safari、Firefox など) を終了する必要があります。これはすべてのブラウザーにおいて、Flash Player の単一のインメモリインスタンスが共有されているからです。 

本作品は Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License によってライセンス許可を受けています。  Twitter™ および Facebook の投稿には、Creative Commons の規約内容は適用されません。

法律上の注意   |   プライバシーポリシー