Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » Скрипт NSIS для перепаковки Mail.ru Agent

Ответить
Настройки темы
Скрипт NSIS для перепаковки Mail.ru Agent

Аватара для hb860

Идиот


Сообщения: 1125
Благодарности: 419

Профиль | Сайт | Отправить PM | Цитировать


Изменения
Автор: hb860
Дата: 26-06-2010
Описание: 5.6.3402
Представляю свой скрипт для установки программы Mail.ru Agent 5.x с возможностью деинсталяции и тихой установки программы. Полученный дистрибутив будет отличаться от оригинала тем, что:
-ставится с ключом /S без участия пользователя
-не меняет домашней страницы браузера
-не меняет провайдера поиска
-не ставит панель "спутник"

Код скрипта:
читать дальше »

Код: Выделить весь код
!define PRODUCT_NAME "Mail.ru Агент"
!define PRODUCT_VERSION "5.6.3402"
!define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}"
!define PRODUCT_UNINST_ROOT_KEY "HKLM"
!define Branding "By Happy Bulldozer860"
!define pkgdir "d:\package"

; MUI 1.67 compatible ------
!include "MUI.nsh"
SetCompressor /SOLID lzma
; MUI Settings
!define MUI_COMPONENTSPAGE_NODESC 
!define MUI_ABORTWARNING
!define MUI_ICON "${NSISDIR}\Contrib\Graphics\Icons\modern-install.ico"
!define MUI_UNICON "${NSISDIR}\Contrib\Graphics\Icons\modern-uninstall.ico"

!insertmacro MUI_PAGE_WELCOME
!insertmacro MUI_PAGE_DIRECTORY
!insertmacro MUI_PAGE_COMPONENTS
!insertmacro MUI_PAGE_INSTFILES
!insertmacro MUI_PAGE_FINISH
;;;;;
!insertmacro MUI_UNPAGE_CONFIRM
!insertmacro MUI_UNPAGE_COMPONENTS
!insertmacro MUI_UNPAGE_INSTFILES
!insertmacro MUI_UNPAGE_FINISH

; Language files
!insertmacro MUI_LANGUAGE "Russian"

; MUI end ------
Name "${PRODUCT_NAME}"
Caption "${PRODUCT_NAME} ${PRODUCT_VERSION}"
UninstallCaption "Удаление ${PRODUCT_NAME} ${PRODUCT_VERSION}"
OutFile "${PRODUCT_NAME}-${PRODUCT_VERSION}.exe"
InstallDir "$PROGRAMFILES\Mail.ru\Agent"
BrandingText "${Branding}"
ShowInstDetails show
ShowUnInstDetails show
InstType "Полная"
InstType "Сокращенная"
InstType "un.Полное удаление ${PRODUCT_NAME}"
Section "${PRODUCT_NAME}" SEC01
	SectionIn 1 2 RO
  SetAutoClose true
  SetOutPath "$INSTDIR"
  File /r "${pkgdir}\agent\*.*"
    RegDLL "$INSTDIR\Mra\dll\mramenu.dll"
  RegDLL "$INSTDIR\Mra\dll\mratag.dll"
  ;WriteRegDWORD HKCU "Software\Mail.Ru\Agent" "set_mrasearch" 0
  WriteRegStr HKCU "Software\Mail.Ru\Agent" "lang" "ru" 
  ;;WriteRegDWORD HKCU "Software\Mail.Ru\Agent" "SavedInstSettings" 286261249
  WriteRegDWORD HKCU "Software\Mail.Ru\Agent" "SendSystemStatistics" 0
  ;;;;
  WriteRegDWORD HKLM "Software\Mail.Ru\Agent" "ForAllUsers" 1
  WriteRegDWORD HKLM "Software\Mail.Ru\Agent" "SendSystemStatistics" 0
  WriteRegDWORD HKLM "Software\Mail.Ru\Agent" "version" 3270
  WriteRegStr HKLM "Software\Mail.Ru\Agent" "InstallPath" "$OUTDIR" 
  
  CreateDirectory "$APPDATA\Mra\Update"
  
  SetShellVarContext all
  CreateDirectory "$SMPROGRAMS\Mail.ru"
  CreateShortCut "$SMPROGRAMS\Mail.ru\${PRODUCT_NAME}.lnk" "$OUTDIR\magent.exe"
  WriteUninstaller "$OUTDIR\uninst.exe"
  CreateShortCut "$SMPROGRAMS\Mail.ru\Удалить ${PRODUCT_NAME}.lnk" "$OUTDIR\uninst.exe"
  WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayName" "${PRODUCT_NAME}"
  WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "UninstallString" "$OUTDIR\uninst.exe"
  WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayVersion" "${PRODUCT_VERSION}"
SectionEnd

Section /o "Ярлык на рабочем столе"
    SectionIn 1
	CreateShortCut "$Desktop\${PRODUCT_NAME}.lnk" "$INSTDIR\magent.exe"
SectionEnd


Section Uninstall secidx01
  SectionIn 1 RO
  DeleteRegKey HKLM "Software\Mail.Ru\Agent"
  UnRegDLL "$INSTDIR\Mra\dll\mramenu.dll"
  UnRegDLL "$INSTDIR\Mra\dll\mratag.dll"
  UnRegDLL "$INSTDIR\Mra\dll\newmrasearch.dll"
  Delete /REBOOTOK "$INSTDIR\Mra\dll\mramenu.dll"
  RMDir /r "$INSTDIR"

  SetShellVarContext all
  RMDir /r "$SMPROGRAMS\Mail.ru"
  Delete "$Desktop\${PRODUCT_NAME}.lnk" 	
  DeleteRegKey ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}"
  SetAutoClose true
SectionEnd


Section "Un.Удалить папку данных"
    SectionIn 1
	SetShellVarContext current
	RMDir /r "$APPDATA\Mra\" 
SectionEnd

Section "Un.Удалить настройки реестра"
  SectionIn 1
  SetShellVarContext current
  DeleteRegKey HKCU "Software\Mail.Ru\Agent"
SectionEnd


Function un.onInit
	SectionSetText ${secidx01} "Удалить приложение"
FunctionEnd

Скрины:
Порядок действий:
  1. Создайте папку c:\agent.Вы можете использовать любую другую папку, . Не забудьте при этом исправить путь в строчке !define pkgdir c: в начале скрипта. Скрипт ищет файлы агента по принципу ${pkgdir}+"\agent"
  2. Поместите в неё в файлы из установленного агента(как правило, из c:\Program Files\Mail.Ru\Agent\), кроме magentsetup.exe, его заменяет деинсталятор
  3. Копилим, получаем Mail.ru Агент-<версия>.exe
Тихо ставим так: "Mail.ru Агент-<версия>.exe" /S, установится без ярлыка на рабочем столе.

Проверялось: Windows XP sp3 x86, Windows 7 RTM x86. Теоретически работает во всех NT6.x при запуске инсталлятора с повышенными привилегиями.

Загрузить готовую сборку 5.6.3402
Это сообщение посчитали полезным следующие участники:

Отправлено: 14:44, 07-10-2008

 

Аватара для hb860

Идиот


Сообщения: 1125
Благодарности: 419

Профиль | Сайт | Отправить PM | Цитировать


Код: Выделить весь код
Section  "Ярлык в панели быстрого запуска"
    SectionIn 1
            SetShellVarContext all
	CreateShortCut "$QUICKLAUNCH\${PRODUCT_NAME}.lnk" "$INSTDIR\magent.exe"
SectionEnd

-------
http://feeds.feedburner.com/Winreviewru.1.gif
Горячие клавиши Windows 8 | Все программы, которые я разработал| Гаджеты для Windows 8


Отправлено: 18:54, 07-02-2010 | #31



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

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


Пользователь


Сообщения: 146
Благодарности: 8

Профиль | Отправить PM | Цитировать


hb860, слушай а почему не так как на десктоп?
Просто я использую вот так
Код: Выделить весь код
Section "Ярлык на рабочем столе"
    SectionIn 1
	CreateShortCut "$Desktop\${PRODUCT_NAME}.lnk" "$INSTDIR\magent.exe"
SectionEnd

Section "Ярлык в понель быстрого запуска"
    SectionIn 1
	CreateShortCut "$Quicklaunch\${PRODUCT_NAME}.lnk" "$INSTDIR\magent.exe"
SectionEnd
Цитата hb860:
SetShellVarContext all
откуда этот параметр?

Отправлено: 21:10, 07-02-2010 | #32


Аватара для K.A.V.

Ленивый кусок мяса


Contributor


Сообщения: 1986
Благодарности: 723

Профиль | Сайт | Отправить PM | Цитировать


Код: Выделить весь код
SetShellVarContext all
Это прописывается, чтобы NSIS создавал ярлыки для всех пользователей, т.е. помещал ярлыки в папку "All Users", чтобы восстановить значение по-умолчанию (чтобы вновь создавать только для текущего пользователя), необходимо прописать
Код: Выделить весь код
SetShellVarContext current

-------
[Справочник по командам Windows] -- [Справочник по NSIS] -- [SFX Creator - для создания SFX архивов]


Отправлено: 22:09, 07-02-2010 | #33


Пользователь


Сообщения: 146
Благодарности: 8

Профиль | Отправить PM | Цитировать


K.A.V., спасибо. Круто буду знать.

Отправлено: 05:32, 08-02-2010 | #34


Старожил


Сообщения: 193
Благодарности: 33

Профиль | Отправить PM | Цитировать


Подскажите как задать, чтобы по умолчанию с ключем /S ставился с ярлыком на рабочий стол?


сори...уже увидел пост...

Отправлено: 00:24, 21-02-2010 | #35


Аватара для hb860

Идиот


Сообщения: 1125
Благодарности: 419

Профиль | Сайт | Отправить PM | Цитировать


Тихая установка Mail.ru Агент 5.6.3399

-------
http://feeds.feedburner.com/Winreviewru.1.gif
Горячие клавиши Windows 8 | Все программы, которые я разработал| Гаджеты для Windows 8

Это сообщение посчитали полезным следующие участники:

Отправлено: 19:40, 11-05-2010 | #36


Аватара для Habetdin


Автор проектов


Сообщения: 3652
Благодарности: 1498

Профиль | Сайт | Отправить PM | Цитировать


Скрипт для перепаковки MRA 5.7.3637
Код: Выделить весь код
!define PRODUCT_NAME "Mail.ru Агент"
!define PRODUCT_VERSION "5.7.3637"
!define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}"
!define PRODUCT_UNINST_ROOT_KEY "HKLM"
!define Branding "OSzone.net"
!define pkgdir "D:\MRA"

; MUI 1.67 compatible ------
!include "MUI.nsh"
SetCompressor /SOLID lzma
; MUI Settings
!define MUI_COMPONENTSPAGE_NODESC 
!define MUI_ABORTWARNING
!define MUI_ICON "${NSISDIR}\Contrib\Graphics\Icons\modern-install.ico"
!define MUI_UNICON "${NSISDIR}\Contrib\Graphics\Icons\modern-uninstall.ico"

!insertmacro MUI_PAGE_WELCOME
!insertmacro MUI_PAGE_DIRECTORY
!insertmacro MUI_PAGE_COMPONENTS
!insertmacro MUI_PAGE_INSTFILES
!insertmacro MUI_PAGE_FINISH
;;;
!insertmacro MUI_UNPAGE_CONFIRM
!insertmacro MUI_UNPAGE_COMPONENTS
!insertmacro MUI_UNPAGE_INSTFILES
!insertmacro MUI_UNPAGE_FINISH

; Language files
!insertmacro MUI_LANGUAGE "Russian"

; MUI end ------
Name "${PRODUCT_NAME}"
Caption "${PRODUCT_NAME} ${PRODUCT_VERSION}"
UninstallCaption "Удаление ${PRODUCT_NAME} ${PRODUCT_VERSION}"
OutFile "${PRODUCT_NAME}-${PRODUCT_VERSION}.exe"
InstallDir "$PROGRAMFILES\Mail.ru\Agent"
BrandingText "${Branding}"
ShowInstDetails show
ShowUnInstDetails show
InstType "Полная"
InstType "Сокращенная"
InstType "un.Полное удаление ${PRODUCT_NAME}"
Section "${PRODUCT_NAME}" SEC01
	SectionIn 1 2 RO
  SetAutoClose true
  SetOutPath "$INSTDIR"
  File /r "${pkgdir}\agent\*.*"
  RegDLL "$INSTDIR\Mra\dll\mramenu.dll"
  RegDLL "$INSTDIR\Mra\dll\mratag.dll"
  ;WriteRegDWORD HKCU "Software\Mail.Ru\Agent" "set_mrasearch" 0
  WriteRegStr HKCU "Software\Mail.Ru\Agent" "lang" "ru" 
  ;WriteRegDWORD HKCU "Software\Mail.Ru\Agent" "SavedInstSettings" 286261249
  WriteRegDWORD HKCU "Software\Mail.Ru\Agent" "SendSystemStatistics" 0
  ;;;
  WriteRegDWORD HKLM "Software\Mail.Ru\Agent" "ForAllUsers" 1
  WriteRegDWORD HKLM "Software\Mail.Ru\Agent" "SendSystemStatistics" 0
  WriteRegDWORD HKLM "Software\Mail.Ru\Agent" "version" 3270
  WriteRegStr HKLM "Software\Mail.Ru\Agent" "InstallPath" "$OUTDIR" 
  
  CreateDirectory "$APPDATA\Mra\Update"
  
  SetShellVarContext all
  CreateDirectory "$SMPROGRAMS\Mail.ru"
  CreateShortCut "$SMPROGRAMS\Mail.ru\${PRODUCT_NAME}.lnk" "$OUTDIR\magent.exe"
  WriteUninstaller "$OUTDIR\uninst.exe"
  CreateShortCut "$SMPROGRAMS\Mail.ru\Удалить ${PRODUCT_NAME}.lnk" "$OUTDIR\uninst.exe"
  WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayName" "${PRODUCT_NAME}"
  WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "UninstallString" "$OUTDIR\uninst.exe"
  WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayVersion" "${PRODUCT_VERSION}"
SectionEnd

Section /o "Ярлык на рабочем столе"
    SectionIn 1
	CreateShortCut "$Desktop\${PRODUCT_NAME}.lnk" "$INSTDIR\magent.exe"
SectionEnd


Section Uninstall secidx01
  SectionIn 1 RO
  DeleteRegKey HKLM "Software\Mail.Ru\Agent"
  UnRegDLL "$INSTDIR\Mra\dll\mramenu.dll"
  UnRegDLL "$INSTDIR\Mra\dll\mratag.dll"
  UnRegDLL "$INSTDIR\Mra\dll\newmrasearch.dll"
  Delete /REBOOTOK "$INSTDIR\Mra\dll\mramenu.dll"
  RMDir /r "$INSTDIR"

  SetShellVarContext all
  RMDir /r "$SMPROGRAMS\Mail.ru"
  Delete "$Desktop\${PRODUCT_NAME}.lnk" 	
  DeleteRegKey ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}"
  DeleteRegValue HKCU "Software\Microsoft\Internet Explorer\URLSearchHooks" "{83821C2B-32A8-4DD7-B6D4-44309A78E668}"
  DeleteRegKey HKLM "SOFTWARE\Classes\*\shellex\ContextMenuHandlers\MRACMenu"
  SetAutoClose true
SectionEnd


Section "Un.Удалить папку данных"
    SectionIn 1
	SetShellVarContext current
	RMDir /r "$APPDATA\Mra\" 
SectionEnd

Section "Un.Удалить настройки реестра"
  SectionIn 1
  SetShellVarContext current
  DeleteRegKey HKCU "Software\Mail.Ru\Agent"
SectionEnd


Function un.onInit
	SectionSetText ${secidx01} "Удалить приложение"
FunctionEnd

-------
Рекомендую: $25 на тест виртуального сервера (VPS) за регистрацию по ссылке

Это сообщение посчитали полезным следующие участники:

Отправлено: 03:02, 30-07-2010 | #38


Аватара для hb860

Идиот


Сообщения: 1125
Благодарности: 419

Профиль | Сайт | Отправить PM | Цитировать


Я собрал сборку Mail.ru Агент 5.7 build 3639
Код: Выделить весь код
Mail.ru Агент-5.7.3639.exe /S
Цитата:
-не будет изменена домашняя страница браузера на mail.ru,
-не изменится провайдера поиска,
-не будет установлена панель "Спутник",
-не потребуется вмешательства с вашей стороны в процесс установки.
Забираем

-------
http://feeds.feedburner.com/Winreviewru.1.gif
Горячие клавиши Windows 8 | Все программы, которые я разработал| Гаджеты для Windows 8


Отправлено: 22:54, 02-08-2010 | #39


Аватара для spider123

Старожил


Сообщения: 245
Благодарности: 48

Профиль | Отправить PM | Цитировать


hb860, версия файла и в свойствах - 3402!

Отправлено: 15:25, 04-08-2010 | #40



Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » Скрипт NSIS для перепаковки Mail.ru Agent

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Автоматическая установка The KMPlayer + NSIS скрипт wolkow70 Автоматическая установка приложений 140 10-07-2021 15:48
NSIS скрипт для перепаковки GOM player+сборка hb860 Автоматическая установка приложений 5 19-06-2014 00:03
Скрипт NSIS для перепаковки AIMP2+Сборки hb860 Автоматическая установка приложений 184 13-01-2014 13:04
Установка тем для Notepad++ с применением(NSIS скрипт+тема-сборка прилагается) hb860 Автоматическая установка приложений 3 16-10-2011 16:40
NSIS-скрипт для установки UsefulUtils Disc Studio(UUDS)+сборка hb860 Автоматическая установка приложений 0 26-11-2009 23:15




 
Переход