saavaage
Junior Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Djon1970, заметано, только до первых внятных результатов пока еще далеко. Занимаюсь, главным образом, компиляцией и пытаюсь понять принципы... Ну и параллельно делаю свой авторан. В чем Ваши материалы оказывают неоценимую помощь. Спасибо, дружище! tavria2, вопрос: есть кнопка, к ней привязаны такие команды (при нажатии): Код: --- очистка Output от предыдущего значения и внесение нового текста Paragraph.SetText("Output", ""); Paragraph.SetText("Output", "Маленькие, но необходимые для снятия стресса, игрули. Вобщем, Релакс, и еще раз, Релакс!!!"); -- задание рабочей папки fPath = String.SplitPath("SOFTWARE\\games"); g_strDefaultFolder = fPath.Folder..fPath.Filename; -- определение функций по обработке файлов и каталогов папки... function RefillFilesList() -- очистка listbox Soft ListBox.DeleteItem("Soft",LB_ALLITEMS); StatusDlg.Show(); tblFiles = File.Find(g_strDefaultFolder,"*.exe",false,true);--отбирать только ехе-файлы StatusDlg.Hide(); -- добавление для каталогов в листбоксе значения UP и его заполнение (listbox) ListBox.AddItem("Soft","[..]","UP"); if(tblFiles)then for i, filename in tblFiles do tblFileParts = String.SplitPath(filename); tblAttributes = File.GetAttributes(filename); if(tblAttributes)then if(tblAttributes.Directory)then ListBox.AddItem("Soft","["..tblFileParts.Filename.."]",filename); else ListBox.AddItem("Soft",tblFileParts.Filename..tblFileParts.Extension,filename); end end end end end RefillFilesList(); | Потом к listbox "Soft" привязаны такие команды (по двойному клику): Код: -- суть - по дв клику переход на 1 каталог вверх или вниз - для каталогов, для файлов -запуск файла на исполнение tblSelected = ListBox.GetSelected("Soft"); if(tblSelected)then local strFolderName = ""; local strText = ListBox.GetItemText("Soft",tblSelected[1]); local strPath = ListBox.GetItemData("Soft",tblSelected[1]); if(String.Left(strText,1) == "[")then -- It is a folder... if(strPath == "UP")then -- go up one folder level... local nPosition = String.ReverseFind(g_strDefaultFolder,"\\"); if(nPosition ~= -1)then strFolderName = String.Left(g_strDefaultFolder,nPosition); strFolderName = String.TrimRight(strFolderName,"\\"); else strFolderName = g_strDefaultFolder; end else strFolderName = strPath; end g_strDefaultFolder = strFolderName; RefillFilesList(); else File.Open(strPath); end end | Собственно, вопрос - как заблокировать выход из папки games в каталог SOFTWARE? Мне надо, чтобы юзер работал только с games и ее файлами и каталогами (вниз можно двигаться, вверх - только рабочая папка games)... | Всего записей: 38 | Зарегистр. 28-10-2009 | Отправлено: 13:31 05-11-2009 | Исправлено: saavaage, 19:51 05-11-2009 |
|