Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > API de Windows
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 14-01-2011
Flecha Flecha is offline
Miembro
 
Registrado: nov 2006
Posts: 59
Poder: 18
Flecha Va por buen camino
acceso y ejecución en remoto

Hola a todos.

Os voy a explicar mi problema a ver si alguien puede echarme un cable.
El cliente para quien trabajo tiene una serie de redes LAN, cada una con su servidor, y alrededor de cada uno, una serie de terminales "tontos" de pantalla táctil.

En ocasiones surgen problemas en los terminales "tontos", precisando una actuación directa en ellos por parte de los técnicos. Unas veces necesitan hacer reinicios del terminal, otras veces reiniciar/recuperar/reinstalar sw.

Ahora mi cliente me pide que desarroye una herramienta para que los ténicos puedan conectarse remotamente a cada servidor, y desde éste al terminal "tonto" averiado, para no tener que desplazarse físicamente para repararlo, con el consguiente ahorro de tiempo.
En teoría podría valerme cualquier aplicación tipo VNC que me abriera consolas remotas para acceder a los terminales "tontos". Pero es aquí donde tengo mi mayor problema.
Cualquier conexión tipo VNC, o FTP, o TELNET precisan de un servidor que escuche al otro lado (desde el terminal "tonto"), esperando una conexión.

Pero si por algún problema, el servicio no pude ser arrancado, la conexión es imposible. Mi herramienta ha de ser lo suficientemente robusta como para conectarse al terminal, sin necesidad de tener ningún servicio concreto escuchando al otro lado.
Por tanto necesito poder conectarme desde un PC a otro, dentro de la misma LAN, para realizar ejecutes en remoto, pero sin servidor escuchando al otro lado.Esto implica también la obtención en remoto de los resultados de las órdenes lanzadas.



Necesito poder conectarme, poder copiar archivos desde el servidor al terminal "tonto", y viceversa. Y también poder realizar cualquier tipo de operación en el terminal, mientras estoy conectado remotamente desde el servidor (reinicio de servicios, reinicio del terminal, análisis del sistema, control de aplicaciones corriendo, etc, etc, etc...).

Tengo respuesta para practicamente todo..., excepto para la ejecución en remoto.

¿Alguien se le ocurre cómo puedo hacerlo?





