Windows 7 y Vista incluyen tanto mejoras de seguridad que limitan el acceso a los archivos del disco. A menos que los privilegios son criados con acceso de administrador, todos los archivos que no sean los datos de los usuarios se limitan a las carpetas acceso de lectura. Los programas creados con Visual Studio 2010 que funcionaron bien en Windows XP pueden tener problemas cuando se mueve a Windows 7 o Vista.
El problema
Windows 7 utiliza un modelo de seguridad que impide que programas malintencionados modificar código ejecutable. Sólo los programas con acceso administrativo se permite escribir en las carpetas de la unidad C:. Cualquier intento de modificar otros archivos dará lugar a un error. Incluso con acceso administrativo, Windows 7 a menudo se abre una ventana emergente que le pregunta si se pueden hacer modificaciones. La única carpeta en la que el acceso de escritura se puede hacer es la carpeta de usuario, y sólo en la carpeta creada para el usuario que ha iniciado sesión en.
Los errores en Visual Studio
Aunque la mayoría de estos errores se producen durante la ejecución de los programas creados por Visual Studio 2010, hay ocasiones en que Visual Studio sí plantea este error. Por lo general, esto ocurre cuando la publicación de contenidos web. Para resolver este problema, guardar el proyecto actual, cierre Visual Studio, a continuación, reiniciarlo pulsando el botón derecho sobre el icono de Visual Studio y elija la opción "Ejecutar como administrador" opción. Una vez que se inicia Visual Studio, abra el proyecto y publicar el contenido.
Problemas al ejecutar programas
La mayoría de los errores se producen cuando se ejecutan los programas. Los programas que se escriben en la carpeta actual fallarán cuando se despliega en otras máquinas, pero el marco sí ofrece una manera fácil de obtener lugares en los que con seguridad se pueden almacenar datos. La función devuelve la cadena System.Environment.GetFolderPath ruta de acceso a los lugares de almacenamiento seguras. Para guardar un archivo en la carpeta de datos de aplicación, utilice:
path = System.Environment.GetFolderPath (System.Environment.LocalApplicationData)
Esta función también devuelve la ubicación de los datos de aplicación común, bibliotecas, Mi Música, Mis documentos y una serie de otros lugares. Aquí están algunos otros valores de ruta de enumeración:
datos de los programas compartidos por todos los usuarios, - CommonApplicationData
ApplicationData - datos de aplicación específicos del usuario,
MyDocuments - usuario de la carpeta Mis documentos,
MyMusic - usuario de la carpeta Mi música,
MyPictures - carpeta Mis imágenes del usuario,
Plantillas - ubicación de los archivos de plantilla,
CommonDocuments - carpeta compartida de documentos,
CDBurning - carpeta de archivos temporales que ocupan para ser quemado en un CD.
El aumento de los privilegios de escritura
Windows 7 ofrece una manera de desactivar estos errores. Cuando aparezca la ventana emergente, haga clic en el botón "Cambiar cuando estos errores aparecen" mueva el control deslizante a su valor máximo. Ahora todos los programas tienen acceso de escritura en toda la unidad de disco. Esto no es recomendable. La unidad de disco es ahora vulnerable a una serie de ataques y programas creados en su ordenador no pueda ejecutarse en otras máquinas. Si usted planea en la distribución o venta de sus programas, tomar el tiempo para cambiarlos para acceder a un almacenamiento seguro.