Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2006.03.12;
Скачать: [xml.tar.bz2];

Вниз

Поиск временного каталога.   Найти похожие ветки 

 
Grant   (2005-12-20 13:59) [0]

Всем привет. Мне необходимо получить строку с временным каталогом Windows. Есть функция - GetTempPath, которая собственно его и возвращает. Но есто одно неудобство. Она возвращает путь к примеру - С:\DOCUME~1\LOCAL~1\Temp.
Этот путь я вывожу например с помощью ShowMessage.
И некоторым пользователям непонятно что такое DOCUME~1. Подскажите есть ли возможность получать полный путь к каталогу. Спасибо.


 
kami ©   (2005-12-20 14:08) [1]

Использовать SHGetSpecialFolderLocation=>SHGetPathFromIDList


 
kami ©   (2005-12-20 14:19) [2]

Упс... прошу прощения, нет такого CSIDL для получения temp папки.


 
Rouse_ ©   (2005-12-20 14:20) [3]

type
 function GetLongPathNameA(lpszShortPath, lpszLongPath: PChar;
   cchBuffer: DWORD): DWORD; stdcall external kernel32;

...

procedure TForm1.Button2Click(Sender: TObject);
var
 ShortPath, LongPath: array[0..MAX_PATH - 1] of Char;
begin
 if GetTempPath(MAX_PATH, @ShortPath[0]) > 0 then
   if GetLongPathNameA(ShortPath, @LongPath[0], MAX_PATH) > 0 then
     ShowMessage(String(LongPath));
end;


 
Grant   (2005-12-20 15:25) [4]

Ну и где мне взять GetLongPathNameA? Что-то не могу её я найти.


 
Rouse_ ©   (2005-12-20 15:37) [5]

Я же тебе показал как его обьявить...
type
function GetLongPathNameA(lpszShortPath, lpszLongPath: PChar;
  cchBuffer: DWORD): DWORD; stdcall external kernel32;


 
Grant   (2005-12-20 15:47) [6]

Спасибо большое. Я просто протупил. Забыл как дергаются функции из dll.:) Всё работает. Ещё раз спасибо.


 
umbra ©   (2005-12-20 18:33) [7]

в модуле SysUtils есть функция GetEnvironmentVariable(Name: string): string;


 
begin...end ©   (2005-12-20 18:37) [8]

> umbra ©   (20.12.05 18:33) [7]

Она тоже возвращает короткий путь.



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

Форум: "WinAPI";
Текущий архив: 2006.03.12;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.014 c
15-1140255771
Конопелька
2006-02-18 12:42
2006.03.12
Socket Server


1-1139366458
Коля
2006-02-08 05:40
2006.03.12
Вопрос по RichEdit


2-1140419004
integery
2006-02-20 10:03
2006.03.12
обновление даних


4-1134903687
Dark Lord
2005-12-18 14:01
2006.03.12
Определение русскоязычных шрифтов


4-1135071638
dprimakov
2005-12-20 12:40
2006.03.12
Разрешение экрана





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