Войти

Показать полную графическую версию : [решено] The Bat тихая установка:


Страниц : 1 [2] 3

KillHunter
06-04-2008, 04:47
Для регистрации нужно установить программу,зарегистрировать её и экспортировать следующих ключ реестра:
Код:
[HKEY_CURRENT_USER\Software\RIT\The Bat!]
RegistrationBlock="..." »

На самом деле это можно добавить с помощью Orca

zeroD
01-06-2008, 10:44
На самом деле это можно добавить с помощью Orca »

Как именно?

unikum111
01-06-2008, 16:36
KillHunter, я предпочитаю InstallShield 2008 Premium

garbals
01-06-2008, 19:36
по моему The Bat и без инсталяции работает только ключ в реестр надо

mariolast
14-07-2008, 11:41
Есть ли готовый уже дистрибутив? У зверя 4.0.20.0 установщик, 6 мег., но он что то там навырезаль что ли...шифрование писем не работает

morres
03-10-2008, 09:46
нихрена MST файл с выключенными Features Ynadex и Украиский SpellChecker не применяется во время установки...
А если просто MSI сохраняешь и без параметра Transforms запускаешь, то всё работает...

Причем если оркой делаешь Apply Transforms на оригинальный MSI то он показывает какие изменения произведены, но во время установки не цепляется

hb860
03-10-2008, 09:51
Я распаковываю программу при помощи Unoversal Extractor, полученные файлы упаковываю NSIS, получается замечательный дистрибутив, по поведению не отличающийся от оригинального.

morres
03-10-2008, 09:59
Прошу прощения, всё работает, просто unikum111 сделал небольшую ошибочку. Надо писать [B]Transforms[/S] (с буквой "s" на конце).

volk1234
07-08-2009, 00:24
обновил шапку

conductor
07-08-2009, 03:30
что то запустили тему на дворе4_2_9

volk1234
07-08-2009, 09:31
Предлагайте свой вариант, подниму его в шапку :)

Anton04
07-08-2009, 11:49
Предлагаю свой вариант.
Архив (SFX) запакованный Winrar`om.

Содержимое архива:
thebat!.msi - оригинал инсталлятора The Bat!, подправленный в Orca (убрал украинский язык, некоторые лишние ярлыки).
Install.cmd - командный файл для автоустановки.
setting.exe - запакованный WinRar`ом SFX архив с настройками The Bat!, в виде файла реестра.
key.reg - ключ к The Bat! в виде файла реестра.

Свойства SFX архива:

Setup=Install.cmd
TempMode="Установить The Bat! 4.x","Автоматическая установка The Bat!"
Silent=1
Overwrite=1
Title=Автоматическая установка The Bat!

Содержимое Install.cmd :


@ECHO OFF
reg add "HKCU\Software\RIT\The Bat!" /ve /d "" /f
reg add "HKCU\Software\RIT\The Bat!" /v ProgramDir /t REG_SZ /d "%PROGRAMFILES%\The Bat!" /f
msiexec /i thebat!.msi /qn
REGEDIT /S "key.reg"

Свойства setting.exe SFX архива:


Setup=REGEDIT /S setting.reg
TempMode="Настроить The Bat! ?","Настройки The Bat!"
Overwrite=1


Содержимое архива SFX setting.exe:
setting.reg

P.S. Пример прилагается. thebat!.msi - файл пустышка, заменить на нужный. key.reg - файл пустышка, заменить на нужный.

P.P.S. Можно подправить и сделать установку совсем без вопросов, просто первоночально делалось для ручного запуска установки The Bat!.

volk1234
19-08-2009, 19:12
Зачем такие сложности в предыдущем посте???

Рассказываю.

Способ уменьшения дистрибутива и тихой установки The Bat! 4.2.9.1

