destacados

Gabriel Da Silva

Portafolio del ilustrador y director de arte brasileño, aunque afincado en Madrid, Gabriel Da Silva.

B&W Helmut Newton

Selección de fotografías en blanco y negro de uno de los fotógrafos más conocidos de las últimas décadas, Helmut Newton.

Judith Erwes

Fotógrafa afincada en Londres con un estilo que combina la moda, el humor y la estética retro.

Jody Rogac

Nacida en Inglaterra y criada en Canadá, Jody Rogac en la actualidad vive y trabaja en Brooklyn. Sus trabajo ha obtenido diversos galardones.

Publicaciones

Utilizar fscommand() para comunicar Flash con otras aplicaciones

, 10/05/2005 00:00:00

Podemos comunicar Flash con otras aplicaciones como Visual Basic, Visual C++, y similares con fscommand(). También se puede usar para, simplemente, pasarle parámetros a un HTML. Yo lo he utilizado alguna vez para comunicar una interfaz realizada en Flash con un aplicativo en Visual Basic. El procedimiento es el siguiente:

1.- En un documento nuevo creamos un boton y le asignamos como nombre de instancia "btn1"
2.- A un fotograma le asignamos la siguiente acción:

btn1.onPress = function ()  {
          url = "javascript:showAlert('Te he dicho que no aprietes')";
          getURL(url);
}

3.- Publicamos el Flash y el HTML desde Flash, éste último con la opción fscommand() seleccionada

fscommand

Si visualizas el código fuente del html publicado notarás que ha insertado un código en javascript como el que sigue:

<script language="JavaScript">
<!--
var isInternetExplorer = navigator.appName.indexOf("Microsoft") != -1;
// Gestionar todos los mensajes de FSCommand de una película Flash
function fscommand_DoFSCommand(command, args) {
var fscommandObj = isInternetExplorer ? document.all.fscommand : document.fscommand;
//
// Introduzca su código aquí.
//
}
// Ancla para Internet Explorer
if (navigator.appName && navigator.appName.indexOf("Microsoft") != -1 && navigator.userAgent.indexOf("Windows") != -1 && navigator.userAgent.indexOf("Windows 3.1") == -1) {
document.write('<script language=\"VBScript\"\>\n');
document.write('On Error Resume Next\n');
document.write('Sub fscommand_FSCommand(ByVal command, ByVal args)\n');
document.write(' Call fscommand_DoFSCommand(command, args)\n');
document.write('End Sub\n');
document.write('</script\>\n');
}
//-->
</script>

4.- Y ahora el último paso. Sólo nos queda insertar la función de Javascript (en nuestro caso un sencillo showAlert) a la que pasamos los parámetros desde Flash. En el anterior código hay un comentario que nos indica "// Introduzca su código aquí.". Pues bien, según mi experiencia y si quieres que la cosa funcione con Mozilla. No debes insertar el código ahí sino antes de la etiqueta de cierre . Con lo que nos quedaría:

<script language="JavaScript">
<!--
var isInternetExplorer = navigator.appName.indexOf("Microsoft") != -1;
// Gestionar todos los mensajes de FSCommand de una película Flash
function fscommand_DoFSCommand(command, args) {
var fscommandObj = isInternetExplorer ? document.all.fscommand : document.fscommand;
//
// Introduzca su código aquí.
//
}
// Ancla para Internet Explorer
if (navigator.appName && navigator.appName.indexOf("Microsoft") != -1 && navigator.userAgent.indexOf("Windows") != -1 && navigator.userAgent.indexOf("Windows 3.1") == -1) {
document.write('<script language=\"VBScript\"\>\n');
document.write('On Error Resume Next\n');
document.write('Sub fscommand_FSCommand(ByVal command, ByVal args)\n');
document.write(' Call fscommand_DoFSCommand(command, args)\n');
document.write('End Sub\n');
document.write('</script\>\n');
}
//-->
function showAlert(ms)
{
alert(ms);
}
</script>
Ver Ejemplo en funcionamiento » »
Descargar Ejemplo » »

Páginas: 1
comentarioscomentarios