Пустая строка в функции Environment.GetFolderPath() C#
Добрый день!
Ситуация такая: при вызове функции Environment.GetFolderPath() для получения пути к папке Temp или Мои документы возвращается пустая строка. Происходит это, по всей вероятности, из-за того, что в пути присутствуют русские символы (папка Пользователи). Как обойти это? Спасибо! P.S. IDE - SharpDevelope |
Цитата:
Посмотреть, в какой кодировке идет работа? К сожалению сейчас проверить не на чем. |
|
|
LilLoco, А может она и должна отдавать пустую строку?
Ей кстати не передан никакой параметр. Документация Environment::GetFolderPath - метод (Environment::SpecialFolder) Получает путь к особой системной папке, указанной в заданном перечислении. Цитата:
Тип: System.String Путь к указанной особой системной папке, если эта папка физически существует на компьютере; в противном случае — пустая строка (""). Папка физически не существует, если она не была создана операционной системой, была удалена или является виртуальным каталогом, таким как "Мой компьютер", которому не сопоставлен физический путь. Пример: Код:
// Sample for the Environment.GetFolderPath method В перечислении я не нашел папку Temp. Возможно ее надо где-то дополнительно указывать в системе. Пока не знаю. Пусть отдельным сообщением. Добавление своей папки как SpecialFolder. Google : Sams Teach Yourself Visual Studio .NET 2003 in 21 DaysСсылка на кусок кода. Что он делает я не вчитывался. Вроде похоже. Set Environment.SpecialFolder.LocalApplicationData using C# Предупреждение: Цитата:
|
Цитата:
Цитата:
К системной папке путь возвращается. Исходя из этого я и подумал, что проблема в русских символах. Т.к. в пути к моим документам есть директория Пользователи. Проблема, видимо, в среде SharpDevelove. Через MS Visual Studio 2010 Express все отлично работает. Спасибо за ссылки, будет интересно изучить. |
Мне только одно интересно — почему не пользуются рекомендованные CSIDL (Windows) или новое Known Folders (Windows)?
|
Цитата:
|
Время: 01:31. |
Время: 01:31.
© OSzone.net 2001-