|
Вопрос # 2 162/ вопрос открыт / |
|
Доброго времени суток, уважаемые эксперты!
Понимаю, что вопрос тупой, но прошу строго не судить. Как программным путем получить в String полные пути к папке Windows, Programm Files, документам курент юзера?
 |
Вопрос задал: Nasgool (статус: 2-ой класс)
Вопрос отправлен: 6 декабря 2008, 12:28
Состояние вопроса: открыт, ответов: 1.
|
Ответ #1. Отвечает эксперт: min@y™
Я, конечно, могу написать типа: "читай SDK по функции GetSystemDirectory, GetWindowsDirectory и пр.", но есть способ лучше.
Скачай пакет модулей Delphi Works. Там в модуле dwFiles.pas есть функция, которая тебе нужна:
function dwGetSpecialFolder(const SpecialFolder: TDWSpecialFolder): String;
var
pPath: PChar;
Len: DWord;
begin
GetMem(pPath, MAX_PATH);
case SpecialFolder of
dwspfSystem: GetSystemDirectory(pPath, MAX_PATH);
dwspfTempDir: begin
Len:= GetTempPath(MAX_PATH, pPath);
if Len > MAX_PATH then GetTempPath(Len - 1, pPath);
end;
dwspfWindows: GetWindowsDirectory(pPath, MAX_PATH);
else SHGetSpecialFolderPath(GetCurrentProcess,
pPath,
dwSpecialFolderToCSIDL(SpecialFolder),
FALSE);
end;
result:= IncludeTrailingBackslash(pPath);
FreeMem(pPath, MAX_PATH);
end;
 |
Ответ отправил: min@y™ (статус: Доктор наук)
Время отправки: 6 декабря 2008, 12:45
Оценка за ответ: 5
Комментарий к оценке: Главное смысл мне понятен и все заработало. Спасибо.
|
Мини-форум вопроса
Всего сообщений: 2; последнее сообщение — 6 декабря 2008, 18:31; участников в обсуждении: 2.
|
Nasgool (статус: 2-ой класс), 6 декабря 2008, 12:49 [#1]:
Нужно для консольного фильтра. В параметрах указывается список ключей регистра, фильтр читает данные и, если в них указан путь к какой-либо папке, меняет ее на корректную для данной системы. Затем прописывает их в реестр. Необходимо для автоматизации установки приложений.
|
|
Вадим К (статус: Академик), 6 декабря 2008, 18:31 [#2]:
не понимаю, и для кого я пишу статьи...
Сохранение настроек
Галочка "подтверждения прочтения" - вселенское зло.
|
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|