Si alguien conoce la aplicación PsExec.exe (http://www.adminko.sk/!Admin/!utils/...re/psexec.html), pues necesito construirme algo similar. Pero más potente. Para lo que necesito, esa aplicación se me queda corta, pues hay cosas que no consigue ejecutarlas, y otras de las cuales no consigo obtener la respuesta.

Mis problemas en la obtención de respuesta quizá sea porque no logro encontrar el mejor método para capturar las salidas de aplicaciones MS-DOS.
Si alguien tiene sugerencia a éste respecto pues sería también de gran ayuda.



Muchas gracias por adelantado.

Última edición por Flecha fecha: 14-01-2011 a las 15:41:55.
Responder Con Cita
  #2  
Antiguo 14-01-2011
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.275
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por Flecha Ver Mensaje
Por tanto necesito poder conectarme desde un PC a otro, dentro de la misma LAN, para realizar ejecutes en remoto, pero sin servidor escuchando al otro lado.Esto implica también la obtención en remoto de los resultados de las órdenes lanzadas.
El problema es que todas las opciones que conozco necesitan tener en marcha en el ordenador remoto un Ejecutable/Servicio.

Tal vez podrías conseguir levantar el servicio o ejecutar un EXE utilizando PSEXEC o alguno similar (necesitas para ello credenciales) y a partir de ahí conectar utilizando alguna de las herramientas que has comentado (Control Remoto).
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #3  
Antiguo 14-01-2011
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.040
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Además de lo comentado por Neftalí, por lo que que explicas tú, no serán tan tontos los terminales si tienen software y demás, no?, un "terminal tonto" es un simple teclado y pantalla conectado por red o puerto serie, o sea, que no puede hacer ni ejecutar nada.
Y la otra duda que me ha surgido, dices: "Por tanto necesito poder conectarme desde un PC a otro, dentro de la misma LAN, para realizar ejecutes en remoto".
Si está en la misma LAN, no estarán muy lejos los técnicos, ¿no pueden acercarse a echarle un vistazo físicamente?
Seguramente he entendido mal, supongo.
Responder Con Cita
  #4  
Antiguo 17-01-2011
Flecha Flecha is offline
Miembro
 
Registrado: nov 2006
Posts: 59
Poder: 18
Flecha Va por buen camino
Cita:
Empezado por Neftali Ver Mensaje
El problema es que todas las opciones que conozco necesitan tener en marcha en el ordenador remoto un Ejecutable/Servicio.
[...]
Exacto. Ese es mi mayor problema.

No obstante la aplicación PSExec.exe, al menos en su primera conexión, es capaz de conectarse a un PC/terminal remoto sin necesidad de servicios escuchando al otro lado. Si ésta aplicación puede hacerlo, es que hay un modo de hacerlo. Y si lograra saber cómo lo hace, se solucionaría mi problema.

PSExec.exe en su primera conexión al PC/terminal remoto, aprovecha para instalar un programa llamado PSExeSvc.EXE en la carpeta de sistema como un servicio más. Así que en cierto modo también hace uso de un servidor. Pero ¿cómo hace esa primera conexión para instalar y arrancar dicho servicio, cuando aún no hay nadie escuchándole al otro lado? Eso es lo que necesito averiguar.

Cita:
Empezado por Neftali Ver Mensaje
[...]Tal vez podrías conseguir levantar el servicio o ejecutar un EXE utilizando PSEXEC o alguno similar (necesitas para ello credenciales) y a partir de ahí conectar utilizando alguna de las herramientas que has comentado (Control Remoto).
Mencioné esas otras herramientas para ponerlas como ejemplo y para que se me entendiera mejor mi problema. No obstante, por otro tipo de problemas no puedo hacer uso de ellas. Por eso mi necesidad de "reinventar la rueda" en cierto sentido.

Estoy haciendo pruebas con lo que me dices de usar PSExec.exe para arrancar servidores en el PC/terminal remoto. Por ahora no he obtenido resultados suficientemente satisfactorios. Por las credenciales, no hay problema ninguno, porque como diseñador del sw que soy, dispongo de ellas sin problemas.






Cita:
Empezado por Casimiro Notevi Ver Mensaje
Además de lo comentado por Neftalí, por lo que que explicas tú, no serán tan tontos los terminales si tienen software y demás, no?, un "terminal tonto" es un simple teclado y pantalla conectado por red o puerto serie, o sea, que no puede hacer ni ejecutar nada.
[...]
Es cierto. No son terminales "tontos" en el sentido más extricto. Tienen un Sistema Operativo, como un PC cualquiera, un SW que se ejecuta en local. Son terminales sin teclado ni ratón, pero con pantalla táctil.

Cita:
Empezado por Casimiro Notevi Ver Mensaje
[...]
Y la otra duda que me ha surgido, dices: "Por tanto necesito poder conectarme desde un PC a otro, dentro de la misma LAN, para realizar ejecutes en remoto".
Si está en la misma LAN, no estarán muy lejos los técnicos, ¿no pueden acercarse a echarle un vistazo físicamente?
Seguramente he entendido mal, supongo.
Hasta ahora es éso lo que están haciendo los del servicio técnico.
El sw que ahora me pide mi cliente que les prepare es precisamente para que la gente del servicio técnico se ahorre el tiempo del desplazamiento, porque en la inmensa mayoría de las veces tardan muchísimo más en desplazarse, que en solucionar la incidencia. Pero mientras llegan al sitio, el punto de venta está parado.
El servidor de cada LAN y los terminales a él conectados, están todos en el mismo local. La LAN no se extiende más allá que dicho local.
Responder Con Cita
  #5  
Antiguo 18-01-2011
Avatar de Crandel
[Crandel] Crandel is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Parana, Argentina
Posts: 1.475
Poder: 22
Crandel Va por buen camino
Posiblemente con WMI podrias resolverlo.
__________________
[Crandel]
Responder Con Cita
  #6  
Antiguo 18-01-2011
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.275
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Posíblemente sí utilizando el método Create de la clase Win32_Process; En ese caso debería tener funcionando WMI en el ordenador remoto y ccredenciales para ejecutarlo.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #7  
Antiguo 18-01-2011
Flecha Flecha is offline
Miembro
 
Registrado: nov 2006
Posts: 59
Poder: 18
Flecha Va por buen camino

Suena muy interesante. No se me había ocurrido. Investigaré a ver qué tal.
Muchísimas gracias.
Os prometo que comentaré los resultados, sean los que sean.
Responder Con Cita
  #8  
Antiguo 23-03-2011
Flecha Flecha is offline
Miembro
 
Registrado: nov 2006
Posts: 59
Poder: 18
Flecha Va por buen camino
Chic@s, me estoy volviendo loco.

No conocía las WMI (Instrumentos de Administración de Windows) y al menos he aprendido que es una herramienta incorporada en Win2000 (disponible en Windows desde entonces), para administrar sistemas de empresa (aplicaciones, redes, etc), ayudando a resolver problemas y reducir coestes en ello.

También he visto por ahí que al parecer hay que al parecer hay que instalarse una librería llamada WBEMDISP.TLB, que está en la carpeta "%windir%\System32\wbem" del propio Windows.
http://www.swissdelphicenter.ch/torr...de.php?id=2135
http://www.tech-archive.net/Archive/...5-02/0168.html

Pero he probado a instalármelo y es un auténtico infierno.

Además. No estoy nada seguro de que ésto me ayude a conectar con otros PCs y ejecutar en ellos comandos en remoto.

¿Alguien conoce mejor las WMI?
Responder Con Cita
  #9  
Antiguo 24-03-2011
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.275
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por Flecha Ver Mensaje
¿Alguien conoce mejor las WMI?


Puedes revisar estas entradas en mi blog:
WMI – Introducción
Inventario de software instalado (WMI)

En la sección de Componentes tienes unas librerías para utilizar WMI desde Delphi; Las GLibWMI que puedes revisar aquí.

Con ellas vienen algunos ejemplos de utilización que puede revisar.
En la sección de aplicaciones también puedes descargar (incluído código fuente) la versión 1.1 de Vprocess; Una sencilla aplicación que utiliza WMI para visualizar los procesos en ejecución que hay en la máquina.

En el FTP del club creo que puedes encontrar también algun ejemplo al respecto que ha salido alguna vez en los foros.

Por otro lado, si se trata de WMI, es indispensable visitar el blog de Rodrigo Ruz, The Road To Delphi; Está en inglés, no se si eso puede ser un problema para tí. Encontrarás bastantes ejemplos y la aplicación WMI Delphi Code Creator, que te puede ser muy útil si estás empezando.

Creo que con eso ya tienes algo para empezar...
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #10  
Antiguo 24-03-2011
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.040
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por Flecha Ver Mensaje
[..]¿Alguien conoce mejor las WMI?
También me ha hecho mucha gracia
Responder Con Cita
  #11  
Antiguo 24-03-2011
Flecha Flecha is offline
Miembro
 
Registrado: nov 2006
Posts: 59
Poder: 18
Flecha Va por buen camino
Cita:
Empezado por Neftali Ver Mensaje


Puedes revisar estas entradas en mi blog:
WMI – Introducción
Inventario de software instalado (WMI)

En la sección de Componentes tienes unas librerías para utilizar WMI desde Delphi; Las GLibWMI que puedes revisar aquí.

Con ellas vienen algunos ejemplos de utilización que puede revisar.
En la sección de aplicaciones también puedes descargar (incluído código fuente) la versión 1.1 de Vprocess; Una sencilla aplicación que utiliza WMI para visualizar los procesos en ejecución que hay en la máquina.

En el FTP del club creo que puedes encontrar también algun ejemplo al respecto que ha salido alguna vez en los foros.

Por otro lado, si se trata de WMI, es indispensable visitar el blog de Rodrigo Ruz, The Road To Delphi; Está en inglés, no se si eso puede ser un problema para tí. Encontrarás bastantes ejemplos y la aplicación WMI Delphi Code Creator, que te puede ser muy útil si estás empezando.

Creo que con eso ya tienes algo para empezar...

Muchas gracias Neftali.
Sin duda te lo has currado impresionante. Es un trabajo magnífico.

Pero por desgracia se me agota el tiempo y no puedo seguir investigando más. Por más que miro y remiro la información, lo único que veo que me pueden dar las WMI es información sobre el estado del PC remoto. Pero esos datos ya los obtengo yo por otras vías.

Lo que necesito es poder ejecutar algo en remoto, pero sigo sin ver que las WMI me puedan permitir eso.

Si estoy equivocado, por favor, te agradecería que me dieras la solución de un modo directo, porque ya no tengo tiempo para seguir investigando documentaciones.
¿Qué objeto/clase debería utilizar?
¿Qué método de dicho objeto/clase me permite la ejecución en remoto?
¿Un ejemplo de uso?

Te agradezco enormemente tu ayuda. Como digo, veo que has logrado sacarle todo el jugo posible a las WMI.
¿Pueden las WMI aportar algo más que no sea sólo información?
¿Pueden permitir ejecutar aplicaciones en remoto?


Muchas gracias.
Responder Con Cita
  #12  
Antiguo 24-03-2011
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.275
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por Flecha Ver Mensaje
¿Qué objeto/clase debería utilizar?
¿Qué método de dicho objeto/clase me permite la ejecución en remoto?
¿Un ejemplo de uso?
Pues sólo te puedo decir lo que ya te he dicho.
Con la clase Win32_Process de WMI puedes ejecutar procesos en máquinas remotas, siempre y cuando tengas las credenciales necesarias.
Te he dado ejemplos de código donde se ejecutan métodos, aunque no ese exprésamente, pero el sistema es similar...
Revisa el código que hay en esta página.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Acceso remoto a un txt gesjug Varios 2 01-10-2008 12:09:53
Acceso Remoto JAI_ME Varios 2 20-05-2008 16:05:51
Acceso Remoto a SQL Teryx Conexión con bases de datos 1 02-08-2004 12:49:50
Acceso Remoto a SQL Teryx MS SQL Server 2 30-07-2004 19:28:04
Acceso remoto a una db Slash Internet 1 07-06-2004 15:50:37


La franja horaria es GMT +2. Ahora son las 16:17:22.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi