Ahí vamos ! Ante todo, muchas gracias a Todos por la deferencia ! Voy a ir por parte y tratando de no mezclar los conceptos. El tema de correr como servicio, se me ocurrió sin haber pensado en "tareas programadas", o sea un programa como lo que en D.O.S. era "residente", que quede funcionando permanentemente, no obstante, no es lo mismo un programa que se ejecuta cada determinada hora, que un servicio que permanentemente funciona y queda escuchando puertos. (por ejemplo, el msn). Ahora, releyendo el mail de Martín Salías, quedé absolutamente asorado de cuanta información desconozco, y mi pobre y holgazán cerebro quedó loopeando leyendo una y otra vez ese mail sin entender una j. El tema del Timer control por lo que estoy viendo es un objeto que se ubica en un form, no se todavía si se puede instanciar un objeto en un programa que no tenga interfaz y me imagino que no es lo mismo un objeto Timer que un loop revisando una tabla, digo, en cuanto a recursos consumidos, aunque programáticamente me imagino que no debe ser muy dificil hacer un While y que cada determinada hora con la funcion Time de acuerdo a una configuración que inicialmente puede ser leida de una tabla o archivo haga lo que tenga que hacer. Y está claro que si ejecuto el programa como servicio, en el System Tray lo que tiene que haber es un monitor de ese servicio, en todo caso, la pregunta correcta sería: ¿ como hacer para que un programa, incluido su interfase, resida en el systray y no en la barra de tareas, para evitar que los usuarios con ALT-TAB lo vea, lo cierren, etc, etc. ? Con respecto a los mensajes entre programas, está claro que el servicio va a estar monitoreando algo con el objeto timer o bien escuchando un puerto y necesita avisarle a otro programa para que haga algo cuando ocurra esto otro... ta claro ?, o sea, no ejecutar, o instanciar, sino recibir un mensaje y hacer algo.. parece facil a simple vista. De todas formas, he de ser sincero y decirles que todavía no he tenido tiempo de leer todas las notas que me han enviado ! y también, porque no decirlo, el tema de los mensajes entre programas, puede ser evitado como problema en la cuestión que tengo que resolver. Agradezco mucho todos los mensajes y supongo que todo lo iré resolviendo paso a paso... Insisto, muchas gracias ! PD: el iFox, una masa !
_____ De: [email protected] [mailto:[EMAIL PROTECTED] En nombre de Martín Salías Enviado el: Viernes, 30 de Noviembre de 2007 12:11 p.m. Para: GUFA List Member Asunto: [GUFA] SERVICIO Tal cual, Pablo. Vos lo hacés por sockets, pero se puede hacer de muchas maneras, como le digo a Davo aparte. Saludos, /ms On 11/30/07, PabloC <[EMAIL PROTECTED]> wrote: Davo, Oscar, Martin y Alejandro Yo entendi enviar mensajes entre app tal como lo uso yo en la actualidad via Winsock Por IP-PORT puedo mandar mensajes y las app estan bindeadas a escuchar que algo llegue, es bastante simple Saludos PabloC ----- Original Message ----- From: David Brunstein <mailto:[EMAIL PROTECTED]> To: GUFA List Member <mailto:[email protected]> Sent: Friday, November 30, 2007 11:44 AM Subject: [GUFA] SERVICIO Che Martin, justamente por eso le preguntaba... no me habia quedado claro el concepto de "mensaje". Yo pensaba mandarle un link a WebSphere MQ, pero esto del Windows Foundation Communications (WFC) parece que pinta lindo,... http://wcf.netfx3.com/ Saludos, Davo. On Nov 29, 2007 8:11 PM, Martín Salías <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> > wrote: No, Davo. Alejandro quiere recibir mensajes. Los programas pueden mandarse mensajes a través de canales sin tener que instanciarse. Podría ser por winsock, como mencionaron, por named-pipes, por HTTP, etc. A estudiar WCF, muchachos... Saludos,} /ms On 11/29/07, David Brunstein <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> > wrote: Hola Alejandro, Son varias preguntas en una. 1. Correr como servicio. http://blogs.msdn.com/calvin_hsia/archive/2004/12/13/282351.aspx <http://blogs.msdn.com/calvin_hsia/archive/2004/12/13/282351.aspx> 2. Ejecutar tareas a determinada hora. lo podes hacer con un Timer control. Cada tanto, intervalo de tiempo, ves si es la hora programada para ejecutar la tarea. http://msdn2.microsoft.com/en-us/library/hby83ha1(VS.80).aspx <http://msdn2.microsoft.com/en-us/library/hby83ha1%28VS.80%29.aspx> 3. Recibir mensajes de otros programas? Mmm... a que te refereis? Que un programa instancie un object con CreateObject() o also similar? Que un programa grabe una fila en un DBF y el VFP lo este revisando cada tanto? Que un programa grabe una fila en un TXT y el VFP lo este revisando cada tanto? Me parece que deberias especificar mas "recibir un mensaje", cual es el evento que el programa VFP debe atrapar? 4. Minimizar el programa VFP al system tray. http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=1581546 <http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=1581546&SiteID=1> &SiteID=1 http://www.news2news.com/vfp/?example=336 <http://www.news2news.com/vfp/?example=336&function=-1&xpg=1> &function=-1&xpg=1 Davo. On Nov 29, 2007 8:49 AM, Alejandro Paciotti Iacchelli < <mailto:[EMAIL PROTECTED]> [EMAIL PROTECTED]> wrote: Alguien sabe como hacer para que un programa hecho en Fox resida como servicio, y pueda ejecutar algo a determinada hora, o cada determinadas horas (estoy sería facil), pero (y acá viene lo dificil), que pueda recibir mensajes de otros programas ? lo ideal también sería que pueda verse como un tray en la barra de tareas ! Gracias de antemano ! -- ======================= David Brunstein http://davidbrunstein.googlepages.com/ <http://davidbrunstein.googlepages.com/> http://davidbrunstein.blogspot.com/ Java/PB/VFP Developer Winnipeg, MB Canada Before I speak, I have something important to say. Antes de dar mi discurso, tengo algo importante que decir. Antes de dar meu discurso, tenho algo importante para dizer. G.M. -- Martín Salías Enterprise Architect - Microsoft South Cone www.Salias.com.ar Agile Alliance Member - Microsoft MVP -- ======================= David Brunstein http://davidbrunstein.googlepages.com/ <http://davidbrunstein.googlepages.com/> http://davidbrunstein.blogspot.com/ Java/PB/VFP Developer Winnipeg, MB Canada Before I speak, I have something important to say. Antes de dar mi discurso, tengo algo importante que decir. Antes de dar meu discurso, tenho algo importante para dizer. G.M. -- Martín Salías Enterprise Architect - Microsoft South Cone www.Salias.com.ar Agile Alliance Member - Microsoft MVP
