Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Что за ошибка "Отказано в доступе"?


cyborg ©   (2008-11-10 10:08:00) 

Есть процедура:

procedure TTests.LoadTests(const aDir: String);
var
 vSR: TSearchRec;
 vLen: Integer;
begin
 try
   if FindFirst(aDir + '*.*', faAnyFile, vSR) = 0 then
   repeat
     if ((vSR.Attr and faDirectory) = 0) then
     begin
       vLen := Length(FItems);
       SetLength(FItems, vLen + 1);
       Items[vLen] := TTest.Create(Self, aDir + vSR.Name);
     end;
   until FindNext(vSR) <> 0;
 except
   Items := nil;
   raise;
 end;

Констуктор TTest'а имеет примерно такой вид:

constructor TTest.Create(const aOwner: TTests; const aName: String);
var
 vList: TStringList;
begin
 inherited Create;
...
 vList := TStringList.Create;
 try
   vList.LoadFromFile(aName);
...
 finally
   vList.Free;
 end;
end;

На строчке vList.LoadFromFile(aName); возникает ошибка: "Cannot open file "C:\TATYANAM\ConTEXT\Поисковые запросы (тексты)". Отказано в доступе". Причем эта ошибка возникает только у одного пользователя, у остальных все нормально. С чем может быть связана эта ошибка и как ее избежать?


Anatoly Podgoretsky   (2008-11-10 11:15:00) [1]

> cyborg  (10.11.2008 10:30:02)  [2]

А  ты не запрещай, ты поиск то разреши, а запрети чтение/запись и FindFirst у тебя заработает.


Rouse_   (2008-11-10 10:53:00) [2]


> Пробовал запретить права к папке, FindFirst просто не находит
> ни одного файла.

Если поднят эксепшен на LoadFromFile то до FindFirst дойти исполнение и не должно. Запрети в безопасности доступ на чтение к файлу, путь к которому храниться в переменной aName и ошибка воспроизведется.


clickmaker   (2008-11-10 10:50:00) [3]

> "Cannot open file "C:\TATYANAM\ConTEXT\Поисковые запросы
> (тексты)". Отказано в доступе".

атрибуты какие у этого файла?
и права доступа?


cyborg   (2008-11-10 10:30:00) [4]

Я бы сменил, но нужно это объяснить пользователю по почте. У себя я повторить эту ошибку не смог. Пробовал запретить права к папке, FindFirst просто не находит ни одного файла. Может быть действительно какая-то программа запрещает доступ.


Anatoly Podgoretsky   (2008-11-10 10:15:00) [5]

> cyborg  (10.11.2008 10:08:00)  [0]

Или предоставь права или смени папку, с должными правами. Стоит также проверить не стоит ли какая то приблуда, ограничиваящая доступ.


Наверх

Титульная страница Поиск, карта сайта Написать письмо