crear archivos en unidad c:

Buenas, desde que hemos puesto windows 7 y 8 en la empresa, hemos tenido un problemilla cuan no sabemos como reparar, el tema esque nuestro programa escribe logs y archivos txt en la raíz de la c:, en windows xp no hemos tenido ningún problema ya que no pide derechos de nada pero en windows 7 y 8 si.
Alguien sabe como se puede quitar ese permiso para que no lo pida ?
La unidad del sistema está protegida por el propio diseño de seguridad de Windows Vista o superior. Si no eres administrador, no puedes escribir en la unidad del sistema.

Para desactivar ese permiso puedes, de menos malo a más malo:
- Ejecutar el programa como administrador, lo cual le da permisos de modificación del sistema al programa.
- Desactivar el Control de Cuentas de Usuario (UAC), lo cual le permitiría a cualquier programa ejecutarse con los permisos del usuario que ejecuta la aplicación. Esto deja la seguridad al nivel de la del XP, un nivel bastante inferior.
- Modificar los permisos de la raíz para que cualquier usuario pueda acceder. La peor solución con diferencia. Desprotege la unidad del sistema y, por herencia, puede también desproteger a muchos archivos del núcleo y del sistema. En Windows 8 puede resultar fatal llegando a no iniciar Windows, ya que comprueba la integridad del núcleo y sus permisos.

En cualquier caso, Windows dispone de un sistema de compatibilidad diseñado para ese tipo de aplicaciones. Cuando una aplicación intenta escribir en una carpeta que ahora necesita de permisos más elevados que los de su ejecución, Windows redirige los datos a lo que llama el Almacenamiento Virtual (o Virtual Store), una serie de carpetas situadas en la carpeta del usuario donde se almacenan los archivos que no se pueden escribir en carpetas protegidas. Mira a ver si en %LOCALAPPDATA%\VirtualStore están tus logs perdidos.
Si el programa es vuestro (o de una fuente fiable), simplemente botón derecho sobre el ejecutable>propiedades, y en la pestaña compatibilidad marcas "Ejecutar este programa como administrador".
Tambien desde el panel de control puedes bajar el UAC y decirle no actue el UAC y asi te eja u bonito XP, es decir ejecuta lo que te fies ya que no tendras el mensaje para preguntarte si estas seguro de hacer algo.,.

Esta función viene instalada por defecto en Vista y Windows 7. Para acceder a ella y deshabilitarla, ve a Panel de control > Cuentas de usuario > Cambiar la configuración de Control de cuentas de usuario. Te aparecerá esta ventana:


Saludos
JuananBow escribió:- Modificar los permisos de la raíz para que cualquier usuario pueda acceder. La peor solución con diferencia. Desprotege la unidad del sistema y, por herencia, puede también desproteger a muchos archivos del núcleo y del sistema. En Windows 8 puede resultar fatal llegando a no iniciar Windows, ya que comprueba la integridad del núcleo y sus permisos.

Cosa que dudo que puedan hacer, modificar o borrar archivos importantes si no se activa la opcion de ver los archivos y carpetas del sistema que por defecto viene desactivada.
Por otro lado como mucho podrán borrar los archivos del boot y los de paginación, hibernación y demás, si antes son desbloqueados y en cuanto al boot normalmente te lo suele meter en otra partición que el programa de instalación de windows crea y posteriormente oculta para que no puedas manipular nada del arranque.
El nucleo o kernel de windows normalmente está en el directorio system32, otra pequeña parte del kernel también se encuentra junto con el boot. En C raíz no hay nada exceptuando algunos archivos como el NTKRLN, NTDETECT y algunos más para la retrocompatibilidad con programas antiguos, además de los de memoria virtual e hibernación que están bloqueados.

Para poder escribir en C se podría intentar tomar posesión de la unidad, como no creo que te deje lo mejor es loguearte como el usuario Administrador.
Para hacer esto primero tendrás que activar el usuario, si tienes la version profesional, la ultimate o la corporativa es bien facil hacerlo, si no habría que desbloquearlo desde la consola de ms-dos, una vez hecho esto cierras sesión o reinicias y ya podrás loguearte con el usuario Administrador.
Ahora que ya estás con el usuario Aministrador ve al panel de control y desactiva el control de cuentas de usuario (UAC)
Yo no digo borrar, yo digo desproteger. Si tomas posesión de la raíz, por herencia también lo haces de otras tantas carpetas, como Program Files (Archivos de Programa) o la carpeta Windows. Dejas el sistema de ficheros para que cualquier programa que se ejecute con tus permisos pueda modificar lo que quiera. Esto puede conllevar a programas (virus) que se puedan introducir en la carpeta Windows o en la carpeta de los programas, que las aplicaciones Metro no funcionen en Windows 8, que Windows de error de inicio de sesión de la cuenta de usuario o cosas similares; lo cual es mucho más grave que "borrar".
5 respuestas