1. Качаем с сайта (http://www.ritlabs.com/ru/products/thebat/download.php)последнюю русскую Pro версию почтовой программы.

2. Распаковываем из пакета папку The Bat! ( по сути только она нам и нужна), ее внутреннюю структуру оставляем без изменения. Я пользовался Total Commander 7.01- Ctrl+PgDn.

3. Чистим дистрибутив от "лишних" файлов - все что не относится к русскому или английскому языку.
Пример таких файлов:

Основная папка
bat_czh.tip
bat_dut.tip
bat_esp.tip
bat_fra.tip
bat_ger.tip
bat_pol.tip
bat_rom.tip
bat_sky.tip
bat_srb.tip
bat_src.tip
bat_swe.tip
bat_ukr.tip
licence.txt
licence_rus.rtf
readme.txt
The_bat.chm

\The Bat!\Dictionaries\
uk_UA.aff
uk_UA.dic

Итого 2.7 Мбайта.
Внимание! Речь идет о распакованных размерах файлов!

Но самую большую экономию можно получить заменив интернациональный языковой пакет -thebat.lng на специальный, урезанный, пакет только с русским и английским языками.
Я использовал такой пакет от версии 3.99 и он замечательно подошел. Где взять такой пакет - выходит за рамки этого поста...
Тут экономия посерьезней : 6.3 Мбайта

Итого 9 Мбайт экономим. Половину от распакованного пакета!
Еще можно удалить и русскую справку (кто ее читает? :) )

bat_rus.chm
минус 2 Мбайта.

4. Создаем REG-файл с веткой [HKCU\Software\RIT] (где программа и хранит все настройки) Если есть лицензия - ее туда же.
Всю ветку не надо экспортировать, лишь некоторые значения. Можно также различные твики разместить. Вот мой простой рег файл:
Reg.reg

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\RIT]

[HKEY_CURRENT_USER\Software\RIT\SpellCheck\SSCE\Dictionaries]

[HKEY_CURRENT_USER\Software\RIT\The Bat!]
"Language"=dword:00000001
"RegistrationBlock"="Ваша лицензия в одну строку!!!!"
"ProfessionalEdition"=dword:00000000
"CheckAssociationsMode"=dword:00000002
"Associations Stored"=dword:00000001
"Show Tips"=dword:00000000

5. Создаем тихий инсталятор на основе допустим архиватора Rar:
Компрессия максимальная, SFX-архив,
Пример комментария, с регистрацией программы, ярлыком в меню пуск и установкой в [Program Files\The Bat!\] :
;Расположенный ниже комментарий содержит команды SFX-сценария

Path=The Bat!
Setup=regedit /s reg.reg
Silent=1
Overwrite=1
Shortcut=P, "thebat.exe", "", "", "The Bat!"

Получаем тихую установку программы в одном архиве весом - 8,1 Мбайт вместо 13 Скачанных(это в запакованном виде).
В распакованном (установленном) 10 Мбайт против 21 Мбайт.

Anton04
20-08-2009, 16:23
Зачем такие сложности в предыдущем посте??? »

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

P.S. Цель была не уменьшение объёма дистрибутива, а простота автоустановки.

volk1234
20-08-2009, 16:57
Ничегосебе, 3 батфайла это проще :)

hb860
21-08-2009, 08:36
Способ уменьшения дистрибутива и тихой установки The Bat! 4.2.9.1 »
Мой скрипт для паковки обозначенных volk1234'ом файлов

!define PRODUCT_NAME "The Bat!"
!define PRODUCT_VERSION "4.0.38"
!define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}"
!define PRODUCT_UNINST_ROOT_KEY "HKLM"

; MUI 1.67 compatible ------
!include "MUI.nsh"
!include "FileFunc.nsh"

SetCompressor /SOLID lzma
; MUI Settings
!define MUI_ABORTWARNING
!define MUI_ICON "${NSISDIR}\Contrib\Graphics\Icons\modern-install.ico"
!define MUI_UNICON "${NSISDIR}\Contrib\Graphics\Icons\modern-uninstall.ico"
; installer pages
!insertmacro MUI_PAGE_WELCOME
!insertmacro MUI_PAGE_DIRECTORY
!insertmacro MUI_PAGE_INSTFILES
!insertmacro MUI_PAGE_FINISH

; Uninstaller pages
!insertmacro MUI_UNPAGE_CONFIRM
!insertmacro MUI_UNPAGE_INSTFILES
!insertmacro MUI_UNPAGE_FINISH

; Language files
!insertmacro MUI_LANGUAGE "Russian"
; MUI end ------

!insertmacro RefreshShellIcons


