2015-07-07 12 views
5

Próbowałem to:Jak uzyskać katalog plików wideo użytkownika?

userVideosDirectory = Directory.GetParent(Environment.GetFolderPath 
           (Environment.SpecialFolder.ApplicationData)).FullName + "\\Videos"; 

Ale to daje mi:

C:\Users\username\AppData\Videos 

Ale ja nie mam katalogu AppData nie tylko:

C:\Users\username\Videos 

Jak mogę uzyskać Filmy katalog bez AppData?

+1

'Environment.SpecialFolder.ApplicationData' daje ścieżkę folderu AppData. –

Odpowiedz

12

można uzyskać katalogu wideo za pomocą właściwość Environment.SpecialFolders.MyVideo:

string path = Environment.GetFolderPath(Environment.SpecialFolder.MyVideos); 

Uwaga że enum zawiera wiele więcej folderów można uzyskać w ten sposób.

2

Czy próbowałeś tego?

string path = System.Environment.GetFolderPath(Environment.SpecialFolder.MyVideos); 
1

Coś takiego:

int userVideosDirectory = (Directory.GetParent(Environment.GetFolderPath 
            (Environment.SpecialFolder.ApplicationData)).FullName + "\\Videos").IndexOf(@"\AppData\"); 

if (userVideosDirectory != 0) 
{ 
    string str = (Directory.GetParent(Environment.GetFolderPath 
         (Environment.SpecialFolder.ApplicationData)).FullName + "\\Videos").Remove(userVideosDirectory, @"\AppData".Length); 
} 
+0

@ Downa opiekuna do wyjaśnienia proszę? Moja droga jest trochę trudniejsza niż w przypadku Patricka, ale robi to, co ma zrobić. –

+0

Będę. Możesz zmienić lokalizację dowolnego specjalnego folderu w systemie Windows. Oznacza to, że nie można polegać na łączeniu ścieżek, takich jak 'ApplicationData' i' Video'. Może to być coś zupełnie innego niż 'D: \ myvids'. –

+1

Stoję poprawione! Moje rozwiązanie nie jest dynamiczne. –

Powiązane problemy