Estoy trabajando en una aplicación que guarda un archivo en Path.GetDirectoryName(FilePath)
donde FilePath = Application.ExecutablePath
contiene información sobre licencias. Si ejecuto el programa desde VS, funciona bien, pero si hago un instalador e instalo y luego lo ejecuto, el programa piensa que el archivo ya existe. Cambié mi programa para mostrar en un cuadro de mensaje mi FilePath
y si File.Exists(FilePath)
devuelve true
o false
. Así que miré en esa ruta, habilité mostrando los archivos ocultos y del sistema, F5'd varias veces y nada. El archivo no existe, pero File.Exists(FilePath)
devuelve verdadero. ¿Alguna idea de por qué está pasando esto y cómo puedo solucionarlo?File.Exists que devuelve true para un archivo que no existe
Estoy usando Windows Vista, Visual Studio 2010, C# y creé mi instalador con el Proyecto de configuración de VS.
Editar: Mi ruta es: C: \ Archivos de programa (x86) \ Helio \ License.xml.
Esto es parte de mi código:
MessageBox.Show("LicenseFileName: " + LicenseFileName); // LicenseFileName: C:\Program Files (x86)\Helium\License.xml
System.Diagnostics.Process.Start(LicenseFileName); // Nothing happens
MessageBox.Show("File.Exists(LicenseFileName): " + File.Exists(LicenseFileName)); // File.Exists(LicenseFileName): true
olvidaba decir que ya tenía la aplicación instalada antes de que el archivo utilizado para existir. Lo desinstalé usando el Panel de control.
¿Es una ruta absoluta o una ruta relativa? Mostrarnos el camino real también puede ser útil. – bblack
Intenta abrir el archivo mediante Ejecutar. Podría estar súper escondido. Además, recomendaría no usar Windows Vista, para nada. –
¿Estás diciendo literalmente 'FilePath = Application.ExecutablePath; File.Exists (FilePath);'? Una muestra de código más completa sería útil aquí. – Sorpigal