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

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




