1) Для начало нам надо хост куда мы будем заливать файл с версией, и саму программу.
Я буду использовать бесплатный хост от hut.ru.
• Создаем на компе файл "version.txt" и туда вписываешь последнюю версию программы.
Я написал v.1.0.
• Дальше загружаем этот файл ( "version.txt" ) на хост, в папку "WWW".
Загружать нужно через любой FTP клиент( я использовал "FileZilla" ).
2) Заходим в девел и создаем "Form1 "и "Form2".
"Form1" — это у нас сама программа.
"Form2" — это будет скачивание новой версии.
• На "Form1" создаете кнопку( при нажатии на нее будет проверяться версия программы ).
На кнопку создаем событие - клик:
$v = file_get_contents('http://сайт/version.txt');// получаем текст из файла.
if ($v == 'v.1.0'){// если этот текст "v.1.0" тогда
MessageBox("У вас самая последняя версия!", "");// выводим сообщение
}else{//иначе
LoadForm(c('Form2'), LD_NONE);// загружаем "Form2"
}
3) На "Form2" создаем прогресс бар, 3 кнопки("Пауза","Стоп,"Скачать"), диалог открытия, и загрузчик.
Кнопка "Старт":
• Переименовываем название кнопки из "button1" => "btn_start".
Создаем событие -> клик:
c("download")->url = "http://сайт/demo.exe";// указываем прямую ссылку на вашу новую программу
$x = c("dirDlg")->execute();
if ($x)//если диалог открыт
c("download")->path = c("dirDlg")->fileName;//загрузить в указанную папку
else//иначе
return;// отменить загрузку
c("download")->start();//начать загрузку
c("Form2")->caption = 'Старт загрузки...';//в названии формы пишем старт загрузки
c("btn_pause")->enabled = true;//кнопку пауза делаем доступной
$self->enabled = false;//делаем кнопку скачать не доступной
4) Кнопка "Стоп":
• Переименовываем название кнопки из "button2" => "btn_stop".
• Создаем событие - клик:
c("download")->stop();//останавливаем загрузку
c("Form2")->caption = 'Загрузка остановлена!';//пишем в заголовке программы
c("btn_pause")->enabled = false;//делаем кнопку пауза недоступной
c("btn_start")->enabled = true;//делаем кнопку старт доступной
5) Кнопка "Пазуа":
• Переименовываем название кнопки из "button3" => "btn_pause".
• Создаем событие - клик:
c("download")->pause();//делаем паузу
c("Form1")->caption = 'Загрузка приостановлена!';//пишем в заголовке что Пауза
$self->enabled = false;//кнопку пауза делаем недоступной
c("btn_start")->enabled = true;//кнопку старт делаем доступной
6) Теперь на компоненте загрузчик создаем событие - загрузка:
c("Form2")->caption = 'Скачено '.round($pos/1024).' Кб из '.round($max/1024).' Кб';
c("progress")->position = $pos; // $pos передает позицию в байтах
c("progress")->max = $max; // $max передает размер в байтах
if (c("progress")->position == c("progress")->max){
c("Form2")->caption = "Новая версия скачена!";
}
Я буду использовать бесплатный хост от hut.ru.
• Создаем на компе файл "version.txt" и туда вписываешь последнюю версию программы.
Я написал v.1.0.
• Дальше загружаем этот файл ( "version.txt" ) на хост, в папку "WWW".
Загружать нужно через любой FTP клиент( я использовал "FileZilla" ).
2) Заходим в девел и создаем "Form1 "и "Form2".
"Form1" — это у нас сама программа.
"Form2" — это будет скачивание новой версии.
• На "Form1" создаете кнопку( при нажатии на нее будет проверяться версия программы ).
На кнопку создаем событие - клик:
$v = file_get_contents('http://сайт/version.txt');// получаем текст из файла.
if ($v == 'v.1.0'){// если этот текст "v.1.0" тогда
MessageBox("У вас самая последняя версия!", "");// выводим сообщение
}else{//иначе
LoadForm(c('Form2'), LD_NONE);// загружаем "Form2"
}
3) На "Form2" создаем прогресс бар, 3 кнопки("Пауза","Стоп,"Скачать"), диалог открытия, и загрузчик.
Кнопка "Старт":
• Переименовываем название кнопки из "button1" => "btn_start".
Создаем событие -> клик:
c("download")->url = "http://сайт/demo.exe";// указываем прямую ссылку на вашу новую программу
$x = c("dirDlg")->execute();
if ($x)//если диалог открыт
c("download")->path = c("dirDlg")->fileName;//загрузить в указанную папку
else//иначе
return;// отменить загрузку
c("download")->start();//начать загрузку
c("Form2")->caption = 'Старт загрузки...';//в названии формы пишем старт загрузки
c("btn_pause")->enabled = true;//кнопку пауза делаем доступной
$self->enabled = false;//делаем кнопку скачать не доступной
4) Кнопка "Стоп":
• Переименовываем название кнопки из "button2" => "btn_stop".
• Создаем событие - клик:
c("download")->stop();//останавливаем загрузку
c("Form2")->caption = 'Загрузка остановлена!';//пишем в заголовке программы
c("btn_pause")->enabled = false;//делаем кнопку пауза недоступной
c("btn_start")->enabled = true;//делаем кнопку старт доступной
5) Кнопка "Пазуа":
• Переименовываем название кнопки из "button3" => "btn_pause".
• Создаем событие - клик:
c("download")->pause();//делаем паузу
c("Form1")->caption = 'Загрузка приостановлена!';//пишем в заголовке что Пауза
$self->enabled = false;//кнопку пауза делаем недоступной
c("btn_start")->enabled = true;//кнопку старт делаем доступной
6) Теперь на компоненте загрузчик создаем событие - загрузка:
c("Form2")->caption = 'Скачено '.round($pos/1024).' Кб из '.round($max/1024).' Кб';
c("progress")->position = $pos; // $pos передает позицию в байтах
c("progress")->max = $max; // $max передает размер в байтах
if (c("progress")->position == c("progress")->max){
c("Form2")->caption = "Новая версия скачена!";
}