![]() |
Leer parámetros que manda otra aplicación
Hola a todos.
Tengo que trabajar con una aplicación que no es mia y que me va a mandar ejecutar mi programa con muchas instancias. Para ello me arrancan mi programa con parámetros, (eso lo tengo solucionado, luego en el Form Create leo con ParmaStr):
donde PChar('"127.000.000.001:9000"') son los parámetros de una IP y un puerto para establecer comunicaciones. Para que no quede tan feo abrir un montón de formularios independientes había pensado hacer un MDIForm y luego ir abriendo dinámicamente todos los formularios como MDIChid para cada ShellExecute que me manden, por lo que mi pregunta es si puedo interceptar una segunda instancia del Shellexecute que me lanzan y solo leer los parámetros para crear un MDIChild y no crear otra apliación independiente. Gracias. |
Creo que lo que tendrías que hacer es controlar que no haya otra instancia de la aplicación. Si no hay una instancia, abrís comúnmente y creas una ventana MDI hija. Si sí hay una instancia previa, entonces le pasás un mensaje a esa instancia dicíendole que habra una nueva ventana MDI hija con tales parámetros.
El amigo Román en su página tiene un muy buen ejemplo de estos asuntos. Lo que no me acuerdo es sí su código no sólo advierte la instancia anterior y cancela la carga, o si además también está contemplado el pasarle un mensaje para que, por ejemplo, cree una nueva ventana. |
Muchas gracias, estaba intentándolo con CreateMutex, pero me tiraba siempre un error.
Voy a intentar adaptar el ejemplo de Román. |
La franja horaria es GMT +2. Ahora son las 07:27:08. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi