Перейти к содержимому
  • 0
Laine_prikol

Как сделать установщик?

Вопрос

Как сделать установщик который, поочерёдно будет качать файлы с Pastebin?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Рекомендуемые сообщения

А какая это команда, я нуб и в вики нечего подобного не нашёл

На вики есть тема Internet API+Урок по работе с Pastebin. Но вообще так: 1. Лаунчер актуален, если нужно установить несколько файлов для программы. так как устанавливать лаунчер, который в свою очередь установит лишь один файл - тупо, можно просто напрямую сказать этот файл.

Теперь к делу. Internet API - может казаться сложным, так что работаем с pastebin и командой wget. Есть такая функция os.execute() Она по сути вводит в консоль что-либо. Грубо говоря это некая симуляция ввода игроком что либо. Пишем в программе os.execute("wget -f <link> <path>") и произойдет загрузка. Обязательно все должно быть указано в кавычках, так как execute принимает строку. Ну а про <link> и <path> думаю понятно, что да как.

Изменено пользователем Pofigist

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ну как? Создаешь lua-файл, который поочередно запускает утилиту pastebin с разными параметрами.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ну как? Создаешь lua-файл, который поочередно запускает утилиту pastebin с разными параметрами.

А какая это команда, я нуб и в вики нечего подобного не нашёл

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

На вики есть тема Internet API+Урок по работе с Pastebin. Но вообще так: 1. Лаунчер актуален, если нужно установить несколько файлов для программы. так как устанавливать лаунчер, который в свою очередь установит лишь один файл - тупо, можно просто напрямую сказать этот файл.

Теперь к делу. Internet API - может казаться сложным, так что работаем с pastebin и командой wget. Есть такая функция os.execute() Она по сути вводит в консоль что-либо. Грубо говоря это некая симуляция ввода игроком что либо. Пишем в программе os.execute("wget -f <link> <path>") и произойдет загрузка. Обязательно все должно быть указано в кавычках, так как execute принимает строку. Ну а про <link> и <path> думаю понятно, что да как.

Спасибо, попоробовал os.excute() работает!

Изменено пользователем Laine_prikol

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

local sh=require("shell").execute -- загружаем либу, буферизируем функцию

local c="pastebin get "

sh(c+"id1 file1") -- вызов программы закачки для каждого файлов

sh(c+"id1 file1")

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Эскейп же делал инсталлилку какую-то, еще и какой-то туда типа прогрессбар прикрутил http://computercraft.ru/topic/1145-oc-ustanovschik-programm/  Есть же все уже давно. И менеджеры загрузки и принтилки и свистелки и пыхтелки всякие на форуме. Зачем эти велосипедики, если можно почитать форум, доработать под себя код и сэкономить массу сил и времени?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Алекс, я хотел предложить инсталяшку ECSа, но не смог ее найти на форуме. Похоже, он самоудалился.

Да и что плохого в велосипедах? Свои ошибки дороже чужих успехов.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

 

 

Свои ошибки дороже чужих успехов.

Ну это даа, согласен.

Но вэ-гетилку в for-е опять  изобретать...) 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

function get(url)

local inet = component.proxy(component.list("internet")())

local request, reason = inet.request("http://pastebin.com/raw/",url)

if not request then return '' end

local text = ''

while true do

local data, reason = request.read()

if not data then

request.close()

break

elseif #data > 0 then

text = text..data

end

end

return text

end

Pastes={"123qwsz", "pasteidsjcns", "ghasuyh"}

for pasteid=1, #Pastes do

get(Pastes[pasteid])

end

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вы вставили отформатированное содержимое.   Удалить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.


×
×
  • Создать...