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

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

TShellTreeView [D2005, XP]


Andrej ©   (2008-01-30 11:32:00) 

Здравствуйте!

Я использую TShellTreeView. Хочу удалить папку. Указываю на нее и выполняю команды:

 Folder := stvTree.SelectedFolder;
 RemoveDir(Folder.PathName);


Возникает сообщение "Нет доступа к 'папке'. Отказано в доступе".

До завершения программы папка остается на месте, после завершения - она удаляется.

Как поступить, чтобы она была удалена сразу?


uw   (2008-01-30 12:16:00) [1]

Я тоже. Но здесь оно казалось, потому что позволяет ходить по сети.


uw   (2008-01-30 12:16:00) [2]

казалось удобным.


ketmar   (2008-01-30 12:14:00) [3]

>[6] uw ©(30.01.08 12:10)
>Как с этой хренью работать-то, а?
а фиг его знает, если честно. никогда не использовал. %-)


uw   (2008-01-30 12:10:00) [4]

Чтобы не было недоразумения, последовательность такая:

  PathName := Folder.PathName;
  stvTree.Selected := stvTree.Items[0];
  Application.ProcessMessages;
  RemoveDir(PathName);


значит, кто-то открывает папку для чего-то и не закрывает. может, и сам shell tree. ищи. натрави filemon на крайний случай. %-)

У меня вся программа состоит из одного TShellTreeView, поэтому этого "кого-то" я знаю :-) Как с этой хренью работать-то, а?


ketmar   (2008-01-30 12:07:00) [5]

значит, кто-то открывает папку для чего-то и не закрывает. может, и сам shell tree. ищи. натрави filemon на крайний случай. %-)


uw   (2008-01-30 12:02:00) [6]

Папка пустая.

SetCurrentDirectory реально ничего не меняет в представлении TShellTreeView. Но и после последовательности

   stvTree.Selected := stvTree.Items[0];
   Application.ProcessMessages;
   RemoveDir(PathName);

выбирается корневой элемент, эффект тот же.


ketmar   (2008-01-30 11:47:00) [7]

также невредно проверить, нет ли в ней файлов, а то плохо удаляется.


uw   (2008-01-30 11:43:00) [8]

Не помогло.


ketmar   (2008-01-30 11:36:00) [9]

есть подозрение, что она «текущая» для программы. сделать SetCurrentDirectory в другое место и проверить.


Наверх

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