.: NSIS - все вопросы :. часть 2.
-
MaGoth
Re: .: NSIS - все вопросы :. часть 2.
Привет народ,
Подскажите где разжиться файликом определения венды последней версии для ЮТФ8 или 16 ЛЕ?
И напомните плиз, как запустить консоль без вывода ее окон, помню что где-то было это расписано, даже делал раньше но в справке ни нашел..
Спасибо.
Подскажите где разжиться файликом определения венды последней версии для ЮТФ8 или 16 ЛЕ?
И напомните плиз, как запустить консоль без вывода ее окон, помню что где-то было это расписано, даже делал раньше но в справке ни нашел..
Спасибо.
-
K.A.V.
Re: .: NSIS - все вопросы :. часть 2.
В справочнике, в разделе "Работа с реестром" есть макрос ${StrToHex} "строка" $var - Конвертирование строки в HEX.
Не подскажите, как сделать наоборот конвертирование HEX в строку, или ${HexToStr}?
Не подскажите, как сделать наоборот конвертирование HEX в строку, или ${HexToStr}?
-
MaGoth
Re: .: NSIS - все вопросы :. часть 2.
Цитата Sancho5555:
HEX в строку
Registry_plug-in
${registry::HexToStr} "[hex_string]" $var
И ещё когда то kotkovets, приводил такой код :
Код:
HEX в строку
.: NSIS - все вопросы :. часть 2.
Registry_plug-in
${registry::HexToStr} "[hex_string]" $var
И ещё когда то kotkovets, приводил такой код :
Код:
Код: Выделить всё
конвертация 16-ричное число в десятичное, десятичное в ASCII
IntFmt $1 "%i" 0x37 ;16-ричное число в десятичное
;-------------------------------------------------------------------
IntFmt $1 "%c" $1 ;десятичное в ASCII-
K.A.V.
Re: .: NSIS - все вопросы :. часть 2.
MaGoth, я с юникодом вообще не работал (и пока не собираюсь), так что по вопросам данных сборок я ничего подсказать не могу
-
Dodakaedr
Re: .: NSIS - все вопросы :. часть 2.
Цитата Dodakaedr:
Почему если в конце ключа реестра стоит цифра то этот ключ пропускается?
Всё нормально :
Код:
Почему если в конце ключа реестра стоит цифра то этот ключ пропускается?
.: NSIS - все вопросы :. часть 2.
Всё нормально :
Код:
Код: Выделить всё
OutFile "test find key.exe"
!include "Logiclib.nsh"
!include "Registry.nsh"
var err
Section
; для тестирования
${registry::Write} "HKLM\SOFTWARE\Test.test.ttt.aaaaaaaa.1" ".test" "5" "REG_SZ" $err
${registry::Write} "HKLM\SOFTWARE\Test.test.ttt.bbbbbbbb.1" ".test" "7" "REG_SZ" $err
${Do}
EnumRegKey $1 HKLM "SOFTWARE" $0
IntOp $0 $0 + 1
StrCpy $9 $1 14 ;первые 14 символов из $1(Test.test.ttt.) помещаем в $9
${If} $9 == "Test.test.ttt." ; условие
DetailPrint $1 ;для информации
ClearErrors
MessageBox MB_OK "Условие найдено. Далее - необходимое действие"
${EndIf}
${LoopUntil} $1 == ""
SectionEnd-
Serg866
Re: .: NSIS - все вопросы :. часть 2.
Цитата MKN:
Всё нормально :
С тестовыми ключами да, но если подставить требуемые, то результат тот же:
Скрытый текст
[spoiler]Скрытый текст[/spoiler]
[spoiler]
[/spoiler]
Код:
Всё нормально :
.: NSIS - все вопросы :. часть 2.
С тестовыми ключами да, но если подставить требуемые, то результат тот же:
Скрытый текст
[spoiler]Скрытый текст[/spoiler]
[spoiler]
[/spoiler]Код:
Код: Выделить всё
OutFile "test find key22.exe"
!include "Logiclib.nsh"
!include "Registry.nsh"
var err
Section
; для тестирования
${registry::Write} "HKLM\SOFTWARE\ComSysControl.UserVars.1" ".test" "5" "REG_SZ" $err
${registry::Write} "HKLM\SOFTWARE\ComSysControl.UserVars" ".test" "7" "REG_SZ" $err
${Do}
EnumRegKey $1 HKLM "SOFTWARE" $0
IntOp $0 $0 + 1
StrCpy $9 $1 14 ;первые 14 символов из $1(Test.test.ttt.) помещаем в $9
${If} $9 == "ComSysControl." ; условие
;DetailPrint $1 ;для информации
;ClearErrors
;MessageBox MB_OK "Условие найдено. Далее - необходимое действие"
${registry::MoveKey} "HKLM\SOFTWARE\$1" "HKLM\SOFTWARE\$1_bak" $r9
${Registry::UnLoad}
${EndIf}
${LoopUntil} $1 == ""
SectionEnd-
K.A.V.
Re: .: NSIS - все вопросы :. часть 2.
Цитата Dodakaedr:
С тестовыми ключами да, но если подставить требуемые, то результат тот же
Значит дело конкретно в твоих ключах. Либо нет доступа к ключу, либо скрипту(плагину) не нравится название ключа.
В частности, подозрение вызывает "UserVars" в составе ключа.
С тестовыми ключами да, но если подставить требуемые, то результат тот же
.: NSIS - все вопросы :. часть 2.
Значит дело конкретно в твоих ключах. Либо нет доступа к ключу, либо скрипту(плагину) не нравится название ключа.
В частности, подозрение вызывает "UserVars" в составе ключа.
-
ZaxBoys66
Re: .: NSIS - все вопросы :. часть 2.
Есть плагин от K.A.V. для установки прозрачности окна инсталлятора - для примера код:
Скрытый текст
[spoiler]Код: [/spoiler]
Прозрачность работает, но после нажатия кнопки "Обзор" transparent плагин перестаёт работать.
В чём может быть проблема?
Скрытый текст
[spoiler]Код: [/spoiler]
Код: Выделить всё
!include "MUI2.nsh"
!define TBM_SETPOS 0x0405
!define TBM_GETPOS 0x0400
!define TBM_SETRANGEMIN 0x0407
!define TBM_SETRANGEMAX 0x0408
!addplugindir "."
!insertmacro MUI_LANGUAGE "Russian"
Name "transparent plugin example"
OutFile "transparent.exe"
XPStyle on
Var transparent
Var Slider
Var Move
Var Label
Var Button
Page custom Create
Function Slider
SendMessage $Slider ${TBM_GETPOS} 0 0 $Move
transparent::SetTransparentWindowStyle "$Move"
${NSD_SetText} $Label "$Move"
FunctionEnd
Function Create
nsDialogs::Create 1018
Pop $transparent
nsDialogs::CreateControl "msctls_trackbar32" "0x50010000|0x00000018" "" 80u 100u 200 60 ""
Pop $Slider
SendMessage $Slider ${TBM_SETRANGEMIN} 1 50
SendMessage $Slider ${TBM_SETRANGEMAX} 1 255
SendMessage $Slider ${TBM_SETPOS} 1 255
transparent::SetTransparentWindowStyle "255"
${NSD_CreateLabel} 215u 104u 30u 30u ""
Pop $Label
${NSD_CreateButton} 20u 103u 51u 12u "Обзор"
Pop $Button
${NSD_OnClick} $Button Example
${NSD_CreateTimer} Slider 50
nsDialogs::Show $transparent
FunctionEnd
Function Example
nsDialogs::SelectFolderDialog /NOUNLOAD "" ""
Pop $0
FunctionEnd
Section
SectionEndПрозрачность работает, но после нажатия кнопки "Обзор" transparent плагин перестаёт работать.
В чём может быть проблема?
-
Dodakaedr
Re: .: NSIS - все вопросы :. часть 2.
Цитата Sancho5555:
Прозрачность работает, но после нажатия кнопки "Обзор" transparent плагин перестаёт работать.
Нет такой проблемы, по крайней мере у меня, всё работает
Попробуйте
Прозрачность работает, но после нажатия кнопки "Обзор" transparent плагин перестаёт работать.
.: NSIS - все вопросы :. часть 2.
Нет такой проблемы, по крайней мере у меня, всё работает
Попробуйте
так
-
MaGoth
Re: .: NSIS - все вопросы :. часть 2.
Цитата K.A.V.:
Нет такой проблемы, по крайней мере у меня, всё работает
Заметил у себя на Win8 X64 работает через раз, после загрузки системы, буду разбираться.
Нет такой проблемы, по крайней мере у меня, всё работает
.: NSIS - все вопросы :. часть 2.
Заметил у себя на Win8 X64 работает через раз, после загрузки системы, буду разбираться.