Las rutas relativas en C# están actuando de forma incorrecta para mí. En un caso, estoy manejando un conjunto de objetos Texture2d en mi aplicación, tomando el nombre del archivo y usándolo para ubicar los archivos y cargar las texturas en los objetos de Imagen. A continuación, cargo una imagen de una ruta relativa almacenada en el archivo de clase y uso una ruta relativa que debe ser relativa a Content/gfx. Pero si no carga estas texturas, estas rutas relativas fallarán. ¿Cómo puedo asegurar que mi camino rel no fallará? En el trabajo web, todas las rutas rel están relacionadas con la carpeta en la que está el archivo en el que estamos trabajando, ¿puedo configurarlo de esta manera y hacer todas las rutas rel a la carpeta raíz donde se encuentra mi aplicación?Rutas relativas en Winforms
Respuesta
yo no recomiendo el uso de rutas relativas en el primer lugar.
Usa Path.Combine para convertir tus rutas relativas en rutas absolutas. Por ejemplo, se puede usar esto para obtener la ruta completa para el archivo EXE de inicio:
string exeFile = (new System.Uri(Assembly.GetEntryAssembly().CodeBase)).AbsolutePath;
Una vez que tienes eso, se puede obtener es directorio:
string exeDir = Path.GetDirectoryName(exeFile);
y convertir su ruta relativa a un absoluto ruta:
string fullPath = Path.Combine(exeDir, "..\\..\\Images\\Texture.dds");
Esto será mucho más fiable que tratar de utilizar rutas relativas.
Si usted está esperando un recurso para estar en el mismo directorio que el archivo ejecutable o en un subdirectorio de ese directorio, lo mejor es utilizar siempre
string fullPath = System.IO.Path.Combine(System.IO.Directory.GetCurrentDirectory(), subPath);
o si está preocupado de que el directorio de trabajo que podría estar equivocado usted puede hacer esto:
string fullPath = System.IO.Path.Combine(System.Reflection.Assembly.GetEntryAssembly().Location, subPath);
// [nombre de espacio] es el espacio de nombres // debería copiar el archivo .-- en Depug archivo
string path = (Assembly.GetEntryAssembly().Location + "");
path = path.Replace("name space", "filename.--");
// [WindowsFormsApplication4] is name space
//you should copy your "mysound.wav" into Depug file
//example::
string path_sound = (Assembly.GetEntryAssembly().Location + "");
path_sound = path_sound.Replace("WindowsFormsApplication4.exe", "mysound.wav");
SoundPlayer player1 = new SoundPlayer(path_sound);
player1.Play();
- 1. paquete rutas relativas en R
- 2. Rutas relativas en Visual Studio
- 3. Conversión de rutas relativas a rutas absolutas
- 4. .load() y las rutas relativas
- 5. rutas relativas para bibliotecas compartidas
- 6. .htaccess reescritura rompe rutas relativas
- 7. rutas relativas utilizando extjs 4
- 8. Nuevo en Ant - Problema con rutas relativas
- 9. rutas relativas de archivos en Perl
- 10. Rutas relativas en el recurso springpath class
- 11. Rutas relativas en Flying Saucer XHTML?
- 12. ¿Cómo manejar rutas relativas en node.js/express?
- 13. Rutas relativas de imágenes en JavaScript
- 14. Obtención de rutas relativas en Vim
- 15. Rutas relativas para portátiles portátiles en mathematica
- 16. Rutas relativas con módulos/paquetes RequireJS
- 17. MvC3 las rutas de URL relativas - Javascript
- 18. MENOS importación de CSS y rutas relativas
- 19. Rutas relativas en el servicio WCF alojado en IIS
- 20. Copia recursiva en las rutas de destino relativas
- 21. ¿Cómo funcionan las rutas relativas de archivos en Eclipse?
- 22. Trabajando con rutas de archivos relativas en .Net
- 23. Rutas relativas en un código de aplicación ASP.NET detrás de
- 24. Uso de rutas relativas para registrar archivos en Pylon's development.ini
- 25. Rutas relativas en scripts ejecutados por trabajos cron
- 26. ¿Cómo usar las rutas relativas/absolutas en las URL css?
- 27. Las rutas relativas no funcionan en Xcode C++
- 28. ¿Cómo se definen las rutas relativas en Visual Studio Project?
- 29. Rutas relativas al repositorio en el archivo .hgrc de Mercurial
- 30. HTML img y ASP.NET Imagen y rutas relativas
¿Es esto de depuración o en modo desplegado? –