none
Añadir .exe dentro de un control RRS feed

  • Pregunta

  • Buenos días.

    Ando buscando la manera idónea de insertar una aplicación externa dentro de un control que forma parte de mi aplicación. Desde diferentes webs afirman que la mejor manera de hacerlo es mediante funciones de la libreria "user32.dll" (SetParent, FindWindow, etc, etc), pero al utilizarlas y ejercutar la aplicación se me presenta un nuevo problema, el control TootStrip de la aplicación embebida no responde a los clicks del ratón, es decir, el control se muestra pero no se puede interactuar con él. ¿¿Saben de alguna solución válida para este problema ??

    Otra opción que barajo para resolver el problema inicial es instanciar el formulario deseado de la aplicación a embeber, añadirlo al control de mi aplicación y mostrarlo. Este código funciona bien:

       Form2 frm = new Form2();
          frm.TopLevel = false;
          frm.Visible = true;
          frm.FormBorderStyle = FormBorderStyle.None;
          frm.Dock = DockStyle.Fill;
          tabControl1.TabPages[0].Controls.Add(frm);

    Pero no con formulario Mdi, que es el que yo quiero insertar, ¿ Es posible siquiera hacerlo ?

    miércoles, 16 de octubre de 2013 11:23

Respuestas

Todas las respuestas

  • hola

    seria algo como esto

    Hosting EXE Applications in a WinForm project

    ---

    que sucede si en lugar de ponerlo dentro de un tabcontrol, lo pones para probar dentro de un form directo, alli si funcionan los clicks ?

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina


    • Editado Leandro TuttiniMVP miércoles, 16 de octubre de 2013 11:33
    • Marcado como respuesta Josefolo viernes, 17 de octubre de 2014 6:57
    miércoles, 16 de octubre de 2013 11:32
  • que sucede si en lugar de ponerlo dentro de un tabcontrol, lo pones para probar dentro de un form directo, alli si funcionan los clicks ?

    Sucede exactamente lo mismo que si lo añado al tabcontrol. Además hay algo curioso en ambos casos, con un MenuStrip funciona correctamente, por lo probado hasta ahora es sólo con el ToolStrip.

    miércoles, 16 de octubre de 2013 13:55
  • Gracias a ambos por contestarme.

    Según me decís entonces no existe una manera óptima de incluir el .exe en mi aplicación ?? 

    Si ese es el caso, la segunda opción sería incrustar un formulario MDi, es esto posible o no se podría embeber un Mdi dentro de otro Mdi ??

    Gracias de nuevo.

    jueves, 17 de octubre de 2013 6:34