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

Вниз

Чем заменить DirectoryExists (платформо-независимую бы)?   Найти похожие ветки 

 
Olivka ©   (2003-09-23 09:40) [0]

сабж


 
Calm ©   (2003-09-23 09:43) [1]

IMHO, такого не бывает.
Файловые системы же разные. Как может быть одна функция?


 
Olivka ©   (2003-09-23 09:51) [2]

Ну хорошо. На одной машине НТ, она не работает. Чем бы заменить?


 
ЮЮ ©   (2003-09-23 09:51) [3]

В CLX, судя по справке, она тоже есть
А вот в VCL, судя по ней же она есть в двух модулях. Очевидно следует попробовать из другого модуля для получения платформо-независимости


 
Olivka ©   (2003-09-23 10:02) [4]

Функция DirectoryExists из Filectrl просто вызывает эту же функцию из SysUtils.


 
Palladin ©   (2003-09-23 10:11) [5]

Для ленивых...
function DirectoryExists(const Directory: string): Boolean;
{$IFDEF LINUX}
var
st: TStatBuf;
begin
if stat(PChar(Directory), st) = 0 then
Result := ((st.st_mode and __S_IFDIR) = __S_IFDIR)
else
Result := False;
end;
{$ENDIF}
{$IFDEF MSWINDOWS}
var
Code: Integer;
begin
Code := GetFileAttributes(PChar(Directory));
Result := (Code <> -1) and (FILE_ATTRIBUTE_DIRECTORY and Code <> 0);
end;
{$ENDIF}


 
pasha_golub ©   (2003-09-23 10:40) [6]

Как это на НТ она может не работать? Может руки?


 
Olivka ©   (2003-09-23 10:42) [7]

Это мы уже видали :)
что с того - не работает!


 
Olivka ©   (2003-09-23 10:56) [8]

Не работает, почему-то на одной из машин. Не знаю! :)


 
PVOzerski ©   (2003-09-23 11:00) [9]

Не должно бы так быть... Там же одни и те же API-функции задействованы - что на NT, что на 9x. Может, на той "одной машине" стоит NTFS, а у вас не те привилегии доступа к папке?


 
Плохиш_   (2003-09-23 11:00) [10]

>Olivka © (23.09.03 09:51) [2]

1. Directory отсутствует
2. Отсутствуют права доступа.
3. Штатные экстрасенсы в отпуске


 
Olivka ©   (2003-09-23 11:08) [11]

Там действительно NTFS, каталога действитель нет (собственно и нужно реагировать на его наличие/отсутствие) и машина запущена под правами Администратора.


 
PVOzerski ©   (2003-09-23 11:10) [12]

2[11]:И что же выдает функция?


 
Плохиш_   (2003-09-23 11:12) [13]


> Ну хорошо. На одной машине НТ, она не работает.


А в чём выражается не работает?



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

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

Наверх




Память: 0.49 MB
Время: 0.017 c
1-18352
Lionzi
2003-09-23 11:18
2003.10.06
Шрифт в memo


1-18331
Jiura32d
2003-09-23 17:35
2003.10.06
Вопрос к профессионалам!!!


1-18421
vadfe
2003-09-25 13:39
2003.10.06
Помогите чайнику


14-18621
tanisha
2003-09-16 14:54
2003.10.06
Тест


7-18647
Dmitriy
2003-07-22 00:43
2003.10.06
---|Ветка была без названия|---