Репутация: 206 
(весьма и весьма положительная личность)
Plugin Manager
Plugin Manager 0.2 Beta 3
Описание:
Данный проект был мной задуман еще давно. Цель данной программы - упростить установку плагинов, особенно для новичков.
Возможности:
-Автоматическая установка плагинов по базе данных
-Автоматическое создание ссылки из базы данных
-Вывод описания плагина из базы данных
-Корректное добавление ссылки на плагин
-Cоздание папкок seplugins, а так же создание vsh.txt; game.txt; game150.txt; pops.txt, если они не существуют.
Возможности автоматической установки по базе данных:
-Копировать неограниченное число дополнительных файлов\папок, которые необходимы для корректной работы плагина
-Неограниченное количество строк для описания плагина
-Копировать дополнительные файлы, папки и само тело плагина не только в папку seplugins.
В новой 0.2 Beta 4 версии планируется:
-Исправление ошибок
-Дополнение базы данных
-Возможность включать и отключать плагины для старых прошивок
Если у вас появились новые идеи для развития данной программы, нашли баги и т.п. - пишите, не стесняйтесь.
Добавление плагина в базу данных
Для начала откройте текстовым редактором файл DataBase.DB. После чего с новой пустой строки напишите с квадратными скобками имя файла с расширением (например: [myplugin.prx]) - с этого начнется ваш скрипт (скрипт заканчивается следующими квадратными скобками с именем файла). Дальше, с новой строки, предстоит написать небольшой скрипт, однако перед тем, как продолжить, лучше почитать небольшой FAQ.
Q: Какие возможности есть?
A: Вы можете:
1) Копировать сам плагин в seplugins, а также в нестандартную директорию
2) Копировать дополнительные файлы, которые лежат рядом с плагином. Кроме того можно указать нестандартный путь для копирования всех файлов или для каждого файла в отдельную директорию.
3) Копировать дополнительные папки, которые лежат рядом с плагином. Так же, как и с файлами, вы можете их копировать не только в штатную директорию
4) Присваивать ссылки на плагин на определенную категорию. Кроме того вы можете сгенерировать ссылку на скопированный дополнительный файл, а так же дописать свою ссылку, которая не зависит от скопированных данных.
5) Вывод описания и названия плагина
Q: Как следует писать скрипт, выполняющий определенную функцию?
A: <скрипт>='<присвоение к чему-либо>'
Q: Всегда следует после знака равно открывать и закрывать присвоение одинарной кавычкой (')?
A: Если есть скрипт, на котором вы можете присваивать только цифру, то здесь использовать пунктир НЕ нужно.
Q: Что будет, если я не напишу скрипт, который показывает программе, в какую директорию нужно копировать плагин, дополнительные файлы, папки?
A: Они будут автоматически скопированы в стандартную директорию
Q: Как следует писать нестандартный путь для копирования?
A: Пишите путь, не дописывая метку тома. Например: myplugin\files\addons или seplugins\mycoolplg вместо X:\myplugin\files\addons или вместо X:\seplugins\mycoolplg
Q: Что будет, если я укажу копирование папки, которая не существует рядом с плагином? И что также будет, если я скопирую в такую директорию, которая так же не существует?
A: Несуществующая папка и директория будет создана автоматически.
Q: Обязательно следует учитывать последовательность? То есть писать сначала этот скрипт, потом другой и т.п.
A: Нет. Вы можете писать скрипт в любой последовательности, однако рекомендую её придерживаться, чтобы вам было удобней писать скрипт
Q: Обязательно следует учитывать регистр? То есть писать скрипт, учитывая большую и маленькую букву
A: Нет.
Теперь приступим к скриптам (надеюсь, вы уже написали имя файла с квадратными скобками)
Первое, с чего стоит начать – написать название плагина. Для этого напишите с новой строки:
Name='Мое имя плагина'
Это позволит программе вывести полное название плагина, а не любоваться лишь только именем файла.
Но пользователь не будет знать, что из себя представляет данный плагин, поэтому следует написать информацию об этом плагине. Для этого напишите с новой строки:
Info='Мое описание'
Если ваша строка не будет влезать, то он будет автоматически переноситься. Однако, если вам нужно написать с новой строки описание (например: на одной строке описание, на другой использование и т.п.), то следует написать количество строк, которые вы хотите добавить. Для этого напишите:
Number_Of_Lines_For_Info=X (где X – целое число)
После чего следует присвоить, чему равна первая, вторая, третья строка и так далее. Для этого напишите:
Info1='Моя первая строка'
Info2='Моя вторая строка'
Info3='Моя третья строка'
Если вы присвоите, например Number_Of_Lines_For_Info=5, а напишите лишь только Info1='Моя первая строка' и Info5='Моя пятая строка', то остальные будут автоматически восприняты как пустыми т.е. это будет равносильно тому, что если бы вы написали Info2='', Info3='', Info4=''. Особенно удобно, когда вам нужно пропустить строку, но при этом ничего сюда не писать.
Стоить учесть так же то, что если вы напишите Number_Of_Lines_For_Info и присвоите каждой строке значение и напишите еще Info (обратите внимание – без указания строки), то при выводе информации последний будет иметь приоритет выше. Точно так же будет и при копировании файлов, папок, добавлении ссылок, но об этом чуть ниже.
Информацию о плагине мы добавили, но что делать, если плагин нужно скопировать в нестандартную директорию? Для этого напишите:
Copy_To_Folder='ваша директория'
Например, нужно скопировать плагин cxmb.prx в папку cxmb в корне флешки: Copy_To_Folder='cxmb'
Первоначально сам пользователь выбирает, для какой категории его подключать (GAME, VSH и т.п.). Но иногда сам пользователь не знает, что выбрать, поэтому данная программа может решить данную проблему за него. Чтобы добавить плагин к определенной категории, напишите:
Add_Link_To='VSH,GAME,GAME150,POPS'
Как вы видите, через запятую указываются отдельные категории. Вы можете, например, добавить только в одну категорию, удалив 3 ненужных. Кроме того следует писать только с БОЛЬШОЙ буквы. После данных строк включится в пункте установки ссылок "Автоматически по базе данных".
Допустим, что рядом с плагином есть дополнительный файл, без которых не может работать вообще плагин. Для того, чтобы его так же скопировать, напишите
Copy_File='имя файла с расширением'
Рядом с плагином есть файл settings.ini, который так же нужно скопировать - пишем Copy_File='settings.ini'.
Теперь предположим, что его нужно скопировать в нестандартную директорию. Для этого напишите
Copy_File_To_Folder='ваша директория'
Подобный пример я уже рассматривал с командой Copy_To_Folder, поэтому не будут по 500 раз писать пример с одинаковым смыслом
Усложним нашу задачу: допустим, что нужно скопировать не один, а несколько дополнительных файлов подряд, которые лежат рядом с плагином. Для начала нужно указать программе, сколько вы хотите скопировать файлов. Для этого напишите:
Number_Of_Copy_Files=X (где X – целое число)
Затем укажите, какие файлы вы хотите скопировать, написав для примера:
Copy_File1='cwcheatpops.prx'
Copy_File2='cheat.db'
Copy_File3='cheatpops.db'
А что делать, если нужно скопировать все файлы в нестандартную директорию? Для этого напишите:
Copy_Files_To_Folder='ваша директория'
Теперь предположим, что нужно копировать каждый файл в отдельную директорию, Для этого напишите, для примера:
Copy_File_To_Folder1='ваша директория'
Copy_File_To_Folder2='ваша директория'
Copy_File_To_Folder3='ваша директория'
Если вы пропустите данную команду для какого-либо файла, то путь будет автоматически присвоен стандартной папки - seplugins.
Если вы напишите команду Copy_Files_To_Folder и Copy_File_To_Folder<номер файла>, то первый имеет приоритет выше.
Для копирования папок вы делаете все по той же схеме, только лишь используете другие команды:
1) Для копирования только одной папки Copy_Folder
2) Для копирования в нестандартную директорию Copy_Folder_To_Folder
3) Для копирования серии папок вы должны указать количество папок, которые вы хотите скопировать, следующей командой Number_Of_Copy_Folders
4) Для того, чтобы указать папку для копирования, используйте Copy_Folder1, Copy_Folder2 и т.д.
5) Для копирования всех папок в нестандартную директорию Copy_Folders_To_Folder
6) Для копирования каждой папки в нестандартную директорию Copy_Folder_To_Folder1, Copy_Folders_To_Folder2 и т.д.
Вернемся снова к копированию дополнительного файла. Предположим, что вам нужно дать на этот дополнительный файл ссылку для определенной директории. Для этого используйте команду:
Add_File_Link_To='VSH,GAME,GAME150,POPS'
Разумеется, вы можете указать только для определенной директории, удалив лишние.
Схожу команду можно использовать и для серии копирования нескольких дополнительных файлов подряд, например:
Add_File_Link_To1='GAME,GAME150'
Add_File_Link_To2='VSH,POPS'
Add_File_Link_To3='VSH'
Add_File_Link_To4='GAME,POPS'
Кроме того вы можете вручную написать свою ссылку, которая со скопированными данными не имеет никакого отношения, например:
Add_Link_VSH ='ms0:/seplugins/myplugin.prx'
Add_Link_GAME='ms0:/ghostplg/plg.prx'
Add_Link_GAME150='flash0:/kd/antifrwplg.prx'
Add_Link_POPS='flash1:/plg.prx'
Надеюсь, вы поняли по названию, куда данные ссылки добавятся. Кроме того, нужно полностью прописывать каждый плагин. Так же не имеет значения, какой слешер вы будете использовать (такой / или такой \) – он будет автоматически исправлен на нужный слешер.
Если вы хотите сделать серию добавлений своих ссылок, то для начала укажите количество таких ссылок. Для этого используйте следующую команду:
Number_Of_Add_Link_VSH
Number_Of_Add_Link_GAME
Number_Of_Add_Link_GAME150
Number_Of_Add_Link_POPS
После чего, как в предыдущих вариантах, пишите, для примера:
Add_Link_VSH1='ms0:/seplugins/myplugin.prx'
Add_Link_VSH2='ms0:/psp/game/fusagamepad/usbgamepad.prx'
Add_Link_GAME1='ms0:/hostplugin/host.prx'
Add_Link_GAME2='flash0:/KD/recovery.prx'
Add_Link_GAME150_1='flash1:/runplugin.prx'
Add_Link_GAME150_2='flash2:/junker.prx'
Add_Link_POPS1='flash3:/popsloader.prx'
Add_Link_POPS2='ms0:/machine_loader.prx'