Fonction browse et FileReference : variable remise à zéro [Résolu]

Signaler
Messages postés
72
Date d'inscription
lundi 19 janvier 2004
Statut
Membre
Dernière intervention
31 octobre 2011
-
Messages postés
1203
Date d'inscription
lundi 10 mars 2003
Statut
Membre
Dernière intervention
23 juillet 2009
-
Bonjour,
J'utilise la fonction "browse" pour ouvrir une fenêtre depuis Flash. Je choisi un SWF, ma variable "choixfichier" m'indique bien son nom et extension mais impossible d'ouvrir ce swf, et si je fais un "Play", ma variable "choixfichier" se réinitialize. Donc undefined.Quelqu'un a une idée ?
Merci.

import flash.net.FileReference;
var listener:Object = new Object();
listener.onSelect = function(file:FileReference):Void  {
     var choixfichier = String(file.name);
     trace("--------> "+choixfichier);
};
 
var fileRef:FileReference = new FileReference();
fileRef.addListener(listener);

browse_btn.onRelease = function() {
    fileRef.browse([{description: "Flash Annimation (*.swf)", extension: "*.swf", macType: "SWFL"}]);
};

5 réponses

Messages postés
1203
Date d'inscription
lundi 10 mars 2003
Statut
Membre
Dernière intervention
23 juillet 2009
2
Non, désolé mais cette fonctionnalité n'est PAS possible dans flash directement...

C'est effectivement possible avec des logiciels additionnels tels que Zinc de multidmedia ou swf studio de northcode
C'est aussi possible en restant dans la gamme Adobe même en utilisant AIR + FLEX (ou AIR + AS3 je pense)

@+
Messages postés
1203
Date d'inscription
lundi 10 mars 2003
Statut
Membre
Dernière intervention
23 juillet 2009
2
Bonjour,

flash.net.FileReference; ne sert qu'a transferer des fichiers entre un ordinateur et un serveur (ou l'inverse) mais en aucun cas a executer le fichier choisi.

Dans ton cas, tu dois premièrement ulpoader le fichier swf choisi sur le serveur et ensuite, lorsqu'il est sur le serveur le charger dans un clip vide a l'aide de loadMovie() ou MovieClipLoader()

Mais je ne suis pas persuadé que c'est bien cela que tu souhaites réaliser...

@+
Messages postés
72
Date d'inscription
lundi 19 janvier 2004
Statut
Membre
Dernière intervention
31 octobre 2011

Il n'y a pas une fonction identique mais pour ouvrir un fichier ?
Comment ce fait-il que ma variable "choixfichier" devient undefined lorsque je passe à la frame suivante ? J'ai pourtant bien stocké "file.name" ?
Merci
Messages postés
1203
Date d'inscription
lundi 10 mars 2003
Statut
Membre
Dernière intervention
23 juillet 2009
2
Non, il n'y a pas de fonction pour ouvrir et exécuter un swf  depuis une animation sur un serveur... et c'est tant mieux pour la sécurité !!!

Imagine les risques liés à une telle fonction.

Avec cette  fonction, je pourrais ouvrir sur ton serveur un fichier qui est sur mon ordinateur, et si ce fichier comporte des scripts (flash peut faire exécuter du javascript directement depuis  getURL) qui me permettent à mon tour d'envoyer ou de créer des fichier sur ton serveur... avec un peu de bonne volonté je prend le contrôle total de ton serveur !

remarque : tu peux bien récupérer le nom du fichier, mais flash ne te donnera jamais le chemin complet pour accéder à ce fichier.

L'unique possibilité est celle proposée dans mon post précédent : uploader le fichier et ensuite le lancer dans ton animation.

@+
Messages postés
72
Date d'inscription
lundi 19 janvier 2004
Statut
Membre
Dernière intervention
31 octobre 2011

Ce n'est pas pour du online, c'est du local !
Bon ben je vais continuer à fouiner sur le Web. Je suis sûr qu'il existe une fonction permettant de faire ça.
Merci quand même.