Автор: 4ubaka
Дата сообщения: 13.04.2007 23:13
On_Preload_Page (этот скрипт нужно вставить в сами знаете куда)(Забыл как называется))))
Эта часть кода заполняет список названиями папок в выбранной директории
название папок должны быть и названиями программ которые внутри
result = Folder.Find("AutoPlay\\Docs\\dvd", "*", false, nill); -- Здесь нужно выбрать путь к вашей директории с папками программ
count = Table.Count(result);
listboxcount = 1;
while (count > 0) do
itemelem = Table.Remove(result, 1);
textTable = String.SplitPath(itemelem);
text = Table.Remove(textTable, Drive);
num = String.ReverseFind(itemelem, "\\", false);
numb=String.Length(itemelem);
num=numb-num
text = String.Right(itemelem, num);
ListBox.AddItem("ListBox1", text, itemelem);
listboxcount = listboxcount + 1;
count = count - 1;
end
Добавлено:
On_Close_Page
Здесь мы очищаем список (когда переходим на другую страницу)
coun = ListBox.GetCount("ListBox1");
while coun > 0 do
ListBox.DeleteItem("ListBox1", 1);
coun=coun-1;
end
Добавлено:
List_Box_Select
назначение - заполняем объект параграф текстом описания проги при выборе строки
--******************************************************
SelectedIt = ListBox.GetSelected("ListBox1");
SelectedIt = Table.Concat(SelectedIt, ";", 1, TABLE_ALL);
SelectData = ListBox.GetItemData("ListBox1", SelectedIt);
foundF = File.Find(SelectData, "~.txt", false, false, nil, nil); -- Название текстового файла можно изменить или поставить маску на названии
Type=type(foundF);
if Type=="table" then
installer = Table.Concat(foundF, ";", 1, TABLE_ALL);
contentst = TextFile.ReadToString(installer);
Paragraph.SetText("Paragraph1", contentst);
else
Paragraph.SetText("Paragraph1", "На данную программу нет описания");
end
Добавлено:
List_box_Double_Click
Назначение - ищет и запускается инсталяхи
--*****************************************************
SelectedIt = ListBox.GetSelected("ListBox1");
SelectedIt = Table.Concat(SelectedIt, ";", 1, TABLE_ALL);
SelectData = ListBox.GetItemData("ListBox1", SelectedIt);
if Folder.DoesExist(SelectData)==true then
foundF = File.Find(SelectData, "setup.exe", false, false, nil, nil);-- seek exe-files
tyPe=type(foundF);
if (tyPe=="table") then
installer = Table.Concat(foundF, ";", 1, TABLE_ALL);
File.Run(installer, "", "", SW_SHOWNORMAL, false);
end
--************************************************************************************************
if (tyPe == "nil") then
exeseek = File.Find(SelectData, "*.exe", false, false, nil, nil);-- ищет хоть какой нибудь екзешник в папке
tyPeExS=type(exeseek);
--*************************************************************************************************
if (tyPeExS=="nil") then
foundMSI = File.Find(SelectData, "setup.msi", false, false, nil, nil);-- ищет файл мсай сетап
typeMSIS=type(foundMSI);
--***********************************************************************************
if (typeMSIS == "nil") then
MSIseek = File.Find(SelectData, "*.msi", false, false, nil, nil);-- ищет какой нибудь мсай
typeMSI=type(MSIseek);
--*********************************************************************
-- нифига не нашлось... открывается проводник пусть юзер сам разбирается
if (typeMSI=="nil") then
File.ExploreFolder(SelectData, SW_SHOWNORMAL);
Application.ExitScript();
end
--******************************************
-- дальше прописана логика действий если найденых файлов больше чем 1
-- действие - открывается проводник (в принципе можно функцию другую поставить - файл оупен откроется эта папка просто)
if (Table.Count(MSISseek) > 1) then
File.ExploreFolder(SelectData, SW_SHOWNORMAL);
end
installer = Table.Concat(MSIseek, ";", 1, TABLE_ALL);
File.Open(installer, "", "");
Application.ExitScript();
end
--********************************************************
if (Table.Count(foundMSI) > 1) then
File.ExploreFolder(SelectData, SW_SHOWNORMAL);
end
installer = Table.Concat(foundMSI, ";", 1, TABLE_ALL);
File.Open(installer, "", "");
Application.ExitScript();
end
if (Table.Count(exeseek) > 1) then
File.ExploreFolder(SelectData, SW_SHOWNORMAL);
end
installer = Table.Concat(exeseek, ";", 1, TABLE_ALL);
File.Run(installer, "", "", SW_SHOWNORMAL, false);
Application.ExitScript();
end
else
arraypath = String.SplitPath(SelectData)
if arraypath.Extension==".zip" or arraypath.Extension==".rar" then
File.Open(SelectData, "", SW_SHOWNORMAL);
else
File.Open("AutoPlay\\Docs\\cd 2\\игры", "", SW_SHOWNORMAL);
end
end