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

Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » Установка тем для Notepad++ с применением(NSIS скрипт+тема-сборка прилагается)

Ответить
Настройки темы
Установка тем для Notepad++ с применением(NSIS скрипт+тема-сборка прилагается)

Аватара для hb860

Идиот


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

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


Изменения
Автор: hb860
Дата: 25-08-2009
Вложения
Тип файла: zip Notepad Toolbar Skin.zip
(132.6 Kb, 240 просмотров)
Приветствую, форумчане.
Всвязи с тем что уже неоднократно слышу просьбы замутить сабж, собственно, мучу
Итак, постановка задачи: требуется обеспечить возможность установки темы иконок тулбара Notepad++ с применением после установки, а также обеспечить возможность тихой установки оной.

Сборка c темой Crystal++ приложена к этому сообщению. Ставится: Notepad Toolbar Skin.exe /S

Как сделать самому(на примере темы Crystal++)
1. Создаем d:\npp_toolbar\
2. в d:\npp_toolbar\Icons\ кладем файлы темы(d:\npp_toolbar\Icons\blank.ico,d:\npp_toolbar\Icons\close_disabled.ico,d:\npp_toolbar\Icons\clo se_hover.ico)
3. Кладем toolbarIcons.xml в d:\npp_toolbar\toolbarIcons.xml

Компилим скрипт. Что он делает
1. Копирует в папку c:\Program Files\Notepad++\CrystalToolbar\ иконки, указанные в d:\npp_toolbar\Icons\
2. смотрит наличие doLocalConf.xml, если есть
2.1 Пихает ToolbarIcons.xml в c:\Program Files\Notepad++\ и правит там config.xml для применения темы
2.2 если нет, делает тоже самое в %appdata%\notepad++ для текущего пользователя

Использование с инсталятором.
После тихой установки официального исталера нет файла config.xml. Мой скрипт его не генерит, а только правит. Чтоб он создался, необходимо
Вариант 1. Запустить после установки notepad++, он создат config.xml, потом прибить его taskkill
Вариант 2. Скопировать config.xml в %appdata%\notepad++ или файлы config.xml и doLocalConf.xml в c:\Program Files\Notepad++\
Вариант 3. Перепаковать notepad++ моим скриптом, включив нужные файлы http://forum.oszone.net/thread-101982.html

После этого запускать Notepad Toolbar Skin.exe /S

Скрипт пакует и применяет только одну тему. Если возникнет интерес/необходимость пользователей - фукциональность будет расширена.
Для скрипта нужен плагин http://nsis.sourceforge.net/XML_plug-in
Код скрипта:
Код: Выделить весь код
; HM NIS Edit Wizard helper defines
!define PRODUCT_NAME "Notepad Toolbar Skin"
!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 "XML.nsh"
SetCompressor /SOLID lzma
; MUI Settings
!define MUI_ABORTWARNING
!define MUI_ICON "${NSISDIR}\Contrib\Graphics\Icons\modern-install.ico"


!insertmacro MUI_PAGE_WELCOME
!insertmacro MUI_PAGE_DIRECTORY
!insertmacro MUI_PAGE_INSTFILES

; Language files
!insertmacro MUI_LANGUAGE "Russian"

; MUI end ------
Name "${PRODUCT_NAME}"
OutFile "${PRODUCT_NAME}.exe"
InstallDir "$PROGRAMFILES\${PRODUCT_NAME}"
ShowInstDetails show
ShowUnInstDetails show
Var e 
Function .onInit
	ReadRegStr $INSTDIR HKEY_LOCAL_MACHINE "SOFTWARE\Notepad++" ""
	StrCpy $R0 $INSTDIR
	StrCpy $INSTDIR "$INSTDIR\CrystalToolbar\"
FunctionEnd

Section "MainSection" SEC01
  SetAutoClose false
  SetOutPath "$INSTDIR"
  File /r "d:\npp_toolbar\Icons\*.*"
  
  StrCpy $e "LoadFile:config.xml"
  IfFileExists "$R0\doLocalConf.xml" OneUser MultiUser 
  MultiUser:
      SetOutPath "$APPDATA\Notepad++\"
	  Goto end
  OneUser:
	  SetOutPath "$R0"
	  Goto end
  end: 	  
  File "d:\npp_toolbar\toolbarIcons.xml"
  ${xml::LoadFile} "$OUTDIR\toolbarIcons.xml" $0
  ${xml::GotoPath} "/NotepadPlus/ToolBarIcons/Theme" $0
  ${xml::SetAttribute} "pathPrefix" "$INSTDIR\" $0
  DetailPrint "Theme path:$R9"
  ${xml::SaveFile} "" $0
  ${xml::LoadFile} "$OUTDIR\config.xml" $0 
  ${xml::GotoPath} "/NotepadPlus/GUIConfigs/GUIConfig" $0
  ${xml::SetText} "large" $0  
  ${xml::SaveFile} "" $0
  ${xml::Unload}
SectionEnd
P.S. Лично мне чихать какие у этой программы иконки. Для меня это мощный рабочий инструмент


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

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

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

Отправлено: 21:52, 24-10-2008

 

Аватара для Комсомолец

Ветеран


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


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

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


Цитата hb860:
Лично мне чихать какие у этой программы иконки. Для меня это мощный рабочий инструмент »
согласен. хотя мне только синтаксис интересен.

-------
Для того, чтобы узнать, что такое рекурсия - необходимо узнать, что такое рекурсия. :)

http://forum.oszone.net/image.php?type=sigpic&userid=69953&dateline=1440353086


Отправлено: 20:15, 25-10-2008 | #2



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

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


Новый участник


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

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


Вложения
Тип файла: zip avbIcons.zip
(15.7 Kb, 50 просмотров)

Хочу добавить свой toolbar, собранный из кнопок разных прогрмм

Отправлено: 16:38, 16-10-2011 | #3


Новый участник


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

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


Вложения
Тип файла: zip avbIcons.zip
(15.7 Kb, 137 просмотров)

не освоился, вот ссылка

http://forum.oszone.net/attachment.p...1&d=1318768749

Отправлено: 16:40, 16-10-2011 | #4



Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » Установка тем для Notepad++ с применением(NSIS скрипт+тема-сборка прилагается)

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

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




 
Переход