Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 04-07-2008
vtorres vtorres is offline
Miembro
 
Registrado: may 2005
Posts: 18
Poder: 0
vtorres Va por buen camino
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
Responder Con Cita
  #2  
Antiguo 04-07-2008
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.058
Poder: 29
jhonny Va camino a la famajhonny Va camino a la fama
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/
Responder Con Cita
  #3  
Antiguo 05-07-2008
vtorres vtorres is offline
Miembro
 
Registrado: may 2005
Posts: 18
Poder: 0
vtorres Va por buen camino
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
Responder Con Cita
  #4  
Antiguo 05-07-2008
pcicom pcicom is offline
Miembro
 
Registrado: may 2003
Ubicación: MONTERREY MEXICO
Posts: 253
Poder: 21
pcicom Va por buen camino
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
Responder Con Cita
  #5  
Antiguo 06-07-2008
vtorres vtorres is offline
Miembro
 
Registrado: may 2005
Posts: 18
Poder: 0
vtorres Va por buen camino
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.
Responder Con Cita
  #6  
Antiguo 21-08-2008
Wellnic Wellnic is offline
Miembro
 
Registrado: mar 2007
Posts: 68
Poder: 18
Wellnic Va por buen camino
Cita:
Empezado por vtorres Ver Mensaje
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.
Creo que eso se puede hacer con dos elementos: una ventana normal y corriente, que capte el usuario y contraseña, y la función CreateProcessWithLogon, que procese esos datos. Lamentablemente, esto último sólo lo pude implementar en VB, ya que mis conocimientos de programación no llegan a estas alturas
Responder Con Cita
  #7  
Antiguo 26-08-2008
Avatar de kuan-yiu
[kuan-yiu] kuan-yiu is offline
Miembro Premium
 
Registrado: jun 2006
Ubicación: Galicia. España.
Posts: 1.017
Poder: 19
kuan-yiu Va camino a la fama
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.)
Responder Con Cita
  #8  
Antiguo 09-10-2008
Avatar de escafandra
[escafandra] escafandra is offline
Miembro Premium
 
Registrado: nov 2007
Posts: 2.197
Poder: 20
escafandra Tiene un aura espectacularescafandra Tiene un aura espectacular
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.
Responder Con Cita
  #9  
Antiguo 07-11-2008
alquimista alquimista is offline
Miembro
 
Registrado: ene 2008
Posts: 203
Poder: 17
alquimista Va por buen camino
Smile

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...
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
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


La franja horaria es GMT +2. Ahora son las 22:15:40.


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