Name "${PRODUCT_NAME}"
Caption "Установка ${PRODUCT_NAME} ${PRODUCT_VERSION} (Русская версия)"
UninstallCaption "Удаление ${PRODUCT_NAME} ${PRODUCT_VERSION} (Русская версия)"
OutFile "${PRODUCT_NAME}-${PRODUCT_VERSION}.exe"
InstallDir "$PROGRAMFILES\${PRODUCT_NAME}"
ShowInstDetails show
ShowUninstDetails show

Section "MainSection" SEC01
SetOutPath "$INSTDIR"
File /r /x "TBPlugin.INI" "D:\thebat\"
ExecWait "regedit.exe /S $\"$INSTDIR\thebat.reg$\""
SetOutPath "$APPDATA\${PRODUCT_NAME}"
File "D:\thebat\TBPlugin.INI"
WriteRegStr HKCU "Software\Bayes Filter Plugin" "DatabasePath" "$INSTDIR\database.dat"
WriteRegStr HKCU "Software\Bayes Filter Plugin" "UndodataPath" "$INSTDIR\undo.dat"
WriteRegStr HKCU "Software\Bayes Filter Plugin" "BlacklistPath" "$INSTDIR\blacklist.txt"
WriteRegStr HKCU "Software\Bayes Filter Plugin" "WhitelistPath" "$INSTDIR\whitelist.txt"
WriteRegStr HKCU "Software\Bayes Filter Plugin" "LogfilePath" "$INSTDIR\bayesfilter.log"
WriteRegStr HKCU "Software\Bayes Filter Plugin" "RegExpPath" "$INSTDIR\filters.dat"
;Delete "$INSTDIR\thebat.reg"

WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayName" "$(^Name)"
WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayIcon" "$INSTDIR\thebat.exe"
WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "UninstallString" "$INSTDIR\uninst.exe"
WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayVersion" "${PRODUCT_VERSION}"

WriteUninstaller "$INSTDIR\uninst.exe"
SetShellVarContext all
CreateShortCut "$SMPROGRAMS\${PRODUCT_NAME}.lnk" "$INSTDIR\thebat.exe"
;CreateShortCut "$SMPROGRAMS\${PRODUCT_NAME}\Удалить ${PRODUCT_NAME}.lnk" "$INSTDIR\uninst.exe" "" "$INSTDIR\uninst.exe" 0
SetAutoClose true
SectionEnd

Section Uninstall
RMDir /r "$INSTDIR"
SetShellVarContext all
Delete "$SMPROGRAMS\${PRODUCT_NAME}.lnk"
DeleteRegKey ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}"
DeleteRegKey HKCU "Software\RIT"
SetAutoClose true
SectionEnd

Технология универсаяльная, подходит и для последних версий+я включаю антиспам в состав дистрибутива(и подумываю над спеллчеккером)

conductor
21-08-2009, 10:16
volk1234
интересно а как Вы распаковалт в тотале thebat_rus_4-2-9.msi
у меня так тихий 13 метров без танца с бубном
;!@Install@!UTF-8!
RunProgram="setup.msi /qn "
RunProgram="regedit /S reg.reg "
Delete="%ALLUSERSPROFILE%\\Рабочий стол\\The Bat!.lnk"
GUIMode="2"
;!@InstallEnd@!

Anton04
21-08-2009, 12:02
Ничегосебе, 3 батфайла это проще »

Представте себе проще, т.к. их менять/править не надо. ;) И для обновления на новую версию нужно лишь скачать новый бат и запихнуть его в уже сделанный архив.
Ровно два действия. :tongue:

P.S. В общем у каждого свой путь... :gitara:

volk1234
21-08-2009, 17:41
conductor
Да простой Total Commander 7.01
Ctrl+PgDn - открывает пакет msi внутри, далее открываем папку SourceDir и по F5 извлекаем в отдельную папку содержимое. Все просто.
Anton04
Я не думаю что даже с вашим способом есть смысл гонятся за "бешенными" темпами RIT Lab в выпуске обновленных версий :)

Ваш способ можно сократить отказавшись от файла setting.exe добавив в Install.bat строку regedit /s setting.reg

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

volk1234
22-08-2009, 12:38
Добавил замечание по экономии Мб в моем способе, где имеется в виду распакованный, а где запакованный размер..




© OSzone.net 2001-2012