FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Aplicación con privilegios de administrador
Hola: Antes de nada disculpas si este tema está ya contestado en el foro. Pero yo no lo he encontrado.
Mi problema es el siguiente: Tengo una aplicación pequeña ( hecha con Delphi 2005 ) que se ejecuta en el inicio de Windows ( XP o Vista ) y que gestiona un archivo de configuración .ini. Si lo ejecuto en una cuenta con privilegios de administrador, no tengo ningún problema. La pega aparece cuando se ejecuta en una cuenta limitada ( no administrador ) da un error de no poder escribir en el archivo .ini. Les agradecería me dijeran como lo puedo solucionar. Estuve viendo lo de "runas", pero me parece algo chapuza. Me imagino que escribiendo algo en el registro de Windows se puede solucionar, o en el própio ejecutable, pero no se como hacerlo. Gracias |
#2
|
||||
|
||||
Me imagino que el problema solo se te presenta en Windows vista, si es así, prueba a guardar el .ini en la carpeta del usuario y no en "Archivos de programas" .
Si al probar lo que te he dicho ves que el problema persiste, entonces puede que sea alguna directiva de seguridad del dominio, creada por el administrador de la red (creo yo).
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!" http://www.purodelphi.com/ http://www.nosolodelphi.com/ |
#3
|
|||
|
|||
Gracias Jhonny pero no es ese el problema. 1º el caso se reproduce tanto en XP como en Vista. 2º la aplicación no trabaja en red, lo hace en un solo PC.
Lo que yo necesito es algo que observo al instalar alguna aplicación comercial en la que el própio programa instalador pregunta si la aplicación la va a ajecutar solo el Administrador o todos los usuarios del PC. Muchas gracias |
#4
|
|||
|
|||
Puedes intentar Grabar el INI en
C:\Archivos de programa\Archivos comunes\TU_PROGRAMA.. Esta carpeta es de uso comun Limitado y/o Administrador
__________________
Poco ha de saber el que no pregunta.. Yo por eso soy un pregunton |
#5
|
|||
|
|||
Gracias por contestar cicomp, pero con eso se mantiene el problema.
Como dije en el primer hilo que puse, estoy casi seguro que el problema se solucionaría con la inclusión o modificación de alguna clave en el registro de windows pero, desgraciadamente, no se cual es. Me extraña que a nadie se le haya presentado este problema. Que una aplicación tenga que gestionar un archivo .ini en el cual se le cambia el color a unas Fonts. y poco más, y al ejecutarse esta aplicación en una cuenta que no tiene privilegios de administrador, Windows bloquea el acceso de la aplicación al archivo .ini. Espero que alguien que sepa algo de esto me pueda ayudar. Gracias. |
#6
|
|||
|
|||
Cita:
|
#7
|
||||
|
||||
Yo recuerdo un problema parecido hace muchos años y me parece que pasé de guardar lo que necesitaba en un ".ini" y simplemente lo guardé en un ".txt" y solucionado. (Era para una práctica de la facultad y no tenía ganas de romperme la cabeza.)
|
#8
|
||||
|
||||
Aunque un poco tarde, respondo. Pero antes:
¿La instalación previa en el PC se hizo como administrador? y si es así, ¿El archivo .ini se suministra cin la instalación, o se crea en tiempo de ejecución?. Si la primera pregunta es afirmativa, y ademas el .ini se suministra, ese archivo "pertenece" al administrador que lo instaló ( si éste lo escribió), por lo que un usuario normal no lo puede reescribir, no tiene permisos. Si es este el caso, lo más sencillo es que el .ini se cree en tiempo de ejecución (con unos parámetros por defecto...), con lo que los permisos de escritura serán del usuario, a no ser que un administrador sea el primero en ejecutar el programa. Si el .ini debe ser dependiente de usuario, lo mejor es que cada usuario tenga su .ini en una carpeta propia: C:\Documents and Settings\Usuario.... Saludos. Última edición por escafandra fecha: 10-10-2008 a las 00:10:17. |
#9
|
|||
|
|||
A mi me ocurrió algo similar.
Efectivamente como han comentado un usuario limitado no tiene permiso para escribir en muchas carpetas, ni tampoco en muchas claves del registro de Windows (HKLM-Key Local Machine). Lo mejor es grabar en carpetas que tienen permisos tanto para admin como limitados. Por ejemplo c:\documents And Settings\Alluser\Datos de programa\MIAPLICACION. O bien grabar en claves del registro de Windows como HKCU.Clave de Usuario Actual. Con respecto a las carpetas, puse un truco de como "Obtener carpetas especiales". Otra manera que intente y no me funcionó es utilizar un procedimiento RunAs para desde un usuario limitado ejecutar la aplicación con privilegios de Administrador. Espero que te sirva... |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Que una aplicación system ejecute a otra con privilegios del usuario activo. | l30 | API de Windows | 1 | 28-06-2008 18:46:26 |
Chequear privilegios de administrador | miguel gomez | API de Windows | 5 | 06-12-2006 12:20:05 |
Dar privilegios de Administrador a la Aplicación | PoZi | API de Windows | 16 | 26-04-2006 20:17:52 |
Privilegios en interbase | acrophet | Conexión con bases de datos | 1 | 09-02-2004 15:07:35 |
|