Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.07.31;
Скачать: CL | DM;

Вниз

Как получить путь к папке Documents and Settings ???   Найти похожие ветки 

 
rolex   (2005-06-02 11:09) [0]

Как получить путь к папке Documents and Settings ???


 
Юрий Зотов ©   (2005-06-02 11:13) [1]

См. SHGetSpecialFolderPath


 
Cosinus ©   (2005-06-02 11:16) [2]

А не это разве SHGetSpecialFolderLocation + SHGetPathFromIDList ?


 
rolex   (2005-06-02 11:17) [3]

SHGetSpecialFolderPath там нету пути на конкретно Documents and Settings!
Есть только Documents and Settings\пользователь\спец. папки


 
Юрий Зотов ©   (2005-06-02 15:23) [4]

> rolex   (02.06.05 11:17) [3]
> SHGetSpecialFolderPath там нету пути на конкретно Documents
> and Settings!
> Есть только Documents and Settings\пользователь\спец. папки

Естественно. Его и не должно быть - это же не конечная, а промежуточная папка. Но почему бы не сделать, например, так:
1. Берем для текущего юзера и для All Users.
2. Выделяем общую часть - это и будет Documents and Settings.


 
Gero ©   (2005-06-02 15:41) [5]


> 1. Берем для текущего юзера и для All Users.
> 2. Выделяем общую часть - это и будет Documents and Settings.

Путь может быть различен для разных пользователей.


 
wal ©   (2005-06-02 16:22) [6]

\\ads\dfs\profiles\wal\MyDocuments

Так у меня выглядит путь к "Моим документам", какую часть этого считать "Documents and Settings"?
Если ее просто считать папкой, то поиском FindFirst(Next), если же придавать этой папке какой-то специфический смысл, то сначала его (этот смысл) определить нужно. Сама папка "С:\Documents and Settings", создаваемая при установке, никакого специфического смысла не имеет.

С уважением.


 
rolex   (2005-06-05 12:27) [7]

Я почему спрашиваю, передомной следующая задача:
Нужно вывести список папок с временными файлами для всех пользователей.

Я это думаю сделать так:
Получаю диск, на котором установлена винда.
К этому диску приписываю +"Documents and Settings".
Далее из папки Documents and Settings для каждой подпапки (а подпапки - это пользователи) приписываю "\Local Settings\Temp".
Как думаете, могут ли быть исключения?
К примеру, папка Documents and Settings будет называться по другому или находиться в другом месте, или может ещё что-нибудь?


 
Anatoly Podgoretsky ©   (2005-06-05 12:40) [8]

Gero ©   (02.06.05 15:41) [5]
А тогда о чем говорить.

rolex   (05.06.05 12:27) [7]
Ересь, папка TEMP конкретного пользователя может быть где угодно. Это определяется не папкой, а переменной пользователя.


 
rolex   (2005-06-05 13:09) [9]

Ну и как тогда решить вопрос?


 
Anatoly Podgoretsky ©   (2005-06-05 13:12) [10]

А какой вопрос?


 
rolex   (2005-06-05 14:01) [11]

Нужно вывести список папок с временными файлами для всех пользователей.


 
Ученик   (2005-06-05 14:34) [12]

>rolex   (05.06.05 14:01) [11]

Может быть через обработку HKEY_USERS,
HKEY_USERS\????\Environment


 
Ученик   (2005-06-05 14:50) [13]

>Ученик   (05.06.05 14:34) [12]
Похоже, там, не все пользователи :-(


 
rOOse ©   (2005-06-05 15:42) [14]

GetTempPath


 
Ученик   (2005-06-05 15:57) [15]

>rOOse ©   (05.06.05 15:42) [14]
Это будет работать для текущего пользователя

P.S. >rolex   (02.06.05 11:09)
Еще можно использовать GetProfilesDirectory


 
rolex   (2005-06-05 19:54) [16]

GetProfilesDirectory - а можно по подробнее?


 
Ученик   (2005-06-05 22:08) [17]

>rolex   (05.06.05 19:54) [16]



The GetProfilesDirectory function retrieves the path to the root directory where all user profiles are stored.

BOOL GetProfilesDirectory(
 LPTSTR lpProfilesDir,  // profile path buffer
 LPDWORD lpcchSize      // size of profile path buffer
);

The following is an example of the path returned by the GetProfilesDirectory function:

C:\Documents and Settings

Userenv.dll



 
Ученик   (2005-06-05 22:15) [18]

>Ученик   (05.06.05 22:08) [17]

Пример на Delphi



function GetProfilesDirectory(
 lpProfilesDir: PChar;   // profile path buffer
 var lpcchSize: DWord    // size of profile path buffer
): Bool; stdcall; external "userenv.dll" name "GetProfilesDirectoryA";

procedure TForm1.Button1Click(Sender: TObject);
var
 szBuffer: array[0..MAX_PATH] of Char;
 dwSize: DWord;
begin
 dwSize := MAX_PATH;
 if GetProfilesDirectory(szBuffer, dwSize) then
   ShowMessage(szBuffer)
end;




Страницы: 1 вся ветка

Текущий архив: 2005.07.31;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.043 c
14-1120652379
Empleado
2005-07-06 16:19
2005.07.31
The Source


14-1120817921
DeepProg
2005-07-08 14:18
2005.07.31
Непонятная AV


1-1121248786
Kray
2005-07-13 13:59
2005.07.31
Менеджер проектов


8-1111922435
seregka
2005-03-27 15:20
2005.07.31
Изменение качества при неизменном размере изображение


14-1120721960
Ega23
2005-07-07 11:39
2005.07.31
Напомните, как с ошибкой бороться?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский