[Перепечатка] работа DLL из обновления

  В последнее время спрос на руках: длл должен быть введен в постоянный процесс, то длл обладает способностью к саморекламе, при поиске новой версии доступна сразу Освободитесь, загрузите новый. Вот план реализации:

    открыть слушающий поток, дергать новая версия доступна из Интернета, загрузите во временный каталог, если вы обнаружите , что вам нужно обновить, а затем сразу же FreeLibrary себя, а затем выполнить процесс обновления.
    Так как после того, как текущий модуль FreeLibrary область памяти больше не действует, так что процесс обновления использует отдельный поток, а код будет обновлен процесс выделения памяти выполняется в виде письменного шеллкода. Процесс обновления будет использовать некоторые функции системы API, не может быть непосредственно вызываются по имени функции, так как это будет импортировать список доступа и DLL Свободное время было потеряно. Поэтому, подготовив заранее аргумент к нити, параметры резьбы обновляются , чтобы использовать некоторые данные и адрес:


    Давайте посмотрим , как обновить слушатель нить работы и как подготовить эти параметры:


    После создания потока обновления, что она бросить курить и своевременно Освободите себя (так может обновить свои собственные удалено):


    взгляд на то, как обновить работу следующей темы:


    как и Free собственного модуля, после того, как параметры последней VirtualFree и страницы доли памяти текущего кода и не может вернуться, путем создания стеки параметров формы, конец текущего потока. Эта функция сохранения скомпилированных двоичных инструкций для глобального массива:


Следующий тест эффекта (XP, Win7 32 & 64 были протестированы):


Наконец, есть несколько мест , чтобы отметить это:
1, поставить временный каталог перед загрузкой новой библиотеки DLL удаленные файлы , чтобы предотвратить рекурсивный процесс обновления цикла происходит.
2, перед выполнением процесса обновления необходимо определить информацию о версии DLL, тот же процесс происходит для того , чтобы предотвратить рекурсию.


[Объявление] службы безопасности и аутсорсинговых проекты, пожалуйста, отправить проект должны видеть снег сервисной платформы предприятия: https: //qifu.kanxue.com

Прикрепленные файлы:
 

рекомендация

отwww.cnblogs.com/h2zZhou/p/11535317.html
рекомендация