2009-07-28 9 views
0

J'essaie d'intégrer un fichier .swf externe à partir d'une application HTA qui comprend du contenu HTML, javascript et vbscript. Je charge le swf à partir de javascript, en utilisant swfobject.Comment intégrer SWF externe à partir du fichier: // protocole

Le serveur distant autorise 'localhost' comme serveur d'origine, et je pourrais l'incorporer sur une page HTML sur mon serveur web, fonctionnant sur http://localhost, mais je dois le faire fonctionner depuis l'HTA locale, ce que je suppose utilise le fichier: // protocole, pas http: //. À l'heure actuelle, lorsque vous essayez cette approche, swf intégré signale une erreur.

j'ai vérifié crossdomain.xml sur le site distant et il dit:

<?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> 

est-il un moyen de le faire fonctionner à partir de mon application HTA sans courir un serveur web?

Merci.

Répondre

0

je ne suis pas sûr de fichiers HTA, mais je sais que vous pouvez directement intégrer des fichiers .swf externes dans votre page Web par quelque chose comme

<EMBED type="shockwave-flash" src="http://path/to/file.swf" height="swf_height" width="swf_height" (other tags neccesary> </EMBED> 
0

Pas besoin de fichier utiliser: // protocole, que je crois simplement non pris en charge par ShockwaveFlash. Utilisez simplement le nom du fichier .SWF et il sera chargé depuis le même répertoire que le fichier HTA. Ou utilisez le chemin complet comme C: \ quelquechose \ flash \ applet.swf

La substance du domaine croisé est sans importance car vous l'exécutez sur une machine. Le modèle de sécurité .HTA est beaucoup plus ouvert que le modèle de sécurité Web, car il ne fonctionne que sur une seule machine, tout comme un .EXE ou toute autre application Windows.

Questions connexes