![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
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 в другое место и проверить.