Главная страница
    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.034 c
3-1119608159
Lordalexander
2005-06-24 14:15
2005.07.31
В-BDgrid


1-1121197077
ronyn
2005-07-12 23:37
2005.07.31
Загрузка программы при загрузке ОС.


4-1117438560
Гость2
2005-05-30 11:36
2005.07.31
Как добавить иконку в заголовок окна?


3-1119607989
Viktop
2005-06-24 14:13
2005.07.31
Добавление данных (SQL)


5-1090854143
sirin
2004-07-26 19:02
2005.07.31
ActiveX Control





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский