Автор Тема: [Интернет] Автообновление программы в нормальном и скрытом (в фоне) режимах  (Прочитано 31538 раз)

0 Пользователей и 2 Гостей просматривают эту тему.

Оффлайн Belfigor [?]

  • Локальный модератор
  • *
  • Сообщений: 3492
  • Репутация: 927
    • Награды
  • Версия AutoIt: 3.3.14.0
О! А это мысля, создать на хостинге директорию и пользователя с правами только для чтения.
Хотяяя... У меня же этот пользователь и пароль сгенерированы только для обновлений. Надо главное папке приоритет "только чтение" задать.

Любые темы внутри раздела "Разработка ботов" не названные в соответствии с правилами раздела, будут закрываться.
Любой ответ, любого пользователя в теме с предупреждением, направленный на решение вопроса, произведенный до того как предупреждение было исправлено, приведет к закрытию темы и удалению всего что было после предупреждения.

Русское сообщество AutoIt


Оффлайн Malderin [?]

  • Новичок
  • *
  • Сообщений: 55
  • Репутация: 1
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.12.0
При попытке скачать Update.au3 перекидывает на страницу с надписью "Вы не можете войти в этот раздел". Я что то не так делаю?

Оффлайн ra4o [?]

  • Скриптер
  • ****
  • Сообщений: 800
  • Репутация: 140
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
это, наверное сверхсекретная UDF , тоже было несколько попыток скачать и всякий раз "Вы не можете войти в этот раздел" :'(

Оффлайн Malderin [?]

  • Новичок
  • *
  • Сообщений: 55
  • Репутация: 1
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.12.0
Кто ищет тот всегда найдет. И хоть Update.au3 я так скачать и не смог, но на рубоарде все таки выдернул то что искал. Скрипт настолько понравился, что я переделал его под локальную сеть и внедрил в некоторые свои рабочие проекты.
Кому нужно под локалку но переделывать лень (хотя что там  переделывать все итак почти готово к употреблению), вот:
Код: AutoIt [Выделить]
#pragma compile(Out, D:\Папка с обновлением\Update.exe)
#pragma compile(FileVersion, 1.0.0.0)
#pragma compile(ProductVersion, 1.1.0.0)

#include <GUIConstantsEx.au3>
#include <Misc.au3>
#include <Array.au3>

Global $sAppUpdate_Page = "D:\Папка с обновлением\Update.inf"
Global $sApp_Version = "1.1"
Global $hGUI = 0

;Here we checking in quiet mode (only if new version available there will be a message).
_AppCheckUpdates_Proc($sAppUpdate_Page, $sApp_Version, 1)

#Region GUI Part
$hGUI = GUICreate("My Application", 300, 200)
$App_Ver = GUICtrlCreateLabel("Текущая версия " & $sApp_Version, 10, 20)
$CheckUpdates_Button = GUICtrlCreateButton("Проверить обновление", 150, 170, 140, 20)
$Exit_Button = GUICtrlCreateButton("Выход", 20, 170, 60, 20)

GUISetState(@SW_SHOW, $hGUI)
#EndRegion GUI Part

While 1
    Switch GUIGetMsg()
        Case $GUI_EVENT_CLOSE, $Exit_Button
            Exit
        Case $CheckUpdates_Button
            _AppCheckUpdates_Proc($sAppUpdate_Page, $sApp_Version)
    EndSwitch
WEnd

Func _AppCheckUpdates_Proc($sServer_Page, $sCurrent_AppVersion, $iMode=-1) ;$iMode <> -1 to check quitly

    Local $sUpdate_Version = IniRead($sServer_Page, "info", "Update Version", "")
    Local $sUpdate_File = IniRead($sServer_Page, "info", "Update File", "")

If @error=1 Then
        If $iMode = -1 Then MsgBox(48, "Update check", _
            StringFormat("Возникла ошибка (%i) при проверке обновления, пожалуйста, свяжитесь с автором.", 1), 0, $hGUI)
        Return SetError(1, 0, 0)
EndIf
    If _VersionCompare($sUpdate_Version, $sCurrent_AppVersion) = 1 Then
        Local $iUpdate_Ask = MsgBox(36, "Проверка обновления", _
            StringFormat("Доступна новая версия (%s).\n\nЖелаете обновить?", $sUpdate_Version), _
            0, $hGUI)

        If $iUpdate_Ask <> 6 Then Return 0

        Local $sScript_Name = StringTrimRight(@ScriptName, 4) & ".exe"
        Local $iInetGet = FileCopy($sUpdate_File, @TempDir & "\" & $sScript_Name, 1)

        Run(@ComSpec & ' /c Ping -n 2 localhost > nul & Move /y "' & _
            @TempDir & '\' & $sScript_Name & '" "' & @ScriptFullPath & '" & Start "" "' & @ScriptFullPath & '"', '', @SW_HIDE)

        Exit
    EndIf

    If $iMode = -1 Then MsgBox(48, "Проверка обновления", "Вы используете самую новую версию программы", 0, $hGUI)
    Return 1
EndFunc
 


Для этого примера я создал папку "Папка с обновлением" на диске D, туда поместил файл Update.inf следующего содержания:
[Info]
Update Version=1.1
Update File=D:\Папка с обновлением\Update 1.1.exe

Скомпилировал скрипт с параметром
Код: AutoIt [Выделить]
Global $sApp_Version = "1.1"

положил получмвшийся файл в папку "D:\Папка с обновлением\"

Далее скомпилировал скрипт с параметром
Код: AutoIt [Выделить]
Global $sApp_Version = "1.0"

Запихнул на рабочий стол, запустил и обновил его до версии 1.1.
« Последнее редактирование: Апрель 26, 2017, 08:38:44 от Malderin »

Русское сообщество AutoIt


Оффлайн Sergio [?]

  • Новичок
  • *
  • Сообщений: 20
  • Репутация: 0
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
При попытке скачать :
Ошибка!
Вы не можете зайти в этот раздел

интересно для каких избранных этот раздел

Оффлайн Tarasipak [?]

  • zak-marina2TT
  • Новичок
  • *
  • Сообщений: 2
  • Репутация: 0
  • Пол: Мужской
    • По моему мнению Вы ошибаетесь. Могу это доказать. Пишите мне в PM, обсудим.
    • Награды
  • Версия AutoIt: 3.3.14.0
Вы абсолютно правы. В этом что-то есть и я думаю, что это хорошая мысль.
ссылка:http://happykiddi.com.ua/reabilitaczionnyie-trenazheryi [nonactive]

Русское сообщество AutoIt


 

Похожие темы

  Тема / Автор Ответов Последний ответ
0 Ответов
2849 Просмотров
Последний ответ Февраль 02, 2011, 14:12:38
от muskat_59
4 Ответов
2748 Просмотров
Последний ответ Июнь 15, 2012, 11:56:19
от zybaskin
3 Ответов
1700 Просмотров
Последний ответ Июль 19, 2014, 22:25:53
от CreatoR
7 Ответов
3387 Просмотров
Последний ответ Октябрь 15, 2015, 16:32:59
от Yashied
0 Ответов
919 Просмотров
Последний ответ Январь 24, 2017, 11:38:19
от nitsik
4 Ответов
838 Просмотров
Последний ответ Июнь 04, 2017, 18:47:30
от musicstashall
3 Ответов
853 Просмотров
Последний ответ Август 03, 2017, 17:30:23
от Marjel
1 Ответов
424 Просмотров
Последний ответ Февраль 28, 2018, 09:58:37
от hedji
4 Ответов
475 Просмотров
Последний ответ Апрель 27, 2018, 14:11:39
от joiner
10 Ответов
947 Просмотров
Последний ответ Июнь 15, 2018, 08:10:18
от Tempo