2009-03-11 31 views
259

¿Cómo obtengo una ruta al escritorio para el usuario actual en C#?¿Cómo obtener una ruta al escritorio para el usuario actual en C#?

Lo único que pude encontrar fue la única clase VB.NET-SpecialDirectories, que tiene esta propiedad:

My.Computer.FileSystem.SpecialDirectories.Desktop 

¿Cómo puedo hacer esto en C#?

+1

Sugerencia: tratar http://msdn.microsoft.com antes de que Google. Comenzará con una respuesta más enfocada e incluirán contenido que no sea de Microsoft ahora. Si no lo encuentras, intenta visitar Google. Esta respuesta está en la primera página de resultados. –

+2

I * did * try msdn. Sin embargo, probablemente no estaba haciendo la pregunta correcta. –

+0

Tienes un punto. Ellos tienen algunos errores allí. Informaré de esto. Intenté lo siguiente y no fue óptimo: http://social.msdn.microsoft.com/Search/en-US/?query=path%20to%20desktop%20for%20current%20user%20environment&refinement=-112,-108 , -111, -109, -118 & ac = 8 –

Respuesta

592
string path = Environment.GetFolderPath(Environment.SpecialFolder.Desktop); 
+0

Los elementos devueltos desde esta carpeta son diferentes a lo que muestra el Explorador de Windows. P.ej. en mi XP, no incluye Mis documentos, Mi PC, Mis sitios de red, Papelera de reciclaje y algunos otros accesos directos. ¿Alguna idea de cómo obtener las mismas entradas que Windows Explorer? – newman

+3

Quizás esté buscando SpecialFolder.DesktopDirectory? Esta es la carpeta física en lugar de la lógica. –

+0

¿Cómo obtener la ruta con javascript? – Matthew

17
string filePath = Environment.GetFolderPath(Environment.SpecialFolder.Desktop); 
string extension = ".log"; 
filePath += @"\Error Log\" + extension; 
if (!Directory.Exists(filePath)) 
{ 
     Directory.CreateDirectory(filePath); 
} 
+7

no estoy seguro de que es una buena idea crear un directorio de escritorio ... pero la validación sobre la existencia de la ruta 1 es siempre una buena idea. –

Cuestiones relacionadas