Skip to content
⌘ NSIS Forum Archive

UMUI SetupType Page Problem

1 posts

logue#edited

UMUI SetupType Page Problem

I wrote the following codes.

When it chooses except Custom, registry, such as StartMenuFolder, is not written in and I am troubled by the page of SetupType.

#レジストリ�_定
!define UMUI_PARAMS_REGISTRY_ROOT HKLM
!define UMUI_PARAMS_REGISTRY_KEY "Software\MabiAssist"    ; レジストリの�_�納先
!define UMUI_LANGUAGE_REGISTRY_VALUENAME                "Language"            ; 言語
!define UMUI_SHELLVARCONTEXT_REGISTRY_VALUENAME            "ShellVarContext"    ; ユーザ(全てか、現在のユーザか)
!define UMUI_ADDITIONALTASKS_REGISTRY_VALUENAME            "Tasks"                ; 追�_の作�_
!define UMUI_INSTALLDIR_REGISTRY_VALUENAME                "InstallDir"        ; インストール先
!define UMUI_VERSION_REGISTRY_VALUENAME                    "Version"            ; バージョン
!define UMUI_VERBUILD_REGISTRY_VALUENAME                "VerBuild"            ; ビルド日時
!define UMUI_INSTALLERFULLPATH_REGISTRY_VALUENAME        "InstallPath"        ; インストーラーの位置
!define UMUI_UNINSTALLPATH_REGISTRY_VALUENAME            "UninstallPath"        ; アンインストーラーの位置
!define UMUI_UNINSTALL_FULLPATH "$INSTDIR\Uninstall MabiAssist.exe"
!define UMUI_PREUNINSTALL_FUNCTION preuninstall_function
InstallDirRegKey ${UMUI_PARAMS_REGISTRY_ROOT} "${UMUI_PARAMS_REGISTRY_KEY}" ""
...
...
; 言語選択
!insertmacro UMUI_PAGE_MULTILANGUAGE
; メンテナンスページ
    !define UMUI_MAINTENANCEPAGE_MODIFY
    !define UMUI_MAINTENANCEPAGE_REPAIR
    !define UMUI_MAINTENANCEPAGE_REMOVE
    !define UMUI_MAINTENANCEPAGE_CONTINUE_SETUP
!insertmacro UMUI_PAGE_MAINTENANCE
; アップデートページ
    !define UMUI_UPDATEPAGE_REMOVE
    !define UMUI_UPDATEPAGE_CONTINUE_SETUP
!insertmacro UMUI_PAGE_UPDATE
; ようこそページ
    !define UMUI_WELCOMEPAGE_ALTERNATIVETEXT
!insertmacro MUI_PAGE_WELCOME
; ライセンスページ
    !define MUI_LICENSEPAGE_CHECKBOX
!insertmacro MUI_PAGE_LICENSE $(License)
; セットアップタイプ選択ページ
    !define UMUI_SETUPTYPEPAGE_MINIMAL "$(UMUI_TEXT_SETUPTYPE_MINIMAL_TITLE)"
    !define UMUI_SETUPTYPEPAGE_STANDARD "$(UMUI_TEXT_SETUPTYPE_STANDARD_TITLE)"
    !define UMUI_SETUPTYPEPAGE_COMPLETE "$(UMUI_TEXT_SETUPTYPE_COMPLETE_TITLE)"
    !define UMUI_SETUPTYPEPAGE_DEFAULTCHOICE ${UMUI_STANDARD}
    !define UMUI_SETUPTYPEPAGE_REGISTRY_VALUENAME            "SetupType"
!insertmacro UMUI_PAGE_SETUPTYPE
; スタートメニュー選択ページ
    !define MUI_STARTMENUPAGE_REGISTRY_VALUENAME "StartMenuFolder"
    !define MUI_STARTMENUPAGE_DEFAULTFOLDER "$(^Name)"
    !define UMUI_ALTERNATIVESTARTMENUPAGE_SETSHELLVARCONTEXT
    !define UMUI_ALTERNATIVESTARTMENUPAGE_USE_TREEVIEW
!insertmacro UMUI_PAGE_ALTERNATIVESTARTMENU Application $STARTMENU_FOLDER
; コンポーネントページ
    !define UMUI_COMPONENTSPAGE_INSTTYPE_REGISTRY_VALUENAME    "InstType"
    !define UMUI_COMPONENTSPAGE_REGISTRY_VALUENAME            "Components"
!insertmacro MUI_PAGE_COMPONENTS
; インストール先�_定ページ
!insertmacro MUI_PAGE_DIRECTORY
; 追�_の作�_ページ
!insertmacro UMUI_PAGE_ADDITIONALTASKS addtasks_function
; 確認ページ
    !define UMUI_CONFIRMPAGE_TEXTBOX confirm_function
!insertmacro UMUI_PAGE_CONFIRM
; インストールページ
!insertmacro MUI_PAGE_INSTFILES
; インストール完了ページ
    !define MUI_FINISHPAGE_NOAUTOCLOSE
    !define MUI_FINISHPAGE_LINK ${LINK_NAME}
    !define MUI_FINISHPAGE_LINK_LOCATION ${URL}
!insertmacro MUI_PAGE_FINISH
; �_�_ページ
    !define UMUI_ABORTPAGE_LINK ${LINK_NAME}
    !define UMUI_ABORTPAGE_LINK_LOCATION ${URL}
!insertmacro UMUI_PAGE_ABORT 
Somehow, all registry setup of the page skipped on a SetupType page will be disregarded.
(InstType, Components, StartMenuFolder, Task etc)