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

Показать сообщение отдельно

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


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

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


Доброго дня, методом проб и ошибок, мучая предоставленные ранее примеры и справочник из шапки, понял что в первый раз и спрашивал чутка нето и видел процес по другому. В моей последней версии получилось вот так
Код: Выделить весь код
!define PRODUCT_NAME "Notes"
!define PRODUCT_VERSION "v3"
!define pkgdir "C:\1\" 

!include "MUI2.nsh"
!include "TextFunc.nsh" 
SetCompress off

!define MUI_ICON "${NSISDIR}\Contrib\Graphics\Icons\7.ico"
!define TVM_SETBKCOLOR 0x111D  
!define TVM_SETTEXTCOLOR 0x111E 

!define MUI_COMPONENTSPAGE_NODESC 
!define MUI_COMPONENTSPAGE_TEXT_TOP "Текст"
!define MUI_COMPONENTSPAGE_TEXT_INSTTYPE "Выберите установку:"
!define MUI_COMPONENTSPAGE_TEXT_COMPLIST "Выберите настройки закладок ${PRODUCT_NAME}"
!define MUI_COMPONENTSPAGE_CHECKBITMAP "${NSISDIR}\Contrib\Graphics\Checks\colorful.bmp"
!define MUI_PAGE_CUSTOMFUNCTION_SHOW "CompShowProc" 
!insertmacro MUI_PAGE_COMPONENTS
!insertmacro MUI_PAGE_INSTFILES
!insertmacro MUI_LANGUAGE "Russian"
InstType "Полная установка"

Name "${PRODUCT_NAME}"
Caption "Установка ${PRODUCT_NAME} ${PRODUCT_VERSION}"
OutFile "${PRODUCT_NAME} ${PRODUCT_VERSION}.exe" 

Function CompShowProc
 FindWindow $0 "#32770" "" $HWNDPARENT
 GetDlgItem $0 $0 1032
 SendMessage $0 ${TVM_SETBKCOLOR} 0 0xFFF0F0     
 SendMessage $0 ${TVM_SETTEXTCOLOR} 0 0x2828FF   
 CreateFont $1 "Comic Sans Ms" 9 0               
 SendMessage $0 ${WM_SETFONT} $1 0    
FunctionEnd

SubSection /e "Клиент ${PRODUCT_NAME}"

Section "Настройка клиента и закладок" test
	SectionIn 1
	SectionIn RO 

	SetOutPath "D:\NotesTemp"
	File /r "${pkgdir}\Notes\"  
	ExecWait "msiexec.exe /i $\"******"
 
	SetOutPath "D:\NotesTemp" 
	File "${pkgdir}\addfile\add_file_ini.txt"
 	${FileJoin} "D:\Notes\notes.ini" "D:\NotesTemp\add_notes_ini.txt" ""
   
	SetOutPath "D:\Notes\"
	File "${pkgdir}\addfile\setup.txt"
 
	SetOutPath "D:\Notes\Data\" 
	File /r "${pkgdir}\addfile\bookmark_mail\" 

	SetOutPath "D:\NotesTemp"
	File "${pkgdir}\addfile\INSTALmail.BAT"  
	ExecWait "D:\NotesTemp\INSTALmail.BAT"  
SectionEnd

Section /o "Настройка закладок 2" test1
	SectionIn 1
	SetOutPath "D:\Notes\Data\" 
	File /r "${pkgdir}\addfile\bookmark_sed\" 
SectionEnd\

SubSectionEnd

Section #Удаление временных файлов
	RMDir /r "D:\NotesTemp"
SectionEnd
Основываясь на примере из справки "Страница выбора компонентов установки" начал его пилить под себя и практически все задуманное получилось.
От одного батника избавился полностью, там было добавление строк в .txt и копирование фалов.
А вот у второго осталась одна последняя строчка к которой незнаю как подступиться.
Код: Выделить весь код
if %userdomain% == ACME echo UserName=%username% >> D:\Notes\setup.txt
Не подскажите как можно реализовать прозвон домена и если совпадает, то пульнуть имя юзера в .txt ??
И вопрос второй косметический, в окне компонентов есть пунк который показывает требуемое место на диске, можно ли ему как то присвоить свое статичное значение или выключить вообще?? (Это не кретично, но не красиво выходит, инсталер не учитывает работу .msi который отрабатывает в процесе)

Отправлено: 18:45, 06-02-2013 | #186