У меня есть установщик NSIS, над которым я работаю, и я должен иметь возможность предотвратить установку в папки с ошибками пользователя (например, $ SYSDIR, $ WINDIR, $ DESKTOP и т. Д.) *
Я хочу, чтобы они могли выбрать путь установки, но просто отключить следующую кнопку, если они выбрали местоположение, как указано выше. Я искал везде и не могу найти ответ на этот вопрос.
Я пытался использовать это, но я все еще могу установить на рабочий стол:
!define MUI_PAGE_CUSTOMFUNCTION_LEAVE MyDirLeave
!insertmacro MUI_PAGE_DIRECTORY
...
Function MyDirLeave
Push $0
StrLen $0 $DESKTOP
StrCpy $0 $INSTDIR $0
StrCmp $0 $DESKTOP 0 proceed
MessageBox MB_ICONSTOP|MB_OK \
"Installation on DESKTOP is not allowed, choose another directory"
Abort
proceed:
Pop $0
FunctionEnd