Приложение Networx (
http://www.softperfect.com/products/networx/)
Бесплатная утилита для учета интернет-трафика и мониторинга скорости Интернета на вашем компьютере. Программа работает с любым кабельным или беспроводным подключением, а также модемом, предоставляя удобную статистику, отчеты и графики. Вы сможете измерить реальную скорость и загрузку вашего интернет-подключения, просматривать ежедневные, недельные и месячные отчеты и получать уведомления о перерасходе трафика.
Данные статистики могут быть экспортированы в файл Excel, Word или HTML.
Скрипт позволяет создать свою сборку, включив в неё настройки, русификацию либо что-то ещё.
Код:
!define PRODUCT_NAME "NetWorx"
!define PRODUCT_VERSION "5.1.2 Rus"
!define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}"
!define BRANDING "By Happy Bulldozer860"
!define pkgdir "d:\package"
; MUI 1.67 compatible ------
!include "MUI.nsh"
SetCompressor /SOLID lzma
; MUI Settings
!define MUI_ABORTWARNING
!define MUI_ICON "${pkgdir}\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 ------
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
BrandingText "${BRANDING}"
Section "${PRODUCT_NAME}" SEC01
SetOutPath "$INSTDIR"
File /r "${pkgdir}\NetWorx\*.*"
;RegDLL "$INSTDIR\UnlockerCOM.dll"
WriteUninstaller "$INSTDIR\uninst.exe"
WriteRegStr HKCU "Software\SoftPerfect\NetWorx\AutoUpdate" "AutoCheckEnabled" "0"
WriteRegStr HKCU "Software\SoftPerfect\NetWorx\AutoUpdate" "QueryForAutoCheck" "0"
WriteRegStr HKCU "Software\SoftPerfect\NetWorx\Graph" "ShowInTray" "1"
WriteRegStr HKCU "Software\SoftPerfect\NetWorx\Graph" "StayOnTop" "1"
WriteRegStr HKCU "Software\SoftPerfect\NetWorx\Graph" "Sticky" "1"
WriteRegStr HKCU "Software\SoftPerfect\NetWorx\Main" "DisplayOnStartup" "0"
WriteRegStr HKCU "Software\SoftPerfect\NetWorx\Main" "EnableAutoRun" "1"
WriteRegStr HKCU "Software\SoftPerfect\NetWorx\Main" "EnableGradient" "1"
WriteRegStr HKCU "Software\SoftPerfect\NetWorx\Main" "EnableGridLines" "1"
WriteRegStr HKCU "Software\SoftPerfect\NetWorx\Main" "UserLanguage" "Russian"
SetShellVarContext all
CreateDirectory "$SMPROGRAMS\${PRODUCT_NAME}"
CreateShortCut "$SMPROGRAMS\${PRODUCT_NAME}\Сайт ${PRODUCT_NAME}.lnk" "$INSTDIR\networx.url"
CreateShortCut "$SMPROGRAMS\${PRODUCT_NAME}\Справка ${PRODUCT_NAME}.lnk" "$INSTDIR\networx.chm"
CreateShortCut "$SMPROGRAMS\${PRODUCT_NAME}\${PRODUCT_NAME}.lnk" "$INSTDIR\networx.exe"
CreateShortCut "$SMPROGRAMS\${PRODUCT_NAME}\Удалить ${PRODUCT_NAME}.lnk" "$INSTDIR\uninst.exe"
WriteRegStr HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Run" "networx" "$\"$INSTDIR\networx.exe$\" /auto"
WriteRegStr HKLM "${PRODUCT_UNINST_KEY}" "DisplayName" "${PRODUCT_NAME}"
WriteRegStr HKLM "${PRODUCT_UNINST_KEY}" "DisplayVersion" "${PRODUCT_VERSION}"
WriteRegStr HKLM "${PRODUCT_UNINST_KEY}" "DisplayIcon" "$INSTDIR\networx.exe"
WriteRegStr HKLM "${PRODUCT_UNINST_KEY}" "UninstallString" "$INSTDIR\uninst.exe"
SetAutoClose true
SectionEnd
Section Uninstall
;UnRegDLL "$INSTDIR\UnlockerCOM.dll"
RMDir /r "$INSTDIR"
DeleteRegKey HKCU "Software\SoftPerfect\NetWorx"
SetShellVarContext all
RMDir /r "$SMPROGRAMS\${PRODUCT_NAME}"
DeleteRegKey HKLM "${PRODUCT_UNINST_KEY}"
DeleteRegValue HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Run" "networx"
SetAutoClose true
SectionEnd
Function un.onInit
again:
FindWindow $0 "" "Networx"
IsWindow $0 0 done
MessageBox MB_ABORTRETRYIGNORE|MB_ICONSTOP "Приложение Networx сейчас выполняется. Его следует закрыть перед удалением" IDRETRY again IDIGNORE done
Abort
done:
FunctionEnd
По умолчанию скрипт пакует файлы из {$pkgdir}\networx, добавляет прогармму в автозагрузку, отключает автоматическое обновление программы, включает график загрузки в трее.
Моя сборка(Русская 5.1.2, с указанными выше твиками):Скачать
Тихая установка:
Networx-5.1.2.exe /S
Проверялось: Windows XP sp3 x86, Windows 7 x86. Теоретически работает во всех NT6.x при запуске инсталлятора с повышенными привелегиями.