PDA

Ver la Versión Completa : Ejecutar comando runas desde delphi


bykram
20-04-2004, 17:36:57
Hola gente!! como va eso?
Tengo una pequeña cuestión, ¿como podría ejecutar el comando runas de windows 2000/XP desde delphi?.
El comando runas funciona de la siguiente manera (modo consola):
c:\runas.exe /user:USUARIO "programa a ejecutar.exe"
después de ejecutar esto, el comando runas te pide la contraseña del user, en este caso USUARIO. El problema que tiene el runas es que la contraseña no se pasa por parámetro, sino que hay que esperar a que te la pida.
Quiero hacer esto ya que he creado un programa para modificar una clave del registro, pero cuando lo ejecuto desde un usuario normal que no sea administrador al no tener permisos para modificar el registro, da un error.

Ejecutar el runas es facil, sólo hay que hacer un Winexec, el problema es que la contraseña la pide después de ejecutar el comando, y no se como hacer en delphi para escribir la contraseña cuando la pida el runas.
Si alguien alguien se le ocurre la forma agradecería mucho la ayuda.

Gracias de antemano a todos. :)

delphi.com.ar
20-04-2004, 17:44:11
Creo que la manera mas prolija sería utilizando CreateProcessAsUser

Saludos!

gendelphi
22-04-2004, 08:33:01
Buen dia.

Tal vez te pueda funcionar realizandolo de la siguiente manera:


runas /user:administrador comando < pw.txt


Donde pw.txt es un archivo que contiene la contraseña.

delphi.com.ar
22-04-2004, 15:18:43
Donde pw.txt es un archivo que contiene la contraseña.Por eso prefiero un CreateProcessAsUser ;)

bykram
22-04-2004, 16:20:40
No me acaba de convencer lo de dejar la contraseña en un archivo de texto a la vista de todos, pero gracias por la sugerencia :) .
Me estoy mirando lo de CreateProcessAsUser, a ver si consigo que funcione así. Lo que pasa que no había utilizado esta función antes, y no se muy bien como va :p
Espero conseguirlo de aquí a poco, pq sino os tendré que pedir ayuda otra vez ;)

Gracias denuevo :)

DarkByte
02-05-2004, 13:31:58
¿Y si encriptas la contraseña del archivo usando el truco de trucomanía y a la hora de coger la contraseña lo desencriptas?

delphi.com.ar
04-05-2004, 17:59:10
¿Y si encriptas la contraseña del archivo usando el truco de trucomanía y a la hora de coger la contraseña lo desencriptas?
El problema que quien coge la contraseña es el comando runas, que no pertenece a la aplicación.

Saludos!

CHiCoLiTa
14-05-2004, 13:48:49
Quiero hacer esto ya que he creado un programa para modificar una clave del registro, pero cuando lo ejecuto desde un usuario normal que no sea administrador al no tener permisos para modificar el registro, da un error.


Y si vamos a lo mas basico en vez de liarte con el runas?
Ya que ha salido este tema, me gustaria conocer la respuesta de como realizarlo

En tu caso, creo que los mas sencillo es que ejecutes "regedt32" y des permiso de escritura al usuario que deseas en la clave correspondiente, de ese modo el usuario no ejecuta nada como administrador, y puede escribir en la rama que desea

Saludos a todos

barrauda
28-12-2004, 11:59:47
En tu caso, creo que los mas sencillo es que ejecutes "regedt32" y des permiso de escritura al usuario que deseas en la clave correspondiente, de ese modo el usuario no ejecuta nada como administrador, y puede escribir en la rama que desea

Saludos a todos

Hola, quisiera que me digas como se puede hacer esto que escribiste ya que ando buscando hacerlo para mi programa y no logré encontrar nada. Muchas gracias

CHiCoLiTa
29-12-2004, 16:33:06
Metete con un usuario de adminitrador y selecciona la clave que deseas.
En seguridad/permisos si estas en 2000 o edicion/permisos en el XP y le das los permisos que quieras al usuario deseado

barrauda
29-12-2004, 20:29:24
Te agradezco por la ayuda que me diste, pude hacer lo que quería que es poder modificar el registro de Windows siendo un usuario "común".