2010-07-16 12 views
0

J'ai cinq fichiers SWF qui sont chargés dans un fichier SWF principal. Tous les cinq chargent lors du test dans l'IDE de Flash CS3.Pourquoi un fichier SWF se chargerait-il dans l'EDI de Flash CS3 mais pas dans le navigateur?

Lors du test dans le navigateur, seuls trois des cinq fichiers SWF sont chargés. Chargement juste des haults après les trois premiers. Aucun IOErrorEvent n'est déclenché, et je suis sûr que les URL pour les SWF sont correctes. J'ai utilisé MonsterDebugger pour localiser ce problème. J'ai essayé de supprimer les deux fichiers SWF non-chargeant de la file d'attente de chargement, et le site commence normalement quand je fais cela. J'ai essayé de recompiler les fichiers SWF qui ne sont pas en cours de chargement et les ai parcourus en recherchant d'étranges erreurs d'exécution.

Y a-t-il des raisons qui peuvent être partagées pour expliquer pourquoi cela se produirait?

Les URL sont absolus.

Répondre

1

Vous pouvez toujours essayer de voir ce qui se passe avec un lecteur de débogage (http://www.adobe.com/support/flashplayer/downloads.html)

Quoi qu'il en soit, les erreurs les plus courantes pour cela est que vous soit essayez de charger un actif inter-domaines, ce qui rend le lecteur flash recherche le fichier crossdomain.xml (voir http://aralbalkan.com/740) Cela peut également avoir un rapport avec le sandbox de sécurité dans lequel vous vous trouvez (Security Sandbox in AS3). Essayez de compiler votre swf en activant network-sandbox.

+0

Merci Waneck. Je viens de résoudre le problème en supprimant une méthode statique de la classe Document de l'un des fichiers SWF non-chargement. Une idée de la raison pour laquelle une méthode statique empêcherait le chargement du fichier SWF? –

+0

qu'a fait cette méthode? Je vous recommande vraiment de télécharger un lecteur de débogage dans votre navigateur, de sorte que vous pouvez voir quel message d'erreur il y avait – Waneck

+0

Sandbox de sécurité d'un sub swf essayant d'accéder au swf maître. qui a probablement causé une violation. Vous devez dire quelque chose comme ceci, si de mon AS2 System.security.allowDomain ("*"); // signifie que tous les swfs chargés dans votre swf sont autorisés à appeler votre code. –