Таким образом, у вас должны быть элементы управления в INI, как это:
[Field 1]
Type=Label
Left=15
Top=7
Right=112
Bottom=16
Text=Text 1
, тогда вы можете получить дескриптор на поле, как это:
ReadIniStr $0 $PLUGINSDIR\page_ini.ini "Field 1" "HWND"
Итак, вы можете использоватькоманда SendMessage
с $0
выглядит следующим образом:
SendMessage $0 ${WM_SETTEXT} 0 "STR:$InitialString"
Этот пример должен работать с текстовыми полями, для других элементов управления см. следующее: В пути установки NSIS в разделе «Включить» находится файлWinmessages.nsh
с ключами сообщения для использования.
В своих тестах я нашел ключ для установки флажков:
SendMessage $0 ${BM_SETCHECK} 0 "0"
Для списков я нашел: (не проверено)
LB_RESETCONTENT
LB_SELECTSTRING
Надеюсь, это поможет.PS: Если у вас есть какие-либо вопросы или критические замечания, пожалуйста, дайте мне знать.
PPS:
В качестве альтернативы вы можете использовать макросы nsDialogs с дескриптором HWND, то есть для флажка:
${NSD_Uncheck} $0
Более подробную информацию об этих макросах можно найти здесь: nsDialogs Readme - Macros