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

Вниз

File access denied and MkDir   Найти похожие ветки 

 
IMHO ©   (2007-02-06 13:42) [0]

Не могу понять, почему MkDir иногда дает File access denied?
Права на папку полные.


 
IMHO ©   (2007-02-06 13:46) [1]

Полный код:

 if not DirExists(MyDir) then
   MkDir(MyDir); // здесь ошибка EInOutError - File access denied


 
Elen ©   (2007-02-06 13:58) [2]


> Права на папку полные.

А может MyDir при ошибке содержит какие нибудь недопустимые символы для папок?


 
tesseract ©   (2007-02-06 14:01) [3]

а ForceDirectories, что выдаёт?


 
IMHO ©   (2007-02-06 14:42) [4]


> Elen ©   (06.02.07 13:58) [2]
>
>
> > Права на папку полные.
>
> А может MyDir при ошибке содержит какие нибудь недопустимые
> символы для папок?


нет, с этим все в порядке, ручаюсь


 
Elen ©   (2007-02-06 14:47) [5]


> IMHO ©   (06.02.07 13:46) [1]
>
> Полный код:
>
>  if not DirExists(MyDir) then

Что такое DirExists? я знаю DirectoryExists()


 
IMHO ©   (2007-02-06 14:57) [6]

это функция из RxLib

думаешь, лучше использовать DirectoryExists?


 
clickmaker ©   (2007-02-06 15:22) [7]


> [6] IMHO ©   (06.02.07 14:57)

лучше то, что работает правильно. Сравни исходники функций


 
Elen ©   (2007-02-06 15:28) [8]


> думаешь, лучше использовать DirectoryExists?

Ну меня DirectoryExists еще не подводила.


 
IMHO ©   (2007-02-06 20:19) [9]

попробовать с ForceDirectories и DirectoryExists?


 
clickmaker ©   (2007-02-07 10:22) [10]


> [9] IMHO ©   (06.02.07 20:19)

ПРоверить существование папки можно и без всяких оберток, на АПИ

if (GetFileAttributes(PathToDir) = $FFFFFFFF) and (GetLastError() = ERROR_PATH_NOT_FOUND) then
 CreateDirectory(PathToDir)


 
evvcom ©   (2007-02-07 10:32) [11]

> [9] IMHO ©   (06.02.07 20:19)

Достаточно одного ForceDirectories, он сам проверит и создаст если нет, причем всю ветвь дерева.


 
palva ©   (2007-02-07 15:09) [12]

А почему вы проверяете только существование директории? Если существует файл с таким же именем, то директория тоже создана не будет.


 
tesseract ©   (2007-02-07 18:13) [13]


> А почему вы проверяете только существование директории?
> Если существует файл с таким же именем, то директория тоже
> создана не будет.


Она не будет создана, если её имя зарезирвировано под Дос имена. COm lpt и тд.


 
RASkov   (2007-02-07 18:22) [14]

> [13] tesseract ©   (07.02.07 18:13)

Это как это? Если у меня в каталоге \Dir есть файл с именем "123" без расширения, и в этом каталоге создать папку с именем "123"


 
tesseract ©   (2007-02-08 13:08) [15]


> Это как это? Если у меня в каталоге \Dir есть файл с именем
> "123" без расширения, и в этом каталоге создать папку с
> именем "123"


Она тоже не будет создана . Это написано в [12].


 
RASkov   (2007-02-09 04:41) [16]

> [15] tesseract ©   (08.02.07 13:08)

Я просто твой пост не правильно понял, мне показалось, что ты в своем посте

> А почему вы проверяете только существование директории?
> Если существует файл с таким же именем, то директория тоже
> создана не будет.

заменил на

Она не будет создана, если её имя зарезирвировано под Дос имена. COm lpt и тд.

Сорри.:)



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

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

Наверх




Память: 0.5 MB
Время: 0.048 c
15-1173553043
alexsis
2007-03-10 21:57
2007.04.01
Помогите пожалуйста!


15-1173562848
Real
2007-03-11 00:40
2007.04.01
Разводилово ли? - http://www.videofile.com.ua


15-1173262964
Kok
2007-03-07 13:22
2007.04.01
const


15-1173035989
palva
2007-03-04 22:19
2007.04.01
Борис Стругацкий в качестве политика


2-1173775558
Choco
2007-03-13 11:45
2007.04.01
установить ключевое поле