Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 23-07-2004
Novás Novás is offline
Miembro
 
Registrado: oct 2003
Ubicación: Galicia
Posts: 146
Poder: 23
Novás Va por buen camino
Apagar ordenador remoto

Hola a todos...

He hechado un vistacillo por los foros y no he encontrado nada al respecto. Vereis...

Estoy intentando que, desde una aplicación delphi en mi ordenador pueda apagar un ordenador de la red solo conociendo su ip, o nombre de equipo. Además me gustaría que en este ordenador no tubiese que instalar ningún tipo de aplicación cliente ni nada por el estilo...

Es posible??. Muchas gracias por adelantado
__________________
Hay dos cosas infinitas: el Universo y la estupidez humana. http://www.cybertarjetas.net
Responder Con Cita
  #2  
Antiguo 23-07-2004
Novás Novás is offline
Miembro
 
Registrado: oct 2003
Ubicación: Galicia
Posts: 146
Poder: 23
Novás Va por buen camino
Se me olvidaba, trabajo con windows xp en todas las máquinas
__________________
Hay dos cosas infinitas: el Universo y la estupidez humana. http://www.cybertarjetas.net
Responder Con Cita
  #3  
Antiguo 23-07-2004
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: 19.437
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 Novás
Estoy intentando que, desde una aplicación delphi en mi ordenador pueda apagar un ordenador de la red solo conociendo su ip, o nombre de equipo. Además me gustaría que en este ordenador no tubiese que instalar ningún tipo de aplicación cliente ni nada por el estilo
Como mínimo deberás añadir a la lista de cosas que conoces del equipo un password de usuario para una cuenta válida en ese ordenador, sino creo que no tienes nada que hacer.

Puedes revisar esta API:

InitiateSystemShutdown

que te permite hacer eso sobreuna computadora de la red, pero al final te explica lo siguiente:

//-------------------------------------------------------------------
Remarks
To shut down the local computer, the calling process must have the SE_SHUTDOWN_NAME privilege. To shut down a remote computer, the calling process must have the SE_REMOTE_SHUTDOWN_NAME privilege on the remote computer. By default, users can enable the SE_SHUTDOWN_NAME privilege on the computer they are logged onto, and administrators can enable the SE_REMOTE_SHUTDOWN_NAME privilege on remote computers.
//-------------------------------------------------------------------

Vamos, que si no tienes permisos, no tienes nada que hacer...
__________________
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
  #4  
Antiguo 23-07-2004
Novás Novás is offline
Miembro
 
Registrado: oct 2003
Ubicación: Galicia
Posts: 146
Poder: 23
Novás Va por buen camino
Otra preguntilla, como puedo darle esos privilegios en la otra máquina...

Soy un tanto amater y no tengo ni idea. También agradecería un ejemplillo del uso de la función.

Muchas gracias
__________________
Hay dos cosas infinitas: el Universo y la estupidez humana. http://www.cybertarjetas.net
Responder Con Cita
  #5  
Antiguo 23-07-2004
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: 19.437
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 Novás
Otra preguntilla, como puedo darle esos privilegios en la otra máquina...
No se trata de darle privilegios, se trata de que la cuenta de usuario que conoces en la otra máquina los tenga.
Es decir (y en esto que me corrija alguna otra persona si me equivoco), para hacer un "Remote shutdown" necesitas la IP de la otra máquina, un nombre de usuario definido en la otra máquina (entre las cuentas de usuario) y además ese usuario debe tener permisos de Administrador.

Si lo que quieres es darle permisos de Administrador a un usuario que no los tiene, lo que necesitas es conocer un usuario con permisos de Administrador, para darle los permisos de Admnistrador al usuario que no los tiene con el usuario que sí los tiene... ...no se si te has dado cuenta que siempre llegamos al mismo sitio.

Un saludo.
__________________
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
  #6  
Antiguo 23-07-2004
Avatar de __hector
[__hector] __hector is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Santo Domingo, Rep. Dom.
Posts: 1.075
Poder: 25
__hector Va por buen camino
...O que pertenezca a los administradores definidos para el dominio al que pertenecen dichas maquinas
__________________
Héctor Geraldino
Software Engineer
Responder Con Cita
  #7  
Antiguo 26-07-2004
Novás Novás is offline
Miembro
 
Registrado: oct 2003
Ubicación: Galicia
Posts: 146
Poder: 23
Novás Va por buen camino
Hola de nuevo:

Veréis, estoy utilizando el siguiente código:
Código Delphi [-]
nombre:=InputBox('Intentar apagar equipo...','Introduzca el nombre o la dirección IP '+
                   'de la máquina que desea apagar','');
  if nombre<>'' then
  begin
    sms:=InputBox('Mensaje al apagar equipo...','Introduzca el mensaje que desea que '+
                  'visualice el ordenador remoto.','');
    if InitiateSystemShutdown(PChar(nombre),
                              PChar(sms),
                              4,
                              True,
                              False)=False then
    begin
      MessageDlg('No se ha apagado la máquina...'+#13+'Error: '+
                    SysErrorMessage( GetlastError ),
                 mtInformation,
                 [mbOk],
                 0);
    end;
  end;

Este código, cuando le asigno los privilegios de apagar el ordenador de forma remota al grupo todos me funciona, sino no funciona.
Mi pregunta es... ¿Con que usuario se conecta el programa al ejecutar esta función? ¿Con el usuario activo en la máquina destino? ¿Con el usuario activo en mi máquina? ¿Con otro usuario distinto?... ¿Como puedo lograr que mi programa se conecte como administrador en la máquina remota conociendo el password?

Muchas gracias por adelantado
__________________
Hay dos cosas infinitas: el Universo y la estupidez humana. http://www.cybertarjetas.net
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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


La franja horaria es GMT +2. Ahora son las 23:32:09.


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