Я хочу добавить в конце пути имя папки установки моего приложения. Я делаю это успешно после нажатия кнопки «Обзор», но после многих попыток я не смог этого сделать, если я изменил текст прямо в текстовом поле.
Function .onVerifyInstDir
Push $0
FindWindow $0 "#32770" "" $HWNDPARENT
GetDlgItem $0 $0 0x3FB
;in alternative for MUI >2.0 I could use directly $mui.DirectoryPage.Directory. Is it right?
;does path end with "\MyApp"?
StrLen $R1 "\${APP_FOLDER_NAME}"
StrCpy $R0 $INSTDIR "" -$R1
StrCmp $R0 "\${APP_FOLDER_NAME}" +2
;add "\MyApp" after browse button clicking (OK)
StrCpy $INSTDIR "$INSTDIR\${APP_FOLDER_NAME}"
;add "\MyApp" after typing directly into the textbox but the cursor position reset to the first character. Tried to solve saving the current cursor position and then reapply it (NOK)
SendMessage $0 ${EM_GETSEL} null $1
SendMessage $0 ${WM_SETTEXT} 0 "STR:$INSTDIR"
SendMessage $0 ${EM_SETSEL} $1 $1
FunctionEnd
Мне не удается удержать курсор, когда я изменяю строку пути, и он всегда сбрасывается на первый символ.
На предыдущем этапе процесса установки я инициализирую путь установки следующим образом
StrCpy $INSTDIR "$APPDATA\${APP_FOLDER_NAME}"