Hola, 3 años tarde pero bueno, siempre es útil saber como integrar proyectos de Flash con c# .net ya que no siempre se tiene disponible un webserver o bien si queremos que flash pueda guardar archivos, base de datos etc. solo hay que integrarlo a un WINFORM y el se encargará de todo esto (ejemplo un elearning que se distribuye por CD)
Crea un nuevo proyecto en VStudio.NET, depués donde esta la barra de herramientas (textbox, Radiobutton, etc), selecciona "Add/Remove Items", después selecciona "COM Components", buscas "Shockwave Flash Object".
Español - en el "Cuadro de Herramientas" haz click derecho y haz click en "Agregar o Quitar Elementos". Luego de eso ve a la solapa que dice Objetos COM y selecciona el que dice Shockwave Flash Object, una ves que se importe lo arrastras a tu forma de c#
Aparecera el "Shockwave Flash object" en tu barra de herramientas y arrastralo a tu WinForm como cualquier otro componente
NOTA: En las versiones nuevas de visualStudio puede haber un problema al hacer este proceso, "The type or namespace name 'AxShockwaveFlashObjects' could not be
found (are you missing a using directive or an assembly reference?)", creo que la solucion está en copiar DLL anteriores en la carpeta "obj\Debug" del proyecto (Interop.ShockwaveFlashObjects.dll y AxInterop.ShockwaveFlashObjects.dll, así como en la de "bin\Debug" reemplazando la que generó el pryecto al intentar hacer los pasos anteriores
si tu componente se llama "axShockwaveFlash1" en el evento Load del form ponemos lo siguiente:
EN C#
Código :
private void Form1_Load(object sender, EventArgs e)
{
this.axShockwaveFlash1.Movie = "Path_Completo_de_tu_swf.swf";
this.axShockwaveFlash1.FSCommand += new AxShockwaveFlashObjects._IShockwaveFlashEvents_FSCommandEventHandler(this.axShockwaveFlash1_FSCommand);
}
//Agregamos el evento que se ejecuta en el FSCommand
//Este evento se dispara cada que hacemos Fscommand
private void axShockwaveFlash1_FSCommand(object sender, AxShockwaveFlashObjects._IShockwaveFlashEvents_FSCommandEvent e)
{
switch (e.command)
{
case "accion1:"
MessageBox.Show("Argumento: " + e.args);
//ACCIONES A EJECUTAR CON C#
break;
}
}
EN CASO DE FLASH
Código :
on (release) {
fscommand("accion1","Cualquier texto a enviar");
}