2015-07-15 3 views
0

Я спасаю файл в специальную папку рабочего стола как так:Как я могу управлять специальной папкой рабочего стола?

String testFile = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Desktop), "iTextSharpTest.pdf"); 
File.WriteAllBytes(testFile, bytes); 

У меня есть проблема с ним в том, что мой сыр продолжает получать переехал - папка не является статичным, но случайным образом меняется. Например, прямо сейчас, SpecialFolder.Desktop является C: \ Users \ TEMP.SP.015 \ Desktop

В прошлом, однако, это было

TEMP.SP 
-and: 
TEMP.SP.000 . . . TEMP.SP.014 

IOW, я никогда не знаю, когда путь изменится с «C: \ Users \ TEMP.SP.015 \ Desktop» на «C: \ Users \ TEMP.SP.016 \ Desktop»

Как сохранить определенную, согласованную папку, такую ​​как та, в которой мой файл сохранен?

В качестве побочного примечания, когда эти новые папки созданы - IOW, что заставляет Windows решать, что пришло время «добавить еще одно крыло в особняк», так сказать?

BTW, это происходит на Windows Server 2008 R2 Standard, Service Pack 1, machine.

+1

См. Эти ссылки. По какой-то причине вы получаете временный профиль пользователя. : http://www.sysprobs.com/fixed-temporary-profile-windows-8-and-8-1-problem & http://answers.microsoft.com/en-us/windows/forum/windows_8-system/windows-8-keep-loading-with-tempor-profile/583abee6-645d-42a1-88da-063547c6eea0 & http://setspn.blogspot.co.uk/2012/09/temporary-profiles-and-iis-application .html – PaulF

ответ

1

попробуйте использовать SpecialFolder.DesktopDirectory:

Строка TestFile = Path.Combine (Environment.GetFolderPath (Environment.SpecialFolder.DesktopDirectory), "iTextSharpTest.pdf"); File.WriteAllBytes (testFile, bytes);

+0

Это (DesktopDirectory вместо Desktop) дает мне то же точное местоположение/строку. –

Смежные вопросы