;
; Install Script V11.0.1.10
;

;---------------------------------
; General Information
;---------------------------------

[LOG]
FORMAT=1

[MSETUP]
LANGUAGE=Japanese
OS=WinXP,WinVista
SCRIPT=MAIN_SCRIPT
CDTYPE=JCD
PRODUCTFLAG=1
NAME=MX920 series Printer
TITLE=PIXUS MX923
PRODUCTNAME=MX923
DEVICEID=MX920 series
SCANINFNAME=
HEADALIGNMENTFLAG=0
LANFLAG=1
WEBREGFLAG=0
2KDRVID=
MFPID=MX920
FAXNAME=MX920 series FAX
TESTPRINTFLG=1
LANTYPE=3
CAPTUREMODE=0

[PRODUCTTYPE_LIST]
0=SFP
1=MFP
2=SFS
3=FAX

[ITEM_WinXP]
MPDRIVER
EGV
MYPRINTER
MIG
DIALUTIL
QUICK
YOMITORI
EWPEX
OSHIRASE

[ITEM_WinVista]
MPDRIVER
EGV
MYPRINTER
MIG
DIALUTIL
QUICK
YOMITORI
EWPEX
OSHIRASE
XPS

[ITEM_DRVONLY_LIST_WinXP]
0=ITEM_PRNDRV_ONLY_WinXP
1=ITEM_MPDRV_ONLY_WinXP

[ITEM_DRVONLY_LIST_WinVista]
0=ITEM_PRNDRV_ONLY_WinVista
1=ITEM_MPDRV_ONLY_WinVista

[ITEM_PRNDRV_ONLY_WinXP]
PRINTERDRIVER

[ITEM_PRNDRV_ONLY_WinVista]
PRINTERDRIVER
XPS

[ITEM_MPDRV_ONLY_WinXP]
MPDRIVER

[ITEM_MPDRV_ONLY_WinVista]
MPDRIVER
XPS

;---------------------------------
; OS Information
;---------------------------------
[Win2000]
TYPE=NT
FROM=5,0,0
TO=5,0,9999
NAME=Win2000

[WinXP]
TYPE=NT
FROM=5,1,0
TO=5,9999,9999
NAME=WinXP

[WinVista]
TYPE=NT
FROM=6,0,0
TO=99,9999,9999
NAME=WinVista

[IS_WIN2K]
IF=%OS%,Win2000
OR
IF=%OS%,WinXP
OR
IF=%OS%,WinVista

;---------------------------------
; Main Script
;---------------------------------
[WWWWWWWWWWWWWWWWWWWWW]

[MAIN_SCRIPT]
INIT_PROC
CHECK_PROC
CHECK4WEL_PROC
WELCOME_PROC
RESIDENCE_PROC
COUNTRY_PROC
DOTNET_PROC
APLIST_PROC
DESTINATION_PROC
EULA_PROC
ADOBEEULA_PROC
YOMITORIEULA_PROC
OSHIRASEEULA_PROC
INSTALL_PROC
INSTALL_CLOSEALERT_PROC
INSTALL_QFE_PROC
INSTALL_PRINTERDRIVER_PROC
INSTALL_MPDRIVER_PROC
INSTALL_SCANGEAR_PROC
INSTALL_EGV_PROC
INSTALL_MYPRINTER_PROC
INSTALL_MPNAVIEX_PROC
INSTALL_DIALUTIL_PROC
INSTALL_MIG_PROC
INSTALL_QUICK_PROC
INSTALL_PSP_PROC
INSTALL_EPPEX_PROC
INSTALL_SBOX_PROC
INSTALL_EPPPRO_PROC
INSTALL_ADOBEICC_PROC
INSTALL_YOMITORI_PROC
INSTALLED_YOMITORI_PROC
INSTALL_EWPEX_PROC
INSTALL_OSHIRASE_PROC

BEFORE_WREG_PROC
FINAL_PROC
INSTALL_DETECTPRINTER_PROC
INSTALL_LAN_PROC
INSTALL_XPS_PROC
HEADALIGNMENT_PROC
HEADALIGNMENT2_PROC
INSTCOMPLETE_PROC
WEBREG_PROC
IJPLM_PROC
IJPLM_PROC2
TESTPRINT_PROC
END_PROC
FAILURE_PROC
DETECT_FAILURE_PROC
LAN_FAILURE_PROC
WAITPHA_PROC
SELECTIF_TUTO_PROC
SETLAN_TUTO_PROC
CONNECTING_WEBREG_PROC
LANG_PROC
INST_DOTNET_PROC

;---------------------------------
; Item Detail Information
;---------------------------------
[MPDRIVER]
TEXT=`%MESSAGE%;STRING;MSM4016`
RUBI=`%MESSAGE%;STRING;MSM4116`
TOOLTIP=`%MESSAGE%;STRING;MSM3016`
CATEGORY=ITEMLIST_APPL
SIZE=260
WEIGHT=120
BGCOLOR=0xDAFFD7
ROW=1
SELECT=1
ENABLE=1
INSTALLED=0
LOCATION=0
STEPNAME='"`%MESSAGE%;STRING;MSM4016`"
EULA_NECESSITY=1
EULA_CANCEL=0
APPNAME=MPDriver
CANSELECT=1

[PRINTERDRIVER]
TEXT=`%MESSAGE%;STRING;MSM4001W`
RUBI=`%MESSAGE%;STRING;MSM4101`
TOOLTIP=`%MESSAGE%;STRING;MSM3001`
CATEGORY=ITEMLIST_APPL
SIZE=130
WEIGHT=120
BGCOLOR=0xDAFFD7
ROW=1
SELECT=1
ENABLE=1
INSTALLED=0
LOCATION=0
STEPNAME='"`%MESSAGE%;STRING;MSM4001W`"
EULA_NECESSITY=1
EULA_CANCEL=0
APPNAME=GDIPrinterDriver
CANSELECT=1

[XPS]
TEXT=`%MESSAGE%;STRING;MSM4027`
RUBI=`%MESSAGE%;STRING;MSM4127`
TOOLTIP=`%MESSAGE%;STRING;MSM3027_%PRODUCTFLAG%`
CATEGORY=ITEMLIST_APPL
SIZE=130
WEIGHT=0
BGCOLOR=0xDAFFD7
ROW=1
SELECT=0
ENABLE=1
INSTALLED=0
LOCATION=0
STEPNAME='"`%MESSAGE%;STRING;MSM1808`"
EULA_NECESSITY=1
EULA_CANCEL=0
APPNAME=XPSDriver
IGNORE=1
CANSELECT=1

[SCANGEAR]
TEXT=`%MESSAGE%;STRING;MSM4028`
RUBI=`%MESSAGE%;STRING;MSM4128`
TOOLTIP=`%MESSAGE%;STRING;MSM3028`
CATEGORY=ITEMLIST_APPL
SIZE=100
WEIGHT=120
BGCOLOR=0xDAFFD7
ROW=1
SELECT=1
ENABLE=1
INSTALLED=0
LOCATION=0
STEPNAME='"`%MESSAGE%;STRING;MSM4028`"'
EULA_NECESSITY=1
EULA_CANCEL=0
APPNAME=ScannerDriver
CANSELECT=1

[EGV]
TEXT=`%MESSAGE%;STRING;MSM4002`
RUBI=`%MESSAGE%;STRING;MSM4102`
TOOLTIP=`%MESSAGE%;STRING;MSM3043`
CATEGORY=ITEMLIST_APPL
SIZE=10
WEIGHT=120
BGCOLOR=0xDAFFD7
ROW=1
SELECT=1
ENABLE=1
INSTALLED=0
LOCATION=0
STEPNAME='"`%MESSAGE%;STRING;MSM4002`"'
EULA_NECESSITY=1
EULA_CANCEL=0
APPNAME=OnScreenManual
CANSELECT=1

[MPNAVIEX]
TEXT=`%MESSAGE%;STRING;MSM4042`
RUBI=`%MESSAGE%;STRING;MSM4142`
TOOLTIP=`%MESSAGE%;STRING;MSM3042`
CATEGORY=ITEMLIST_APPL
SIZE=80
WEIGHT=120
BGCOLOR=0xD9FFFE
ROW=1
SELECT=1
ENABLE=1
INSTALLED=0
LOCATION=0
STEPNAME='"`%MESSAGE%;STRING;MSM1808`"
EULA_NECESSITY=1
EULA_CANCEL=0
APPNAME=MPNavigatorEx
CANSELECT=1

[DIALUTIL]
TEXT=`%MESSAGE%;STRING;MSM4045`
RUBI=`%MESSAGE%;STRING;MSM4145`
TOOLTIP=`%MESSAGE%;STRING;MSM3045`
CATEGORY=ITEMLIST_APPL
SIZE=10
WEIGHT=120
BGCOLOR=0xD9FFFE
ROW=1
SELECT=1
ENABLE=1
INSTALLED=0
LOCATION=0
STEPNAME='"`%MESSAGE%;STRING;MSM1808`"
EULA_NECESSITY=1
EULA_CANCEL=0
APPNAME=DialUtility
CANSELECT=1

[MYPRINTER]
TEXT=`%MESSAGE%;STRING;MSM4021`
RUBI=`%MESSAGE%;STRING;MSM4121`
TOOLTIP=`%MESSAGE%;STRING;MSM3013`
CATEGORY=ITEMLIST_APPL
SIZE=14
WEIGHT=120
BGCOLOR=0xD9FFFE
ROW=1
SELECT=1
ENABLE=1
INSTALLED=0
LOCATION=0
STEPNAME='"`%MESSAGE%;STRING;MSM1808`"'
EULA_NECESSITY=1
EULA_CANCEL=0
APPNAME=MyPrinter
CANSELECT=1

[EWPEX]
TEXT=`%MESSAGE%;STRING;MSM4044`
RUBI=`%MESSAGE%;STRING;MSM4144`
TOOLTIP=`%MESSAGE%;STRING;MSM3044`
CATEGORY=ITEMLIST_APPL
SIZE=25
WEIGHT=120
BGCOLOR=0xD9FFFE
ROW=1
SELECT=1
ENABLE=1
INSTALLED=0
LOCATION=0
STEPNAME='"`%MESSAGE%;STRING;MSM1807`"'
EULA_NECESSITY=1
EULA_CANCEL=0
APPNAME=EWPEX
CANSELECT=1

[EPPEX]
TEXT=`%MESSAGE%;STRING;MSM4040`
RUBI=`%MESSAGE%;STRING;MSM4140`
TOOLTIP=`%MESSAGE%;STRING;MSM3040`
CATEGORY=ITEMLIST_APPL
SIZE=270
WEIGHT=120
BGCOLOR=0xD9FFFE
ROW=1
SELECT=1
ENABLE=1
INSTALLED=0
LOCATION=1
STEPNAME='"`%MESSAGE%;STRING;MSM1807`"'
EULA_NECESSITY=1
EULA_CANCEL=0
APPNAME=Easy-PhotoPrintEx
CANSELECT=1

[MIG]
TEXT=`%MESSAGE%;STRING;MSM4048`
RUBI=`%MESSAGE%;STRING;MSM4148`
TOOLTIP=`%MESSAGE%;STRING;MSM3048`
CATEGORY=ITEMLIST_APPL
SIZE=680
WEIGHT=120
BGCOLOR=0xD9FFFE
ROW=1
SELECT=1
ENABLE=1
INSTALLED=0
LOCATION=0
STEPNAME='"`%MESSAGE%;STRING;MSM1807`"'
EULA_NECESSITY=1
EULA_CANCEL=0
APPNAME=MyImageGarden
CANSELECT=1

[PSP]
TEXT=`%MESSAGE%;STRING;MSM4049`
RUBI=`%MESSAGE%;STRING;MSM4149`
TOOLTIP=`%MESSAGE%;STRING;MSM3049`
CATEGORY=ITEMLIST_APPL
SIZE=90
WEIGHT=120
BGCOLOR=0xD9FFFE
ROW=1
SELECT=1
ENABLE=1
INSTALLED=0
LOCATION=1
STEPNAME='"`%MESSAGE%;STRING;MSM1807`"'
EULA_NECESSITY=1
EULA_CANCEL=0
APPNAME=PrintStudioPro
CANSELECT=1

[QUICK]
TEXT=`%MESSAGE%;STRING;MSM4050`
RUBI=`%MESSAGE%;STRING;MSM4150`
TOOLTIP=`%MESSAGE%;STRING;MSM3050`
CATEGORY=ITEMLIST_APPL
SIZE=25
WEIGHT=120
BGCOLOR=0xD9FFFE
ROW=1
SELECT=1
ENABLE=1
INSTALLED=0
LOCATION=0
STEPNAME='"`%MESSAGE%;STRING;MSM1807`"'
EULA_NECESSITY=1
EULA_CANCEL=0
APPNAME=QuickMenu
CANSELECT=1

[OSHIRASE]
TEXT=`%MESSAGE%;STRING;MSM4047`
RUBI=`%MESSAGE%;STRING;MSM4147`
TOOLTIP=`%MESSAGE%;STRING;MSM3047`
CATEGORY=ITEMLIST_APPL
SIZE=100
WEIGHT=120
BGCOLOR=0xD9FFFE
ROW=1
SELECT=1
ENABLE=1
INSTALLED=0
LOCATION=0
STEPNAME='"`%MESSAGE%;STRING;MSM1807`"'
EULA_NECESSITY=0
EULA_CANCEL=0
SILENT=1
APPNAME=Oshirase
CANSELECT=1

[EPPPRO]
TEXT=`%MESSAGE%;STRING;MSM4026`
RUBI=`%MESSAGE%;STRING;MSM4126`
TOOLTIP=`%MESSAGE%;STRING;MSM3026`
CATEGORY=ITEMLIST_APPL
SIZE=90
WEIGHT=120
BGCOLOR=0xD9FFFE
ROW=1
SELECT=1
ENABLE=1
INSTALLED=0
LOCATION=1
EULA_NECESSITY=1
EULA_CANCEL=0
APPNAME=Easy-PhotoPrintPro
CANSELECT=1

[SBOX]
TEXT=`%MESSAGE%;STRING;MSM4046`
RUBI=`%MESSAGE%;STRING;MSM4146`
TOOLTIP=`%MESSAGE%;STRING;MSM3046`
CATEGORY=ITEMLIST_APPL
SIZE=20
WEIGHT=120
BGCOLOR=0xD9FFFE
ROW=1
SELECT=1
ENABLE=1
INSTALLED=0
LOCATION=0
STEPNAME='"`%MESSAGE%;STRING;MSM1807`"'
EULA_NECESSITY=1
EULA_CANCEL=0
APPNAME=SolutionMenuEX
CANSELECT=1

[YOMITORI]
TEXT=`%MESSAGE%;STRING;MSM4020`
RUBI=`%MESSAGE%;STRING;MSM4120`
TOOLTIP=`%MESSAGE%;STRING;MSM3019`
CATEGORY=ITEMLIST_APPL
SIZE=160
WEIGHT=120
BGCOLOR=0xD9FFFE
ROW=1
SELECT=1
ENABLE=1
INSTALLED=0
LOCATION=0
STEPNAME='"`%MESSAGE%;STRING;MSM1807`"'
EULA_NECESSITY=0
EULA_CANCEL=0
SILENT=1
APPNAME=Yomikaku
CANSELECT=1

[ADOBEICC]
TEXT=`%MESSAGE%;STRING;MSM4034`
RUBI=`%MESSAGE%;STRING;MSM4134`
TOOLTIP=`%MESSAGE%;STRING;MSM3034`
CATEGORY=ITEMLIST_APPL
SIZE=1
WEIGHT=120
BGCOLOR=0xD9FFFE
ROW=1
SELECT=1
ENABLE=1
INSTALLED=0
LOCATION=0
STEPNAME='"`%MESSAGE%;STRING;MSM1807`"'
EULA_NECESSITY=0
EULA_CANCEL=0
SILENT=1
APPNAME=AdobeRGB1998
CANSELECT=1

[dummy]
TEXT=
RUBI=
CATEGORY=
SIZE=0
BGCOLOR=0xFFFFFF
ROW=1
SELECT=1
ENABLE=0
INSTALLED=0
LOCATION=0
STEPNAME='"`%MESSAGE%;STRING;MSM1807`"'
EULA_NECESSITY=1
EULA_CANCEL=0
CANSELECT=1

;---------------------------------
; public section
;---------------------------------
[IS_ARCHITECTURE_X64]
IF=%ARCHITECTURE%,x64

[IS_SFP]
IFEQ=%PRODUCTFLAG%,0

[IS_MFP]
IFEQ=%PRODUCTFLAG%,1

[IS_SFS]
IFEQ=%PRODUCTFLAG%,2

[IS_FAX]
IFEQ=%PRODUCTFLAG%,3

[IS_SFPFAX]
IFEQ=%PRODUCTFLAG%,0
OR
IFEQ=%PRODUCTFLAG%,3

[IS_CAPTURE_MODE]
IFNE=`%INI%;MSETUP;CAPTUREMODE`,0

[REBOOTMODE_REJECT]
TEXT=`%MESSAGE%;STRING;MSE1`
CAPTION=`%MESSAGE%;STRING;MSM0104`
REBOOT=REJECT

[REBOOTMODE_ACCEPT]
TEXT=`%MESSAGE%;STRING;MSE1`
CAPTION=`%MESSAGE%;STRING;MSM0104`
REBOOT=ACCEPT

[EJECTMODE_REJECT]
TEXT=`%MESSAGE%;STRING;MSE8`
CAPTION=`%MESSAGE%;STRING;MSM0104`
EJECT=REJECT

[INSTALLED_MSG]
TEXT=`%MESSAGE%;STRING;MSM1903`
CAPTION=`%MESSAGE%;STRING;MSM1901`
BUTTON=NONE
TIME=0

[REBOOTREJECT_ACTION]
LET=LET_REBOOT_TRUE
END

[LET_DRIVER_SKIP_TRUE]
%DRIVER_SKIP%=1

[LET_DRIVER_SKIP_FALSE]
%DRIVER_SKIP%=0

[IS_DRIVER_SKIP]
IFEQ=%DRIVER_SKIP%,1

[RERUN_THIS]
FILE=%MCDCHECK_DIR%\MCDCHECK.INI
BEGIN=THIS

[RERUN_NEXT]
FILE=%MCDCHECK_DIR%\MCDCHECK.INI
BEGIN=NEXT

;---------------------------------
; Initialize Procedure
;---------------------------------

[INIT_PROC]
INITIALIZE=INIT_ACTION

[INIT_ACTION]
IF=IS_LANG_NULL
  LANGUAGE=0
  LET=LET_SELECTED_LANG_TOP
ENDIF
LET=LET_RTLREADING

REBOOTMODE=REBOOTMODE_REJECT
EJECTMODE=EJECTMODE_REJECT

IF=IS_SCREENSIZE
  SETWINDOWZPOS=1
  MESSAGE=MSG_SCREENSIZEERROR
  END=END
ENDIF

LET=INIT_VARIABLE
LET=LET_INIT_INSTALLPATH
LET=LET_MCDCHECK_DIR
LET=INIT_LOG

IF=IS_CAPTURE_MODE
  SETWINDOWZPOS=1
  MESSAGE=MSG_CAPTUREMODE
ENDIF

LET=LET_REGREBOOT_FALSE

LET=LET_GDIDRVNAME
IF=IS_SFS
  LET=LET_GDIDRVNAME_SFS
ENDIF

END=NEXT

[LET_GDIDRVNAME]
%GDIDRVNAME%=%PRINTERNAME%
[LET_GDIDRVNAME_SFS]
%GDIDRVNAME%=

[MSG_CAPTUREMODE]
TEXT=MasterSetup is running in Capturemode.No Application Software will be installed in this mode.
CAPTION=Debug
BUTTON=OK
ICON=INFORMATION

[IS_RTLREADING]
IFEQ=%RTLREADING%,1

[LET_SCI_RTLREADING]
%SCREEN%=%SRC%\RES\SCREEN\RTL

[LET_SCI_NORMAL]
%SCREEN%=%SRC%\RES\SCREEN

[IS_LANG_NULL]
IF=%LANG%,""

[INIT_VARIABLE]
%NAME%=`%INI%;MSETUP;NAME`
%PRODUCTNAME%=`%INI%;MSETUP;PRODUCTNAME`
%LOGOPRINTERNAME%=`%INI%;MSETUP;TITLE`
%PRINTERLOGONAME%=Canon `%INI%;MSETUP;TITLE`
%PRINTERNAME%=Canon `%INI%;MSETUP;NAME`
%FAXNAME%=Canon `%INI%;MSETUP;FAXNAME`
%SCANNERDRIVERNAME%=""
%FRENDLYNAME%=""
%REBOOT%=0
%REBOOTDRV%=0
%INSTALLTIME%=10
%DETECTTIMEOUT%=180
%DETECTTIMEOUT_LONG%=600
%PRODUCTFLAG%=`%INI%;MSETUP;PRODUCTFLAG`
%LANFLAG%=`%INI%;MSETUP;LANFLAG`
%MFPID%=`%INI%;MSETUP;MFPID`
%SCANINFNAME%=`%INI%;MSETUP;SCANINFNAME`
%2KDRVID%=`%INI%;MSETUP;2KDRVID`
%CDTYPE%=`%INI%;MSETUP;CDTYPE`
%RTLREADING%=0
%SYSTEMUPDATE_OCCURED%=0
%WEBREG.INSTALLED%=0
%WEBREGFLAG%=`%INI%;MSETUP;WEBREGFLAG`
%HEADALIGNMENTFLAG%=`%INI%;MSETUP;HEADALIGNMENTFLAG`
%STEPNUM%=3
%SECONDINSTALL%=0
%UREG_DONE%=NONE
%SELECT_METHOD%=USB
%DEVICEID%=`%INI%;MSETUP;DEVICEID`
%WELCOME_SCI%=WELCOME_FIRST.SCI
%CHECKPRNFLAG%=NOTFOUND
%WEBREG_EXECUTE%=0
%SAVE_PLMLOG_FLAG%=0
%FAILSTEP%="NONE"
%LANFAIL%="NONE"
%CONNECTTYPE%=USB
%EULATYPE%=DEFEULA
%SEARCHPRN_RESULT%=TRUE
%DETECTANIME%=TRUE
%GETPXRESULT%=0
%GETPX_EXECUTE%=0
%IJPLM_DLL_INSTALL_ONCE%=0
%IJPLM_DLL_INSTALL_REBOOT%=0
%GETPROXYCOUNT%=0
%BACK_FROM_APLIST%=0
%DOTNETINST_TRY%=0
%DOTNETINST_FAILED%=0
%TESTPRINTFLG%=`%INI%;MSETUP;TESTPRINTFLG`
%LANTYPE%=`%INI%;MSETUP;LANTYPE`
%EXECBTN_ENABLE%=1

[IS_SCREENSIZE]
IFLT=%SCREENWIDTH%,790
OR
IFLT=%SCREENHEIGHT%,576

[MSG_SCREENSIZEERROR]
TEXT=`%MESSAGE%;STRING;MSE7`
CAPTION=`%MESSAGE%;STRING;MSM0101`
BUTTON=OK
ICON=ERROR

[INIT_LOG]
@Software\Canon\MSETUPLOG@=
@Software\Canon\MSETUPLOG;NAME@=SZ,%PRINTERNAME%

;---------------------------------
; Check Procedure
;---------------------------------

[CHECK_PROC]
INITIALIZE=CHECK_ACTION

[CHECK_ACTION]
LET=LET_RTLREADING
IF=IS_RTLREADING
  LET=LET_SCI_RTLREADING
ENDIF

IF=CHECKOS
ELSE
  SETWINDOWZPOS=1
  MESSAGE=OSERROR_MSG
  END=END
ENDIF

IF=CHECKOS_FORXP_NOJCD
  SETWINDOWZPOS=1
  MESSAGE=OSERROR_MSG_XP_UNDERSP3
  END=END
ENDIF

IF=IS_VISTA_NOSP_NOJCD
  SETWINDOWZPOS=1
  MESSAGE=OSERROR_MSG_VISTA_UNDERSP1
  END=END
ENDIF

IF=CHECKOS_FORXP_JCD
  SETWINDOWZPOS=1
  DECRYPT=DECRYPT_OSERROR_URL
  LET=ADD_PARAM_NOSPERROR_URL
  URLENCODE=URLENCODE_2OSERROR_URL
  LET=SET_TWINBTNDLG_MSG_XP
  OPENTWINBTNDLG=1
  END=END
ENDIF

IF=IS_VISTA_NOSP_JCD
  SETWINDOWZPOS=1
  DECRYPT=DECRYPT_OSERROR_URL
  LET=ADD_PARAM_NOSPERROR_URL
  URLENCODE=URLENCODE_2OSERROR_URL
  LET=SET_TWINBTNDLG_MSG_VISTA
  OPENTWINBTNDLG=1
  END=END
ENDIF

IF=CHECKADMIN
ELSE
  MESSAGE=ADMINERROR_MSG
  END=END
ENDIF
MKDIR=%INSTALL_PATH%
END=NEXT

[LET_RTLREADING]
%RTLREADING%=`%INI%;%LANG%;RTLREADING`

[CHECKOS]
IF=%OS%,WinXP
IFNOT=%ARCHITECTURE%,x64
OR
IF=%OS%,WinVista

[CHECKOS_FORXP_NOJCD]
IF=%OS%,WinXP
IFLT=%SP_MAJOR%,3
IFNOT=%CDTYPE%,JCD

[IS_VISTA_NOSP_NOJCD]
IFEQ=%OS_MAJOR%,6
IFEQ=%OS_MINOR%,0
IFEQ=%SP_MAJOR%,0
IFNOT=%CDTYPE%,JCD

[CHECKOS_FORXP_JCD]
IF=%OS%,WinXP
IFLT=%SP_MAJOR%,3
IF=%CDTYPE%,JCD

[IS_VISTA_NOSP_JCD]
IFEQ=%OS_MAJOR%,6
IFEQ=%OS_MINOR%,0
IFEQ=%SP_MAJOR%,0
IF=%CDTYPE%,JCD

[OSERROR_MSG]
TEXT=`%MESSAGE%;STRING;MSE2`
CAPTION=`%MESSAGE%;STRING;MSM0101`
BUTTON=OK
ICON=ERROR

[OSERROR_MSG_XP_UNDERSP3]
TEXT=`%MESSAGE%;STRING;MSE18`
CAPTION=`%MESSAGE%;STRING;MSM0101`
BUTTON=OK
ICON=ERROR

[OSERROR_MSG_VISTA_UNDERSP1]
TEXT=`%MESSAGE%;STRING;MSE19`
CAPTION=`%MESSAGE%;STRING;MSM0101`
BUTTON=OK
ICON=ERROR

[CHECKADMIN]
IFNE=%ADMIN%,0

[ADMINERROR_MSG]
TEXT=`%MESSAGE%;STRING;MSE3`
CAPTION=`%MESSAGE%;STRING;MSM0101`
BUTTON=OK
ICON=ERROR

;---------------------------------
; Check For Welcome Procedure
;---------------------------------
[CHECK4WEL_PROC]
INITIALIZE=CHECK4WEL_INITACTION
BEGIN=CHECK4WEL_BEGINACTION

[CHECK4WEL_INITACTION]
REBOOTMODE=REBOOTMODE_REJECT
EJECTMODE=EJECTMODE_REJECT
LET=LET_ITEMSECTION

IF=IS_OS_UPPER
  SETWINDOWZPOS=1
  DECRYPT=DECRYPT_OSERROR_URL
  LET=ADD_PARAM_2OSERROR_URL
  URLENCODE=URLENCODE_2OSERROR_URL
  LET=SET_TRIBTNDLG_MSG
  OPENTRIBTNDLG=1
ENDIF
IF=IS_OS_UPPER_AND_IDCANCEL
  END=END
ENDIF

IF=IS_MSETUP_NEVERRUN
  END=NEXT
ENDIF

IF=IS_SFS
  LET=LET_WELCOME_NORMAL
  END=NEXT
ENDIF

SEARCH_PRNICON=SEARCHPRN_SEC
IF=IS_SEARCHPRN_NOTFOUND
  END=NEXT
ENDIF

IF=IS_LAN
  LET=LET_WELCOME_SECOND
ELSE
  LET=LET_WELCOME_NORMAL
ENDIF

END

[CHECK4WEL_BEGINACTION]
END=NEXT

[IS_MSETUP_NEVERRUN]
IFNE=@Software\Canon\MSETUPINFO\%DEVICEID%;RUNONCE@,1

[LET_MSETUP_RUNONCE]
@Software\Canon\MSETUPINFO\%DEVICEID%;RUNONCE@=DWORD,1

[LET_WELCOME_SECOND]
%WELCOME_SCI%=WELCOME_SECOND.SCI

[IS_LAN]
IFNE=%LANFLAG%,0

[LET_WELCOME_NORMAL]
%WELCOME_SCI%=WELCOME_SECOND_USB.SCI

[SEARCHPRN_SEC]
TARGET=%DEVICEID%

[IS_SEARCHPRN_NOTFOUND]
IF=%DRVFOUND%,FALSE

[IS_OS_UPPER]
IFGE=%OS_MAJOR%,7

[IS_OS_UPPER_AND_IDCANCEL]
IFEQ=%EXITCODE%,2
IFGE=%OS_MAJOR%,7

[SET_TRIBTNDLG_MSG]
%TRIBTNDLG_TITLE%=%PRINTERLOGONAME%
%TRIBTNDLG_MSG%=`%MESSAGE%;STRING;MSW3`
%TRIBTNDLG_BTN1%=`%MESSAGE%;STRING;MSM0015`
%TRIBTNDLG_BTN2%=`%MESSAGE%;STRING;MSM0016`
%TRIBTNDLG_BTN3%=`%MESSAGE%;STRING;MSM0014`

[SET_TWINBTNDLG_MSG_XP]
%TWINBTNDLG_TITLE%=%PRINTERLOGONAME%
%TWINBTNDLG_MSG%=`%MESSAGE%;STRING;MSE18`
%TWINBTNDLG_BTN1%=`%MESSAGE%;STRING;MSM0016`
%TWINBTNDLG_BTN2%=`%MESSAGE%;STRING;MSM0014`

[SET_TWINBTNDLG_MSG_VISTA]
%TWINBTNDLG_TITLE%=%PRINTERLOGONAME%
%TWINBTNDLG_MSG%=`%MESSAGE%;STRING;MSE19`
%TWINBTNDLG_BTN1%=`%MESSAGE%;STRING;MSM0016`
%TWINBTNDLG_BTN2%=`%MESSAGE%;STRING;MSM0014`

[DECRYPT_OSERROR_URL]
%OSERRORURL%="jvvr8--rfkqr23,a/uqq,amo-o{rpklvgp-pgfkpgav="

[ADD_PARAM_NOSPERROR_URL]
%OSERRORURL%=%OSERRORURL%LNG=%MSETUPLANGID_SMALL%
%OSERRORURL%=%OSERRORURL%&RES=zzzzz
%OSERRORURL%=%OSERRORURL%&FNC=MSETUP_WINSP
%OSERRORURL%=%OSERRORURL%&CDN=%CDTYPE_FORHINPO%

[ADD_PARAM_2OSERROR_URL]
%OSERRORURL%=%OSERRORURL%LNG=%MSETUPLANGID_SMALL%
%OSERRORURL%=%OSERRORURL%&RES=zzzzz
%OSERRORURL%=%OSERRORURL%&CAT=`%INI%;PRODUCTTYPE_LIST;%PRODUCTFLAG%`
%OSERRORURL%=%OSERRORURL%&DEV=%DEVICEID%
%OSERRORURL%=%OSERRORURL%&FNC=MSETUP_OSOVER
%OSERRORURL%=%OSERRORURL%&CDN=%CDTYPE_FORHINPO%
%OSERRORURL%=%OSERRORURL%&OSV=W%OS_MAJOR%.%OS_MINOR%

[URLENCODE_2OSERROR_URL]
%OSERRORURL%=%OSERRORURL%

[LET_ITEMSECTION]
%ITEMSECTION%=ITEM_%OS%

;---------------------------------
; Welcome Procedure
;---------------------------------
[WELCOME_PROC]
INITIALIZE=WELCOME_INIT_ACTION
SCREEN=%SCREEN%\%WELCOME_SCI%
BEGIN=WELCOME_CHECKOS_BEGINACTION

FIRST_EVENT=FIRST_ACTION
REFIRST_EVENT=REFIRST_ACTION
CUSTOM_EVENT=CUSTOM_ACTION
IFCHANGE_EVENT=IFCHANGE_ACTION
LANG_EVENT=JUMP_LANG_ACTION
EXIT_EVENT=EXIT_ACTION
REBOOTREJECT_EVENT=REBOOTREJECT_ACTION

[WELCOME_INIT_ACTION]
ERASEITEM=%ITEMSECTION%
SETWINDOWZPOS=1
IF=IS_SFS
ELSE
  LET=LET_MSETUP_RUNONCE
ENDIF

END

[WELCOME_CHECKOS_BEGINACTION]
LET=LET_ITEMSECTION
LET=LET_PREVSTEP_WELCOME
LET=SET_DOTNETNEED_ZERO

LET=LET_IJPLMCPY_DLL
IF=HAS_IJPLMCPY
  LOG=IJPLMCPY_DLL install occured.
  DLL=CALL_IJPLMCPY_DLL
ENDIF
LET=IJPLM_DLL_INSTALL_ONCE_TRUE
IF=IS_DLL_REBOOT
  LET=IJPLM_DLL_INSTALL_REBOOT_TRUE
ENDIF

END

[JUMP_LANG_ACTION]
LET=LET_SELECTED_LANGSTR
END=LANG_PROC

[FIRST_ACTION]
LET=LET_FIRST
LOG=DotNet is %DOTNET_PREINSTALLED%
IF=IS_DOTNET_INSTALL_NEED
  LET=SET_DOTNETNEED_TRUE
ENDIF

INITITEM=%ITEMSECTION%
IF=IS_LAN
ELSE
  END=NEXT
ENDIF

STARTWAITDLG=2
IF=IS_ARCHITECTURE_X64
  APPL=CHECKPRN_INLAN_64
ELSE
  APPL=CHECKPRN_INLAN_32
ENDIF
LOG=EXITCODE is %EXITCODE%
STARTWAITDLG=0

IF=IF_PRINTER_FOUND_IN_LAN_WIRELESS
  LET=SELECT_METHOD_LAN_WIRELESS
  END=RESIDENCE_PROC
ENDIF
IF=IF_PRINTER_FOUND_IN_LAN_WIRED
  LET=SELECT_METHOD_LAN_WIRED
  END=RESIDENCE_PROC
ENDIF

END=SELECTIF_TUTO_PROC

[REFIRST_ACTION]
LET=LET_REFIRST

LOG=DotNet is %DOTNET_PREINSTALLED%
IF=IS_DOTNET_INSTALL_NEED
  LET=SET_DOTNETNEED_TRUE
ENDIF

INITITEM=%ITEMSECTION%
IF=IS_LAN
  END=SELECTIF_TUTO_PROC
ENDIF
END=NEXT

[CUSTOM_ACTION]
LET=LET_CUSTOM
INITITEM=%ITEMSECTION%
CHECK_ALLOFF=%ITEMSECTION%
END=NEXT

[IFCHANGE_ACTION]
LET=LET_DRVONLY
INITITEM=%ITEMSECTION%
END=SELECTIF_TUTO_PROC

[LET_FIRST]
%INSTALLFLOW%=First
%NEXTSTEP%=RESIDENCE_PROC
@Software\Canon\MSETUPLOG;FLAG1@=DWORD,1
[LET_REFIRST]
%INSTALLFLOW%=ReFirst
%NEXTSTEP%=RESIDENCE_PROC
@Software\Canon\MSETUPLOG;FLAG1@=DWORD,2
[LET_CUSTOM]
%INSTALLFLOW%=Choice
%NEXTSTEP%=EULA_PROC
@Software\Canon\MSETUPLOG;FLAG1@=DWORD,0
[LET_DRVONLY]
%INSTALLFLOW%=DrvOnly
%NEXTSTEP%=RESIDENCE_PROC
@Software\Canon\MSETUPLOG;FLAG1@=DWORD,3
%ITEMSECTION%=`%INI%;ITEM_DRVONLY_LIST_%OS%;%PRODUCTFLAG%;DEFAULT`

[IS_FIRST]
IF=%INSTALLFLOW%,First
[IS_RETRYFIRST]
IF=%INSTALLFLOW%,ReFirst
[IS_CHOICE]
IF=%INSTALLFLOW%,Choice
[IS_DRVONLY]
IF=%INSTALLFLOW%,DrvOnly

[EXIT_ACTION]
DLLARBITRATE
RMDIR=%PROGRAMFILES%\Canon
SAVE_IJPLMLOG=IJPLMLOG_FINISH
IF=IS_REBOOTNEED
ELSE
  DELETEREG=%PARAM_REG%
  END=END
ENDIF
MESSAGE=MSG_REBOOT
IF=IS_LPARAM_IDYES
  DELETEREG=%PARAM_REG%
  END=REBOOT
ELSE
  DELETEREG=%PARAM_REG%
  END=END
ENDIF
END

[MSG_REBOOT]
TEXT=`%MESSAGE%;STRING;MSM2802`
CAPTION=`%MESSAGE%;STRING;MSM2801`
ICON=INFORMATION
BUTTON=YESNO

[LET_INITIAL_WELCOME_PROC]
%TUTO_RESULT%=0

;---------------------------------
; Residence Procedure
;---------------------------------
[RESIDENCE_PROC]
INITIALIZE=RESIDENCE_ACTION
SCREEN=%SCREEN%\REGIDENCE.SCI

AMERICA_EVENT=AMERICA_ACTION
EURO_EVENT=EURO_ACTION
ASIA_EVENT=ASIA_ACTION
OCEANIA_EVENT=OCEANIA_ACTION
NEXT_EVENT=RESIDENCE_NEXT_ACTION
PREV_EVENT=RESIDENCE_PREV_ACTION
REBOOTREJECT_EVENT=REBOOTREJECT_ACTION

[RESIDENCE_ACTION]
IF=IS_JCD
  LET=LET_RESIDENCE_JAPAN
  END=NEXT
ENDIF
IF=IS_USCD
  LET=LET_RESIDENCE_AMERICA
  END=NEXT
ENDIF
LET=LET_PREVSTEP_RESIDENCE
SETWINDOWZPOS=1
END

[AMERICA_ACTION]
LET=LET_RESIDENCE_AMERICA
END

[EURO_ACTION]
LET=LET_RESIDENCE_EURO
END

[ASIA_ACTION]
LET=LET_RESIDENCE_ASIA
END

[OCEANIA_ACTION]
LET=LET_RESIDENCE_OCEANIA
END

[LET_RESIDENCE_JAPAN]
%RESIDENCE%=japan

[LET_RESIDENCE_AMERICA]
%RESIDENCE%=america

[LET_RESIDENCE_EURO]
%RESIDENCE%=europe

[LET_RESIDENCE_ASIA]
%RESIDENCE%=asia

[LET_RESIDENCE_OCEANIA]
%RESIDENCE%=oceania

[RESIDENCE_NEXT_ACTION]
LET=SETDEFAULTCOUNTRY
END=NEXT

[RESIDENCE_PREV_ACTION]
END=WELCOME_PROC

[LET_LANG_NULL]
%LANG%=""

;---------------------------------
; COUNTRY Procedure
;---------------------------------
[COUNTRY_PROC]
INITIALIZE=CHECK_COUNTRY_ACTION
SCREEN=%SCREEN%\COUNTRY.SCI

SELECT_COUNTRY_EVENT=SELECT_COUNTRY_ACTION
NEXT_EVENT=COUNTRY_NEXT_ACTION
PREV_EVENT=COUNTRY_PREV_ACTION
REBOOTREJECT_EVENT=REBOOTREJECT_ACTION

[CHECK_COUNTRY_ACTION]
LET=INIT_SELECTED_COUNTRY
LET=LET_WEBREGURL_NULL
IF=IS_JCD
  LET=SET_COUNTRY_JP
  LET=LET_WEBREGURL_BASE
  LOG=%WEBREG_URL_BASE%
  END=NEXT
ENDIF
IF=IS_USCD
  LET=SET_COUNTRY_US
  LET=LET_WEBREGURL_BASE
  END=NEXT
ENDIF
LET=LET_CIGTARGET_FALSE
LET=LET_PREVSTEP_COUNTRY
SETCOUNTRYLIST=1
END

[SETDEFAULTCOUNTRY]
%DEFAULTCOUNTRY%=`%INI%;DEFAULTCOUNTRY_%RESIDENCE%;%USERLANGID%;DEFAULT`

[SELECT_COUNTRY_ACTION]
LET=LET_SELECTED_COUNTRY
END

[LET_SELECTED_COUNTRY]
%SELECTED_NUM%=%LPARAM%

[COUNTRY_NEXT_ACTION]
COUNTRY=%SELECTED_NUM%
LET=SET_SELECTED_COUNTRY
IF=IS_EULATYPE_CHINA
  LET=LET_EULATYPE_CHINA
ENDIF

IF=IF_WEBREG_TARGET
  LET=LET_WEBREGURL_BASE
  END=NEXT
ENDIF

END=NEXT

[IS_EULATYPE_CHINA]
IF=%SELECTEDCOUNTRY%,"CN"
OR
IF=%SELECTEDCOUNTRY%,"HK"
OR
IF=%SELECTEDCOUNTRY%,"TW"
OR
IF=%SELECTEDCOUNTRY%,"MO"

[LET_EULATYPE_CHINA]
%EULATYPE%=Asia

[INIT_SELECTED_COUNTRY]
%SELECTED_NUM%=0
%SELECTEDCOUNTRY%=Others
%CIGTARGET%=FALSE

[SET_COUNTRY_JP]
%SELECTEDCOUNTRY%=JP
%CIGTARGET%=TRUE

[SET_COUNTRY_US]
%SELECTEDCOUNTRY%=US
%CIGTARGET%=TRUE

[LET_CIGTARGET_FALSE]
%CIGTARGET%=FALSE


[SET_SELECTED_COUNTRY]
%DEFAULTCOUNTRY%=`%MESSAGE%;STRING;%SELECTEDCOUNTRY%`

[COUNTRY_PREV_ACTION]
END=PREV

;---------------------------------
; DotNetInstall Procedure
;---------------------------------
[DOTNET_PROC]
SCREEN=%SCREEN%\DOTNET.SCI
INITIALIZE=DOTNET_INIT
BEGIN=DOTNET_BEGINACTION
PREV_EVENT=DOTNET_PREV_ACTION
YES_EVENT=DOTNET_YES_ACTION
NO_EVENT=DOTNET_NO_ACTION

[DOTNET_INIT]
IF=IS_BACK_FROM_APLIST
  LET=SET_BACK_FROM_APLIST_FALSE
ELSE
  LET=SAVE_DOTNET_PREV
ENDIF

IF=IS_CHOICE_AND_NO_DOTNET
  LET=LET_DOTNETAPLI_UNSELECT
ENDIF
IF=IS_CHOICE_AND_DOT_INSTALLED
  LET=LET_DOTNETAPLI_DO_INST
ENDIF
IF=IS_DOTNET_NOTNEED
  END=NEXT
ENDIF
LET=LET_PREVSTEP_DOTNET

END

[IS_CHOICE_AND_NO_DOTNET]
IF=%INSTALLFLOW%,Choice
IFEQ=%DOTNET_PREINSTALLED%,0
IFEQ=%DOTNETINST_TRY%,0
OR
IF=%INSTALLFLOW%,Choice
IFEQ=%DOTNET_PREINSTALLED%,0
IFEQ=%DOTNETINST_TRY%,1
IFEQ=%DOTNETINST_FAIELD%,1

[IS_CHOICE_AND_DOT_INSTALLED]
IF=%INSTALLFLOW%,Choice
IFEQ=%DOTNET_PREINSTALLED%,1
OR
IF=%INSTALLFLOW%,Choice
IFEQ=%DOTNET_PREINSTALLED%,0
IFEQ=%DOTNETINST_TRY%,1
IFEQ=%DOTNETINST_FAIELD%,0

[SET_BACK_FROM_APLIST_TRUE]
%BACK_FROM_APLIST%=1

[SET_BACK_FROM_APLIST_FALSE]
%BACK_FROM_APLIST%=0

[IS_BACK_FROM_APLIST]
IFEQ=%BACK_FROM_APLIST%,1

[SAVE_DOTNET_PREV]
%DOTNET_PREV%=%PREVSTEP%

[LET_PREVSTEP_DOTNET]
%PREVSTEP%=DOTNET_PROC

[DOTNET_BEGINACTION]
END

[DOTNET_PREV_ACTION]
END=%DOTNET_PREV%

[DOTNET_YES_ACTION]
IF=IF_DOTNET_NOT_TRY
  LET=SET_DOTNETINST_TRY_TRUE
  END=INST_DOTNET_PROC
ENDIF
IF=IF_DOTNETINST_FAILED
  LET=LET_DOTNETAPLI_UNSELECT
ENDIF
END=NEXT

[DOTNET_NO_ACTION]
IF=IF_DOTNET_NOT_TRY
  LET=LET_DOTNETAPLI_UNSELECT
ENDIF
IF=IF_DOTNETINST_FAILED
  LET=LET_DOTNETAPLI_UNSELECT
ENDIF

END=NEXT

[IF_DOTNET_NOT_TRY]
IFEQ=%DOTNETINST_TRY%,0

[SET_DOTNETINST_TRY_TRUE]
%DOTNETINST_TRY%=1

[IS_DOTNET_INSTALL_NEED]
IFEQ=%DOTNET_PREINSTALLED%,0

[SET_DOTNETNEED_TRUE]
%DOTNET_NEED%=1

[SET_DOTNETNEED_ZERO]
%DOTNET_NEED%=0

[IS_DOTNET_NOTNEED]
IFEQ=%DOTNET_NEED%,0

;---------------------------------
; Install DotNet Procedure
;---------------------------------
[INST_DOTNET_PROC]
SCREEN=%SCREEN%\DUMMY.SCI
BEGIN=INST_DOTNET_BEGIN

[INST_DOTNET_BEGIN]
REBOOTMODE=REBOOTMODE_ACCEPT

APPL=APPL_DOTNET4

IF=IS_DOTNET_SUCCESS
  LET=LET_DOTNETAPLI_DO_INST
  CHECK_ALLON=%ITEMSECTION%
  LET=LET_XPS_UNSELECT
ELSE
  LET=LET_DOTNETAPLI_UNSELECT
  LET=LET_DOTNETINST_FAILED_TRUE
ENDIF

IF=IS_DOTNET_INST_NEEDREBOOT
  LET=LET_REBOOT_TRUE
ENDIF

END=APLIST_PROC

[IS_DOTNET_SUCCESS]
IFEQ=%EXITCODE%,0
OR
IFEQ=%EXITCODE%,1614
OR
IFEQ=%EXITCODE%,3010

[IS_DOTNET_INST_NEEDREBOOT]
IFEQ=%EXITCODE%,1614
OR
IFEQ=%EXITCODE%,3010

[LET_XPS_UNSELECT]
%XPS.SELECT%=0

[LET_DOTNETAPLI_DO_INST]
%MIG.CANSELECT%=1
%QUICK.CANSELECT%=1
%PSP.CANSELECT%=1
%OSHIRASE.CANSELECT%=1

[LET_DOTNETAPLI_UNSELECT]
%MIG.SELECT%=0
%MIG.CANSELECT%=0
%QUICK.SELECT%=0
%QUICK.CANSELECT%=0
%PSP.SELECT%=0
%PSP.CANSELECT%=0
%OSHIRASE.SELECT%=0
%OSHIRASE.CANSELECT%=0

[IF_DOTNETINST_FAILED]
IFEQ=%DOTNETINST_FAILED%,1

[LET_DOTNETINST_FAILED_TRUE]
%DOTNETINST_FAILED%=1

[APPL_DOTNET4]
FILE=%SRC%\DotNet\dotNetFx40_Client_x86_x64.exe
OPTION='/norestart /passive'
WAIT=IS6
HIDE=TRUE
CANCEL=FALSE

;---------------------------------
; ApliList Procedure
;---------------------------------
[APLIST_PROC]
INITIALIZE=APLIST_INIT
BEGIN=APLIST_BEGINACTION
SCREEN=%SCREEN%\APLIST.SCI
INSTALL_EVENT=APLIST_NEXT_ACTION
PREV_EVENT=APLIST_PREV_ACTION
REBOOTREJECT_EVENT=REBOOTREJECT_ACTION
LISTSELECT_EVENT=LIST_SELECT_ACTION
ALLON_EVENT=ALLON_ACTION
ALLOFF_EVENT=ALLOFF_ACTION

[APLIST_INIT]
IF=IS_CHOICE
ELSE
  LET=LET_INIT_INSTALLPATH
ENDIF
LET=LET_END_APLIST
DRIVELETTER=%SYSTEM%
DISKSPACE=%SYSTEM%

LOG=%ITEMSECTION%
ITEMINFO=%ITEMSECTION%
INITPROGRESS=%ITEMSECTION%

CALC=CALC_INSTALLTIME
END

[APLIST_BEGINACTION]
LET=LET_START_APLIST
LET=LET_PREVSTEP_APLIST
IF=IS_CHOICE
  SETFOCUS=BTN_ALLON
ELSE
  SETFOCUS=BTN_OK
ENDIF
END

[LET_PREVSTEP_APLIST]
%TUTO_PREVSTEP%=APLIST_PROC

[LET_START_APLIST]
%START_APLIST%=TRUE

[LET_END_APLIST]
%START_APLIST%=FALSE

[LET_INIT_INSTALLPATH]
%INSTALL_PATH%=%PROGRAMFILES%\Canon

[LET_MCDCHECK_DIR]
%MCDCHECK_DIR%=%PROGRAMFILES%\Canon\IJ_MSetup4

[CALC_INSTALLTIME]
%INSTALLTIME_MIN%=%NUMOFINSTALLITEM% * 1 + 4 / 5 * 5
%INSTALLTIME_MAX%=%NUMOFINSTALLITEM% * 2 + 4 / 5 * 5

[APLIST_NEXT_ACTION]
ITEMINFO=%ITEMSECTION%
IF=OMAKASE_SIZE_CHECK
  LET=OMAKASE_SIZEERROR_VAR
  MESSAGE=SIZEERROR_MSG
  END
ENDIF
IF=NEED_DESTINATION
  LET=LET_NEXTSTEP_DESTINATION
ELSE
  LET=LET_NEXTSTEP_EULA
ENDIF
IF=IS_CUSTOM_AND_DRVINST
  LOG=APLINEXT CUSTOM and drvinst
  END=SELECTIF_TUTO_PROC
ENDIF

END=%NEXTSTEP%

[LET_NEXTSTEP_DESTINATION]
%NEXTSTEP%=DESTINATION_PROC

[LET_NEXTSTEP_EULA]
%NEXTSTEP%=EULA_PROC

[IS_CUSTOM_AND_DRVINST]
IFNE=%LANFLAG%,0
IF=%INSTALLFLOW%,Choice
IF=%MPDRIVER.SELECT%,1
OR
IFNE=%LANFLAG%,0
IF=%INSTALLFLOW%,Choice
IF=%PRINTERDRIVER.SELECT%,1

[OMAKASE_SIZE_CHECK]
IFLT=%DISKSPACE%,%ITEMSPACE%

[OMAKASE_SIZEERROR_VAR]
%D%=%DRIVELETTER%
%S%=%ITEMSPACE%

[SIZEERROR_MSG]
TEXT=`%MESSAGE%;STRING;MSE5`
CAPTION=`%MESSAGE%;STRING;MSM0101`
BUTTON=OK
ICON=ERROR

[OMAKASE_PREV_ACTION]
END=WELCOME_PROC

[APLIST_PREV_ACTION]
LET=SET_BACK_FROM_APLIST_TRUE
END=%PREVSTEP%

[LET_PREVSTEP_COUNTRY]
%PREVSTEP%=COUNTRY_PROC

[LET_PREVSTEP_RESIDENCE]
%PREVSTEP%=RESIDENCE_PROC

[LET_PREVSTEP_WELCOME]
%PREVSTEP%=WELCOME_PROC
%TUTO_PREVSTEP%=WELCOME_PROC

[LIST_SELECT_ACTION]
LOG=List Select Event Catch
ITEMINFO_EASY=%ITEMSECTION%
INITPROGRESS=%ITEMSECTION%
CALC=CALC_INSTALLTIME
REDRAW=BMPBTN_PAIN
REDRAW=DRIVESIZE_PAIN
REDRAW=ALLOFFBTN_PAIN
REDRAW=ALLONBTN_PAIN
REDRAW=INSTALLTIME_PAIN
END

[ALLON_ACTION]
CHECK_ALLON=%ITEMSECTION%
ITEMINFO_EASY=%ITEMSECTION%
INITPROGRESS=%ITEMSECTION%
CALC=CALC_INSTALLTIME
REDRAW=
SETFOCUS=BTN_ALLOFF

[ALLOFF_ACTION]
CHECK_ALLOFF=%ITEMSECTION%
IF=IS_NOTCHOICE_SFP
  LET=LET_PD_SELECTTRUE
ENDIF
IF=IS_NOTCHOICE_MFP
  LET=LET_MD_SELECTTRUE
ENDIF
IF=IS_NOTCHOICE_SFS
  LET=LET_SG_SELECTTRUE
ENDIF
ITEMINFO_EASY=%ITEMSECTION%
INITPROGRESS=%ITEMSECTION%
CALC=CALC_INSTALLTIME
REDRAW=
IF=IS_CHOICE
  SETFOCUS=BTN_ALLON
ELSE
  SETFOCUS=BTN_ALLOFF
ENDIF

[IS_NOTCHOICE_SFP]
IFNOT=%INSTALLFLOW%,Choice
IFEQ=%PRODUCTFLAG%,0

[IS_NOTCHOICE_MFP]
IFNOT=%INSTALLFLOW%,Choice
IFEQ=%PRODUCTFLAG%,1

[IS_NOTCHOICE_SFS]
IFNOT=%INSTALLFLOW%,Choice
IFEQ=%PRODUCTFLAG%,2

[LET_PD_SELECTTRUE]
%PRINTERDRIVER.SELECT%=1

[LET_MD_SELECTTRUE]
%MPDRIVER.SELECT%=1

[LET_SG_SELECTTRUE]
%SCANGEAR.SELECT%=1

;---------------------------------
; Destination Procedure
;---------------------------------
[DESTINATION_PROC]
INITIALIZE=DESTINATION_INIT
SCREEN=%SCREEN%\DESTINATION.SCI

REF_EVENT=DESTINATION_REF_ACTION
INSTALL_EVENT=DESTINATION_INSTALL_ACTION
PREV_EVENT=DESTINATION_PREV_ACTION
EDIT_EVENT=DESTINATION_EDIT_ACTION
REBOOTREJECT_EVENT=REBOOTREJECT_ACTION

[DESTINATION_INIT]
GOSUB=DRVAPPITEMSPACE_SUB
IF=NEED_DESTINATION
  END
ENDIF

IF=CUSTOM_DRVSIZE_CHECK
  LET=LET_DRVAPP_SIZEERROR
  MESSAGE=SIZEERROR_MSG
  END=PREV
ENDIF
END=NEXT

[NEED_DESTINATION]
IFNOT=%LOCATIONITEM%,""
IF=%INSTALLFLOW%,Choice

[DRVAPPITEMSPACE_SUB]
ITEMINFO=%ITEMSECTION%
DRIVELETTER=%INSTALL_PATH%
DISKSPACE=%INSTALL_PATH%
LET=LET_APP_DESTINATION

DRIVELETTER=%SYSTEM%
DISKSPACE=%SYSTEM%

IF=IS_DRVAPP_SAMEDRIVE
  LET=LET_DRVAPP_DESTINATION
ELSE
  LET=LET_DRV_DESTINATION
ENDIF
END

[LET_DRVAPP_DESTINATION]
%APPDRIVELETTER%=""
%APPDISKSPACE%=""

[LET_APP_DESTINATION]
%APPDRIVELETTER%=%DRIVELETTER%
%APPDISKSPACE%=%DISKSPACE%

[LET_DRV_DESTINATION]
%ITEMSPACE%=%DRVITEMSPACE%

[IS_DRVAPP_SAMEDRIVE]
IFSAMEDRIVE=%SYSTEM%,%INSTALL_PATH%

[CUSTOM_DRVSIZE_CHECK]
IFLT=%DISKSPACE%,%DRVITEMSPACE%

[CUSTOM_DRVAPPSIZE_CHECK]
IFLT=%DISKSPACE%,%ITEMSPACE%

[CUSTOM_APPSIZE_CHECK]
IFNOT=%APPDRIVELETTER%,""
IFLT=%APPDISKSPACE%,%APPITEMSPACE%

[LET_DRV_SIZEERROR]
%D%=%DRVDRIVELETTER%
%S%=%DRVITEMSPACE%

[LET_APP_SIZEERROR]
%D%=%APPDRIVELETTER%
%S%=%APPITEMSPACE%

[LET_DRVAPP_SIZEERROR]
%D%=%DRIVELETTER%
%S%=%ITEMSPACE%

[DESTINATION_REF_ACTION]
SELECTFOLDER
LET=LET_DESTINATION_FOLDER
GOSUB=DRVAPPITEMSPACE_SUB
REDRAW=INST_PAIN
REDRAW=TEXT4_PAIN
END

[DESTINATION_INSTALL_ACTION]
DRIVEINFO=%INSTALL_PATH%
IF=IS_INVALID_CHAR
  MESSAGE=MSG_INVARIDCHAR
  END
ENDIF

IF=IS_INVALID_SPECIAL_CHAR
  MESSAGE=MSG_FOLDERERROR
  END
ENDIF
IF=IS_INVALID_PATH_LENGTH
  MESSAGE=MSG_PATHLENGTHERROR
  END
ENDIF
IF=IS_INVALID_PATH_FORMAT
  MESSAGE=MSG_PATHFORMATERROR
  END
ENDIF
IF=IS_VALID_INSTALLPATH
  MESSAGE=MSG_FOLDERERROR
  END
ENDIF
IF=IS_WRITABLEPATH
ELSE
  MESSAGE=MSG_FOLDERERROR
  END
ENDIF

IF=CUSTOM_DRVAPPSIZE_CHECK
  LET=LET_DRVAPP_SIZEERROR
  MESSAGE=SIZEERROR_MSG
  END
ENDIF
IF=CUSTOM_APPSIZE_CHECK
  LET=LET_APP_SIZEERROR
  MESSAGE=SIZEERROR_MSG
  END
ENDIF

LET=LET_INSTALLPATH_TO_P
LET=LET_LPARAM_100
IF=IS_NOTEXIST_INSTALLPATH
  MESSAGE=MSG_MKFOLDER
ENDIF
LET=LET_MKDIR_NOERR
IF=IS_LPARAM_IDYES
  MKDIR=%INSTALL_PATH%
ENDIF
IF=IS_LPARAM_IDNO
  END
ENDIF

IF=IS_MKDIR_ERROR
  MESSAGE=MSG_FOLDERERROR
  END
ENDIF

END=NEXT

[IS_NEXT_EULA]
IF=%EULA_SHOW%,1

[IS_VALID_INSTALLPATH]
IFNE=%DRIVEINFO%,3
OR
IFEXIST=%INSTALL_PATH%

[IS_WRITABLEPATH]
IFWRITABLEPATH=%INSTALL_PATH%

[IS_INVALID_CHAR]
IFINVARIDCHAR=%INSTALL_PATH%

[IS_INVALID_SPECIAL_CHAR]
IFINVARIDSPECIALCHAR=%INSTALL_PATH%

[IS_INVALID_PATH_LENGTH]
IFINVARIDSTRLEN=%INSTALL_PATH%,150

[IS_INVALID_PATH_FORMAT]
IFINVARIDPATHFORMAT=%INSTALL_PATH%

[IS_NOTEXIST_INSTALLPATH]
IFNOTEXISTDIR=%INSTALL_PATH%

[LET_MKDIR_NOERR]
%MKDIR%=0

[IS_MKDIR_ERROR]
IFEQ=%MKDIR%,1

[DESTINATION_PREV_ACTION]
END=PREV

[LET_DESTINATION_FOLDER]
%INSTALL_PATH%=%SELECTFOLDER%

[DESTINATION_EDIT_ACTION]
LET=LET_DESTINATION_EDITFOLDER
GOSUB=DRVAPPITEMSPACE_SUB
REDRAW=TEXT4_PAIN
END

[LET_DESTINATION_EDITFOLDER]
%INSTALL_PATH%=%LPARAM%

[MSG_MKFOLDER]
TEXT=`%MESSAGE%;STRING;MSW2`
CAPTION=`%MESSAGE%;STRING;MSM0102`
ICON=WARNING
BUTTON=YESNO

[MSG_FOLDERERROR]
TEXT=`%MESSAGE%;STRING;MSE6`
CAPTION=`%MESSAGE%;STRING;MSM0101`
ICON=ERROR
BUTTON=OK

[MSG_INVARIDCHAR]
TEXT=`%MESSAGE%;STRING;MSE9`
CAPTION=`%MESSAGE%;STRING;MSM0101`
ICON=ERROR
BUTTON=OK

[MSG_PATHLENGTHERROR]
TEXT=`%MESSAGE%;STRING;MSE10`
CAPTION=`%MESSAGE%;STRING;MSM0101`
ICON=ERROR
BUTTON=OK

[MSG_PATHFORMATERROR]
TEXT=`%MESSAGE%;STRING;MSE11`
CAPTION=`%MESSAGE%;STRING;MSM0101`
ICON=ERROR
BUTTON=OK

[LET_INSTALLPATH_TO_P]
%P%=%INSTALL_PATH%

[LET_LPARAM_100]
%LPARAM%=100

[IS_LPARAM_IDYES]
IFEQ=%LPARAM%,6

[IS_LPARAM_IDNO]
IFEQ=%LPARAM%,7

;---------------------------------
; EULA Procedure
;---------------------------------
[EULA_PROC]
INITIALIZE=EULA_INIT_ACTION
SCREEN=%SCREEN%\EULA.SCI

YES_EVENT=EULA_YES_ACTION
NO_EVENT=EULA_NO_ACTION
PREV_EVENT=EULA_PREV_ACTION
REBOOTREJECT_EVENT=REBOOTREJECT_ACTION

[EULA_INIT_ACTION]
LET=LET_STEPITEM_NONE
LET=LET_COMMA_NULL
LOG=EULA_INIT_ACTION

IF=IS_WEBREG_NEED
  LET=LET_STEPNUM_4
ELSE
  LET=LET_STEPNUM_3
ENDIF
IF=IS_IJPLM
  LET=LET_STEPNUM_4
ENDIF
IF=IS_DRVONLY
  LET=LET_STEPNUM_3
ENDIF

LET=RESET_PAGE
IF=IS_NEXT_EULA
  LET=LET_STEP1_CANONEULA
  LET=LET_COMMA_COMMA
  CALC=CALC_TOTALPAGE_PLUS
ENDIF

IF=IF_ADOBEEULA_NEED
  LET=LET_STEP1_ADOBEICC
  LET=LET_COMMA_COMMA
  CALC=CALC_TOTALPAGE_PLUS
ENDIF
IF=IF_YOMITORI_INSTALL_SILENTLY
  LET=LET_STEP1_YOMITORI
  LET=LET_COMMA_COMMA
  CALC=CALC_TOTALPAGE_PLUS
ENDIF
IF=IF_OSHIRASE_INSTALL_SILENTLY
  LET=LET_STEP1_OSHIRASE
  LET=LET_COMMA_COMMA
  CALC=CALC_TOTALPAGE_PLUS
ENDIF
IF=IS_REVERSE_EULA
  LET=LET_REVERSE_FLAG_FALSE
  GOSUB=SUB_EULA_PREV_ACTION
  END=%PREVTARGET%
ENDIF
LET=LET_REVERSE_FLAG_FALSE

IF=IS_NEXT_EULA
ELSE
  END=NEXT
ENDIF

LET=LET_EULASCI_CANON
IF=IF_EXIST_EULA
ELSE
  LET=SET_EULAPATH_DEFAULT
ENDIF

END

[RESET_PAGE]
%PAGE%=1
%TOTALPAGE%=0

[CALC_TOTALPAGE_PLUS]
%TOTALPAGE%=%TOTALPAGE% + 1

[CALC_PAGE_PLUS]
%PAGE%=%PAGE% + 1

[CALC_PAGE_MINUS]
%PAGE%=%PAGE% - 1

[LET_EULASCI_CANON]
%EULA_PATH%=%SRC%\RES\MESSAGE\%LANG%\%EULATYPE%\LICENSE.TXT
%CURRENT_STEPITEM%=`%MESSAGE%;STRING;MSM1606`
%EULA_BTNINFOMATION%=`%MESSAGE%;STRING;MSM1603`

[IF_EXIST_EULA]
IFEXIST=%EULA_PATH%

[SET_EULAPATH_DEFAULT]
%EULA_PATH%=%SRC%\RES\MESSAGE\%LANG%\DEFEULA\LICENSE.TXT
%EULATYPE%=DEFEULA

[LET_REVERSE_FLAG_FALSE]
%EULA_REVERSE%=0

[LET_REVERSE_FLAG_TRUE]
%EULA_REVERSE%=1

[IS_REVERSE_EULA]
IFEQ=%EULA_REVERSE%,1
IF=%EULA_SHOW%,0

[LET_STEP1_CANONEULA]
%STEPITEM%=`%MESSAGE%;STRING;MSM1606`

[LET_STEP1_ADOBEICC]
%STEPITEM%="%STEPITEM%%COMMA%`%MESSAGE%;STRING;MSM4034`"

[LET_STEP1_YOMITORI]
%STEPITEM%="%STEPITEM%%COMMA%`%MESSAGE%;STRING;MSM4020`"

[LET_STEP1_OSHIRASE]
%STEPITEM%="%STEPITEM%%COMMA%`%MESSAGE%;STRING;MSM4047`"

[IF_ADOBEEULA_NEED]
IFEQ=%ADOBEICC.SELECT%,1
IFEQ=%ADOBEICC.ENABLE%,1
OR
IFEQ=%PSP.SELECT%,1
IFEQ=%PSP.ENABLE%,1

[IF_YOMITORI_INSTALL_SILENTLY]
IFEQ=%YOMITORI.SELECT%,1
IFEQ=%YOMITORI.ENABLE%,1
IFEQ=%YOMITORI.SILENT%,1

[IF_OSHIRASE_INSTALL_SILENTLY]
IFEQ=%OSHIRASE.SELECT%,1
IFEQ=%OSHIRASE.ENABLE%,1
IFEQ=%OSHIRASE.SILENT%,1

[EULA_YES_ACTION]
LET=LOG_EULA_YES
CALC=CALC_PAGE_PLUS
LET=SET_AGREE_INFO
END=NEXT

[SET_AGREE_INFO]
@%PARAM_REG%;SEND_INFO_AGREE@=DWORD,1

[EULA_NO_ACTION]
LET=LOG_EULA_NO
MESSAGE=MSG_EULA_EXIT
IF=IS_LPARAM_BUTTON1
  END
ENDIF
DLLARBITRATE
RMDIR=%PROGRAMFILES%\Canon
SAVE_IJPLMLOG=IJPLMLOG_FINISH
IF=IS_REBOOTNEED
ELSE
  DELETEREG=%PARAM_REG%
  END=END
ENDIF
MESSAGE=MSG_REBOOT
IF=IS_LPARAM_IDYES
  DELETEREG=%PARAM_REG%
  END=REBOOT
ELSE
  DELETEREG=%PARAM_REG%
  END=END
ENDIF
END

[MSG_EULA_EXIT]
TEXT=`%MESSAGE%;STRING;MSM2702`
CAPTION=`%MESSAGE%;STRING;MSM2701`
BUTTON1=`%MESSAGE%;STRING;MSM0007`
BUTTON2=`%MESSAGE%;STRING;MSM0002`

[EULA_PREV_ACTION]
CALC=CALC_PAGE_MINUS
IF=NEED_DESTINATION
  END=DESTINATION_PROC
ELSE
  END=APLIST_PROC
ENDIF

[SUB_EULA_PREV_ACTION]
IF=NEED_DESTINATION
  LET=LET_PREVTARGET_DESTINATION_PROC
ENDIF
LET=LET_PREVTARGET_APLIST_PROC
END

[LET_PREVTARGET_APLIST_PROC]
%PREVTARGET%=APLIST_PROC

[LET_PREVTARGET_DESTINATION_PROC]
%PREVTARGET%=DESTINATION_PROC

[LET_STEPNUM_4]
%STEPNUM%=4

[LET_STEPNUM_3]
%STEPNUM%=3

[IS_LPARAM_BUTTON1]
IFEQ=%LPARAM%,1

[LOG_EULA_YES]
@Software\Canon\MSETUPLOG;FLAG2@=DWORD,1

[LOG_EULA_NO]
@Software\Canon\MSETUPLOG;FLAG2@=DWORD,0

;---------------------------------
; Commmon Section for ThirdParty
;---------------------------------
[THIRD_YES_ACTION]
CALC=CALC_PAGE_PLUS
END=NEXT

[THIRD_NO_ACTION]
MESSAGE=MSG_THIRDEULA_EXIT
IF=IS_LPARAM_BUTTON1
  LET=%LETCANCEL_SECTION%
ELSE
  END
ENDIF
CALC=CALC_PAGE_PLUS
END=NEXT

[ADOBE_NO_ACTION]
IF=IS_PSP_SELECTED
  MESSAGE=MSG_THIRDEULA_EXIT_PSP
ELSE
  MESSAGE=MSG_THIRDEULA_EXIT
ENDIF
IF=IS_LPARAM_BUTTON1
  LET=%LETCANCEL_SECTION%
ELSE
  END
ENDIF
CALC=CALC_PAGE_PLUS
END=NEXT

[IS_PSP_SELECTED]
IFEQ=%PSP.SELECT%,1

[THIRDEULA_PREV_ACTION]
LET=LET_REVERSE_FLAG_TRUE
CALC=CALC_PAGE_MINUS
END=PREV

[MSG_THIRDEULA_EXIT]
TEXT=`%MESSAGE%;STRING;MSM1607`
CAPTION=`%MESSAGE%;STRING;MSM1601`
BUTTON1=`%MESSAGE%;STRING;MSM0003`
BUTTON2=`%MESSAGE%;STRING;MSM0004`

[MSG_THIRDEULA_EXIT_PSP]
TEXT=`%MESSAGE%;STRING;MSM1608`
CAPTION=`%MESSAGE%;STRING;MSM1601`
BUTTON1=`%MESSAGE%;STRING;MSM0003`
BUTTON2=`%MESSAGE%;STRING;MSM0004`

;---------------------------------
; EULA Procedure for AdobeICC
;---------------------------------

[ADOBEEULA_PROC]
INITIALIZE=ADOBEEULA_INIT_ACTION
SCREEN=%SCREEN%\EULA.SCI

YES_EVENT=THIRD_YES_ACTION
NO_EVENT=ADOBE_NO_ACTION
PREV_EVENT=THIRDEULA_PREV_ACTION
REBOOTREJECT_EVENT=REBOOTREJECT_ACTION

[ADOBEEULA_INIT_ACTION]
IF=IS_REVERSE_ADOBEEULA
  END=PREV
ENDIF
LET=LET_REVERSE_FLAG_FALSE
LET=LET_ADOBE_CANCEL_SECTION

IF=IF_ADOBEEULA_NEED
ELSE
  END=NEXT
ENDIF
LET=LET_EULASCI_ADOBE
LET=LET_ADOBEEULA_CANCEL_CLEAR

END

[LET_EULASCI_ADOBE]
%EULA_PATH%=%SRC%\PSP\Print Studio Pro\res\EULA_ADOBEICC\LICENSE.TXT
%CURRENT_STEPITEM%=`%MESSAGE%;STRING;MSM4034`
%EULA_BTNINFOMATION%=`%MESSAGE%;STRING;MSM1605`

[IS_REVERSE_ADOBEEULA]
IFEQ=%EULA_REVERSE%,1
IFEQ=%ADOBEICC.SELECT%,0
IFEQ=%PSP.SELECT%,0

[LET_ADOBE_CANCEL_SECTION]
%LETCANCEL_SECTION%=LET_ADOBEEULA_CANCEL

[LET_ADOBEEULA_CANCEL]
%ADOBEICC.EULA_CANCEL%=1
%PSP.EULA_CANCEL%=1

[LET_ADOBEEULA_CANCEL_CLEAR]
%ADOBEICC.EULA_CANCEL%=0
%PSP.EULA_CANCEL%=0

;---------------------------------
; EULA Procedure for YOMITORI
;---------------------------------
[YOMITORIEULA_PROC]
INITIALIZE=YOMITORIEULA_INIT_ACTION
SCREEN=%SCREEN%\EULA.SCI

YES_EVENT=THIRD_YES_ACTION
NO_EVENT=THIRD_NO_ACTION
PREV_EVENT=THIRDEULA_PREV_ACTION
REBOOTREJECT_EVENT=REBOOTREJECT_ACTION

[YOMITORIEULA_INIT_ACTION]
IF=IS_REVERSE_YOMITORI
  END=PREV
ENDIF
LET=LET_REVERSE_FLAG_FALSE
LET=LET_YOMITORI_CANCEL_SECTION

IF=IF_YOMITORI_INSTALL_SILENTLY
ELSE
  END=NEXT
ENDIF
LET=LET_EULASCI_YOMITORI
LET=LET_YOMITORI_EULA_CANCEL_CLEAR
END

[LET_EULASCI_YOMITORI]
%EULA_PATH%=%SRC%\YOMIKAKU\Original\EULA.rtf
%CURRENT_STEPITEM%=`%MESSAGE%;STRING;MSM4020`
%EULA_BTNINFOMATION%=`%MESSAGE%;STRING;MSM1605`

[IS_REVERSE_YOMITORI]
IFEQ=%EULA_REVERSE%,1
IFEQ=%YOMITORI.SELECT%,0

[LET_YOMITORI_CANCEL_SECTION]
%LETCANCEL_SECTION%=LET_YOMITORI_EULA_CANCEL

[LET_YOMITORI_EULA_CANCEL]
%YOMITORI.EULA_CANCEL%=1

[LET_YOMITORI_EULA_CANCEL_CLEAR]
%YOMITORI.EULA_CANCEL%=0

;---------------------------------
; EULA Procedure for OSHIRASE
;---------------------------------
[OSHIRASEEULA_PROC]
LOG=OSHIRASEEULA_INIT_ACTION before
INITIALIZE=OSHIRASEEULA_INIT_ACTION
LOG=SCREEN %SCREEN%
SCREEN=%SCREEN%\EULA.SCI

YES_EVENT=THIRD_YES_ACTION
NO_EVENT=THIRD_NO_ACTION
PREV_EVENT=THIRDEULA_PREV_ACTION
REBOOTREJECT_EVENT=REBOOTREJECT_ACTION

[OSHIRASEEULA_INIT_ACTION]
IF=IS_REVERSE_OSHIRASE
  END=PREV
ENDIF
LET=LET_REVERSE_FLAG_FALSE
LET=LET_OSHIRASE_CANCEL_SECTION

IF=IF_OSHIRASE_INSTALL_SILENTLY
ELSE
  END=NEXT
ENDIF
LET=LET_EULASCI_OSHIRASE
LET=LET_OSHIRASE_EULA_CANCEL_CLEAR
END

[LET_EULASCI_OSHIRASE]
%EULA_PATH%=%SRC%\OSHIRASE\License.txt
%CURRENT_STEPITEM%=`%MESSAGE%;STRING;MSM4047`
%EULA_BTNINFOMATION%=`%MESSAGE%;STRING;MSM1605`

[IS_REVERSE_OSHIRASE]
IFEQ=%EULA_REVERSE%,1
IFEQ=%OSHIRASE.SELECT%,0

[LET_OSHIRASE_CANCEL_SECTION]
%LETCANCEL_SECTION%=LET_OSHIRASE_EULA_CANCEL

[LET_OSHIRASE_EULA_CANCEL]
%OSHIRASE.EULA_CANCEL%=1

[LET_OSHIRASE_EULA_CANCEL_CLEAR]
%OSHIRASE.EULA_CANCEL%=0

;---------------------------------
; INSTALL Procedure
;---------------------------------

[INSTALL_PROC]
INITIALIZE=INSTALL_ACTION

[INSTALL_ACTION]
ITEMINFO=%ITEMSECTION%
INITPROGRESS=%ITEMSECTION%
RMBACKSLASH=%INSTALL_PATH%
LET=LET_INSTALL_DIR
LET=LET_STEPITEM_STEP2
LET=LET_PERCENT
END=NEXT

[LET_INSTALL_DIR]
%INSTALL_DIR%=%RMBACKSLASH%

[LET_PERCENT]
%PERCENT%=`%MESSAGE%;STRING;PERCENT`

[IS_SECONDINSTALL]
IFEQ=%SECONDINSTALL%,1
[LET_SECONDINSTALL]
%SECONDINSTALL%=1
[LET_FIRSTINSTALL]
%SECONDINSTALL%=0

[LET_STEPITEM_STEP2]
%STEPITEM%="`%MESSAGE%;STRING;MSM1659`,`%MESSAGE%;STRING;MSM1651`,%STEPITEM%"

;---------------------------------
; Ask user to close alert.
;---------------------------------
[INSTALL_CLOSEALERT_PROC]
INITIALIZE=INSTALL_CLOSEALERT_ACTION
SCREEN=%SCREEN%\CLOSEALERT.SCI
BEGIN=INSTALL_CLOSEALERT_BEGINACTION
NEXT_EVENT=CLOSEALERT_NEXT

[INSTALL_CLOSEALERT_ACTION]
END

[INSTALL_CLOSEALERT_BEGINACTION]
END

[CLOSEALERT_NEXT]
LET=LET_SAVE_PLMLOG_FLAG_TRUE
LET=LET_SAVE_DATA_4SMEX
LET=GET_WEBUSEFULINFO_PATH
LOG=WEB USEFULINFO is %WEBUSEFULINFO_URL%
GET_INTERNET_CONNECTION_STATE=%CONNECT_STATE%
END=NEXT

[LET_SAVE_DATA_4SMEX]
@SOFTWARE\Canon\MSetup4\LatestDevice;DEVICEID@=SZ,%DEVICEID%
@SOFTWARE\Canon\MSetup4\LatestDevice;MS_INSTDATE@=QWORD,%MS_INSTDATE%

[GET_UREG_CURRENT]
%UREG_CURRENT%=@SOFTWARE\Canon\MSetup4\LatestDevice;USER_REG@

[IF_UREG_CURRENT_TRUE]
IFEQ=%UREG_CURRENT%,1

[LET_SAVE_DATA_4SMEX_UREG_FALSE]
@SOFTWARE\Canon\MSetup4\LatestDevice;USER_REG@=DWORD,0

[LET_SAVE_DATA_4SMEX_UREG_TRUE]
@SOFTWARE\Canon\MSetup4\LatestDevice;USER_REG@=DWORD,1

[LET_SAVE_PLMLOG_FLAG_TRUE]
%SAVE_PLMLOG_FLAG%=1

;---------------------------------
; INSTALL QFE Patch
;---------------------------------

[INSTALL_QFE_PROC]
INITIALIZE=INSTALL_QFE_ACTION
SCREEN=%SCREEN%\SYSFILEUPDATE.SCI
BEGIN=INSTALL_QFE_BEGINACTION

[INSTALL_QFE_ACTION]
LET=LET_SYSTEMUPDATE_FALSE
LET=LET_RB_FALSE
REBOOTMODE=REBOOTMODE_REJECT
EJECTMODE=EJECTMODE_REJECT

IF=IS_SYSTEMUPDATE_OCCURED
  END=NEXT
ELSE
  LET=LET_SYSTEMUPDATE_OCCURED
ENDIF

LET=LET_LPARAM_ZERO

LET=LET_LANDRIVER_DLL
IF=HAS_LANDRIVER
  LOG=CALL_LANDRIVER_DLL install occured.
  DLL=CALL_LANDRIVER_DLL
ENDIF
IF=IS_DLL_REBOOT
  LET=LET_SYSTEMUPDATE_TRUE
  LOG=LANDRIVERREBOOT occured.
  LET=LET_RB_TRUE
ENDIF

IF=IF_IJPLM_DLL_INSTALL_REBOOT_TRUE
  LOG=IJPLM DLL reboot occured.
  LET=LET_SYSTEMUPDATE_TRUE
  LET=LET_RB_TRUE
  LET=IJPLM_DLL_INSTALL_REBOOT_FALSE
ENDIF

IF=ISNOT_SYSTEMUPDATE
  END=NEXT
ENDIF
END

[INSTALL_QFE_BEGINACTION]
SETWINDOWZPOS=1

IF=IS_RB_TRUE
  MESSAGE=USBREBOOT_MSG
  LET=LET_REBOOT_FALSE
  LET=LET_REBOOTDRV_FALSE
  SAVERERUN=RERUN_QFE
  END=REBOOT_RESUME
ENDIF

END=NEXT

[LET_SYSTEMUPDATE_OCCURED]
%SYSTEMUPDATE_OCCURED%=1

[IS_SYSTEMUPDATE_OCCURED]
IFEQ=%SYSTEMUPDATE_OCCURED%,1

[LET_RB_TRUE]
%RB%=1

[LET_RB_FALSE]
%RB%=0

[IS_RB_TRUE]
IFNE=%RB%,0

[LET_LPARAM_ZERO]
%LPARAM%=0

[USBREBOOT_MSG]
TEXT=`%MESSAGE%;STRING;MSW1`
CAPTION=`%MESSAGE%;STRING;MSM0103`
BUTTON=OK
ICON=INFORMATION

[HAS_IJPLMCPY]
IFEXISTFILE=CALL_IJPLMCPY_DLL
IFEQ=%IJPLM_DLL_INSTALL_ONCE%,0

[CALL_IJPLMCPY_DLL]
FILE=%DLL_PATH%\IJPLMCPY.DLL
FUNC=DriverFileInstaller
PARAMETER=LPSTR,%DLL_PATH%,LPDWORD,%DLL_REBOOT%
TYPE=STDCALL

[IJPLM_DLL_INSTALL_ONCE_TRUE]
%IJPLM_DLL_INSTALL_ONCE%=1

[IJPLM_DLL_INSTALL_REBOOT_TRUE]
%IJPLM_DLL_INSTALL_REBOOT%=1

[IJPLM_DLL_INSTALL_REBOOT_FALSE]
%IJPLM_DLL_INSTALL_REBOOT%=0

[IF_IJPLM_DLL_INSTALL_REBOOT_TRUE]
IFEQ=%IJPLM_DLL_INSTALL_REBOOT%,1

[LET_IJPLMCPY_DLL]
%DLL_PATH%=%SRC%\IJPLM
%DLL_REBOOT%=0

[IS_DLL_REBOOT]
IFNE=%EXITCODE%,0
IFNE=%DLL_REBOOT%,0

[HAS_LANDRIVER]
IFEXISTFILE=CALL_LANDRIVER_DLL

[CALL_LANDRIVER_DLL]
FILE=%SRC%\Driver\LAN\CNMNPCP.DLL
FUNC=DriverFileInstaller
PARAMETER=LPSTR,%SRC%\Driver\LAN\,LPDWORD,%DLL_REBOOT%
TYPE=STDCALL

[LET_LANDRIVER_DLL]
%DLL_REBOOT%=0

[LET_SYSTEMUPDATE_TRUE]
%SYSTEMUPDATE%=1

[LET_SYSTEMUPDATE_FALSE]
%SYSTEMUPDATE%=0

[ISNOT_SYSTEMUPDATE]
IFEQ=%SYSTEMUPDATE%,0

[RERUN_QFE]
FILE=%MCDCHECK_DIR%\MCDCHECK.INI
BEGIN=NEXT

;---------------------------------
; INSTALL Printer Driver Procedure
;---------------------------------

[INSTALL_PRINTERDRIVER_PROC]
INITIALIZE=INSTALL_PRINTERDRIVER_ACTION
BEGIN=INSTALL_PRINTERDRIVER_BEGINACTION

[INSTALL_PRINTERDRIVER_ACTION]
REBOOTMODE=REBOOTMODE_REJECT
EJECTMODE=EJECTMODE_REJECT

LET=LET_ITEM_PRINTERDRIVER
IF=IS_PRINTERDRIVER_NOTINSTALL
  END=NEXT
ENDIF
LET=LET_DRIVER_SKIP_FALSE
IF=IS_CAPTURE_MODE
  GOSUB=SUB_CHECK_PDEXIST_CAPTUREMODE
ENDIF
IF=IS_DRIVER_SKIP
  PROGRESS=%PRINTERDRIVER.WEIGHT%
  END=NEXT
ENDIF
CREATEPROGRESSDLG=TRUE
LET=MYPRINT_LOG_PDRV_INSTALL_START
END

[INSTALL_PRINTERDRIVER_BEGINACTION]
SETWINDOWZPOS=1
UPDATEPROGRESSDLG=TRUE

LET=LET_PDINSTALLED_FALSE

LOG=START PRINTERDRIVER INSTALL

APPL=INSTALL_PRINTERDRIVER2K
LOG=..PRINTERDRIVER install result is @%PARAM_REG%;APPLICATION_COMPLETED@/%EXITCODE%

IF=IS_RESULT_REBOOT
  LOG=PrinterDriver need REBOOT.
  LET=LET_REBOOTDRV_TRUE
ENDIF

LET=LET_FAILURESTEP_PRINTERDRIVER

IF=IS_RESULT_COREINSTALLER_INSTALLED
  LET=LET_DRIVER_INSTALLED
  LET=LET_FORCEDEFAULT
ELSE
  LET=LET_PDINSTALLED_FALSE
ENDIF

LET=LET_SECONDINSTALL

IF=IS_RESULT_EMERGENCYREBOOT_1
  MESSAGE=USBREBOOT_MSG
  LET=LET_REBOOT_FALSE
  LET=LET_REBOOTDRV_FALSE
  LET=LET_PRINTERDRIVER_NOTINSTALLED
  SAVERERUN=RERUN_THIS
  END=REBOOT_RESUME
ENDIF
IF=IS_RESULT_EMERGENCYREBOOT_2
  PROGRESS=%PRINTERDRIVER.WEIGHT%
  MESSAGE=USBREBOOT_MSG
  LET=LET_REBOOT_FALSE
  LET=LET_REBOOTDRV_FALSE
  SAVERERUN=RERUN_NEXT
  END=REBOOT_RESUME
ENDIF

IF=IS_RESULT_DRIVER_FAILED
  CREATEPROGRESSDLG=FALSE
  LET=LET_FAILSTEP_PRINTERDRIVER
  END=FAILURE_PROC
ENDIF

PROGRESS=%PRINTERDRIVER.WEIGHT%

SETWINDOWZPOS=1
END=NEXT

[SUB_CHECK_PDEXIST_CAPTUREMODE]
IF=IS_WIN2KPD_EXIST
ELSE
  LET=LET_DRIVER_INSTALLED
  LET=LET_DRIVER_SKIP_TRUE
ENDIF
END

[IS_WIN2KPD_EXIST]
IFEXISTFILE=INSTALL_PRINTERDRIVER2K

[IS_PRINTERDRIVER_NOTINSTALL]
IFEQ=%PRINTERDRIVER.ENABLE%,0
OR
IFEQ=%PRINTERDRIVER.SELECT%,0

[IS_RESULT_EMERGENCYREBOOT_1]
IFEQ=@%PARAM_REG%;EMERGENCY_REBOOT@,1

[IS_RESULT_EMERGENCYREBOOT_2]
IFEQ=@%PARAM_REG%;EMERGENCY_REBOOT@,2

[INSTALL_PRINTERDRIVER2K]
FILE=%SRC%\Driver\DRVSETUP\SETUP.EXE
OPTION='%PARAM_REG% /L:U'
WAIT=IS6
HIDE=FALSE
PARAMETER=INITIAL_MPDRIVER_PARAM
CANCEL=FALSE

[LET_PDINSTALLED_FALSE]
%PRINTERDRIVER.INSTALLED%=0
 
[IS_RESULT_DRIVER_FAILED]
IFEQ=%PRINTERDRIVER.INSTALLED%,0

[IS_RESULT_COREINSTALLER_INSTALLED]
IFEQ=@%PARAM_REG%;APPLICATION_COMPLETED@,1
OR
IFEQ=@%PARAM_REG%;APPLICATION_COMPLETED@,140
OR
IFEQ=@%PARAM_REG%;APPLICATION_COMPLETED@,170

[LET_DRIVER_INSTALLED]
%PRINTERDRIVER.INSTALLED%=1
%PRINTERDRIVER.ENABLE%=0

[LET_FAILURESTEP_PRINTERDRIVER]
%FAILURESTEP%=`%MESSAGE%;STRING;MSM4001W`

;---------------------------------
; Install MP Driver Procedure
;---------------------------------

[INSTALL_MPDRIVER_PROC]
INITIALIZE=INSTALL_MPDRIVER_ACTION
BEGIN=INSTALL_MPDRIVER_BEGINACTION

[INSTALL_MPDRIVER_ACTION]
REBOOTMODE=REBOOTMODE_REJECT
EJECTMODE=EJECTMODE_REJECT

LET=LET_ITEM_MPDRIVER
LET=LET_FAILURESTEP_MPDRIVER

IF=IS_MPDRIVER_NOTINSTALL
  END=NEXT
ENDIF

LET=LET_DRIVER_SKIP_FALSE
IF=IS_CAPTURE_MODE
  GOSUB=SUB_CHECK_MPDEXIST_CAPTUREMODE
ENDIF
IF=IS_DRIVER_SKIP
  PROGRESS=%MPDRIVER.WEIGHT%
  END=NEXT
ENDIF
CREATEPROGRESSDLG=TRUE
LET=MYPRINT_LOG_MDRV_INSTALL_START
LOG=INSTALL_MPDRIVER_ACTION
END

[INSTALL_MPDRIVER_BEGINACTION]
SETWINDOWZPOS=1
UPDATEPROGRESSDLG=TRUE

LET=LET_MPDRIVERINSTALLED_FALSE

APPL=INSTALL_MPDRIVER
LOG=..MPDRIVER install result is @%PARAM_REG%;APPLICATION_COMPLETED@/%EXITCODE%

IF=IS_RESULT_REBOOT
  LOG=MPDriver need REBOOT.
  LET=LET_REBOOTDRV_TRUE
ENDIF

LET=GET_SCANNERDRIVERNAME
LET=GET_INFFILENAMES

IF=IS_RESULT_COREINSTALLER_INSTALLED
  LET=LET_MPDRIVER_INSTALLED
  LOG=MPDRIVER is installed successful.
ELSE
  LOG=MPDRIVER is not installed.
ENDIF

LET=LET_SECONDINSTALL

IF=IS_RESULT_EMERGENCYREBOOT_1
  MESSAGE=USBREBOOT_MSG
  LET=LET_REBOOT_FALSE
  LET=LET_REBOOTDRV_FALSE
  LET=LET_MPDRIVER_NOTINSTALLED
  SAVERERUN=RERUN_THIS
  END=REBOOT_RESUME
ENDIF
IF=IS_RESULT_EMERGENCYREBOOT_2
  PROGRESS=%MPDRIVER.WEIGHT%
  MESSAGE=USBREBOOT_MSG
  LET=LET_REBOOT_FALSE
  LET=LET_REBOOTDRV_FALSE
  SAVERERUN=RERUN_NEXT
  END=REBOOT_RESUME
ENDIF

IF=IS_MPDRIVER_NOTINSTALLED
  CREATEPROGRESSDLG=FALSE
  LET=LET_FAILSTEP_MPDRIVER
  END=FAILURE_PROC
ENDIF

PROGRESS=%MPDRIVER.WEIGHT%

SETWINDOWZPOS=1
END=NEXT

[SUB_CHECK_MPDEXIST_CAPTUREMODE]
IF=IS_MPDRIVER_EXIST
ELSE
  LET=LET_MPDRIVER_INSTALLED
  LET=LET_DRIVER_SKIP_TRUE
ENDIF
END

[LET_MPDRIVERINSTALLED_FALSE]
%MPDRIVER.INSTALLED%=0

[IS_MPDRIVER_EXIST]
IFEXISTFILE=INSTALL_MPDRIVER

[INSTALL_MPDRIVER]
FILE=%SRC%\DRIVER\DRVSETUP\SETUP.EXE
OPTION='%PARAM_REG% /L:U'
WAIT=IS6
HIDE=FALSE
PARAMETER=INITIAL_MPDRIVER_PARAM
CANCEL=FALSE

[LET_ITEM_MPDRIVER]
%ITEM%=%MPDRIVER.TEXT%

[LET_MPDRIVER_INSTALLED]
%MPDRIVER.INSTALLED%=1
%MPDRIVER.ENABLE%=0

[IS_MPDRIVER_NOTINSTALLED]
IFEQ=%PRODUCTFLAG%,1
IFNE=@%PARAM_REG%;APPLICATION_COMPLETED@,1
IFNE=@%PARAM_REG%;APPLICATION_COMPLETED@,140
IFNE=@%PARAM_REG%;APPLICATION_COMPLETED@,170

[IS_MPDRIVER_NOTINSTALL]
IFEQ=%MPDRIVER.ENABLE%,0
OR
IFEQ=%MPDRIVER.SELECT%,0

[LET_FAILURESTEP_MPDRIVER]
%FAILURESTEP%=%MPDRIVER.TEXT%

[RERUN_MPDRIVER]
FILE=%MCDCHECK_DIR%\MCDCHECK.INI
BEGIN=NEXT

[INITIAL_MPDRIVER_PARAM]
@%PARAM_REG%;REBOOT@=DWORD,0
@%PARAM_REG%;EMERGENCY_REBOOT@=DWORD,0
@%PARAM_REG%;APPLICATION_COMPLETED@=DWORD,0xFFFFFFFF
@%PARAM_REG%;PRIMARY_LANGID@=DWORD,%INST_PRIMARY_LANGID%
@%PARAM_REG%;SUB_LANGID@=DWORD,%INST_SUB_LANGID%
@%PARAM_REG%;SCANNERDRIVERNAME@=SZ,""
@%PARAM_REG%;INFPATH@=MULTI_SZ,""
@%PARAM_REG%;RESIDENCE@=SZ,%RESIDENCE%
@%PARAM_REG%;DEVICENAME@=SZ,"Canon %PRODUCTNAME%"
@%PARAM_REG%;PRINTER_FRIENDLY_NAME@=SZ,""
@%PARAM_REG%;SCANNER_FRIENDLY_NAME@=SZ,""
@%PARAM_REG%;FAX_FRIENDLY_NAME@=SZ,""
@%PARAM_REG%;CONNECTTYPE@=SZ,%CONNECTTYPE%
@%PARAM_REG%;SEND_INFO_AGREE@=DWORD,1

[GET_SCANNERDRIVERNAME]
%SCANNERDRIVERNAME%=@%PARAM_REG%;SCANNERDRIVERNAME@

[GET_INFFILENAMES]
%INFFILES%=@%PARAM_REG%;INFPATH@

;---------------------------------
; Install ScanGear Procedure
;---------------------------------
[INSTALL_SCANGEAR_PROC]
INITIALIZE=INSTALL_SCANGEAR_ACTION
BEGIN=INSTALL_SCANGEAR_BEGINACTION

[INSTALL_SCANGEAR_ACTION]
REBOOTMODE=REBOOTMODE_REJECT
EJECTMODE=EJECTMODE_REJECT

LET=LET_ITEM_SCANGEAR
IF=IS_SCANGEAR_NOTINSTALL
  END=NEXT
ENDIF

LET=LET_DRIVER_SKIP_FALSE
IF=IS_CAPTURE_MODE
  GOSUB=SUB_CHECK_SGEXIST_CAPTUREMODE
ENDIF
IF=IS_DRIVER_SKIP
  PROGRESS=%SCANGEAR.WEIGHT%
  END=NEXT
ENDIF
CREATEPROGRESSDLG=TRUE
LET=MYPRINT_LOG_SDRV_INSTALL_START
LOG=INSTALL_SCANGEAR_ACTION
END

[INSTALL_SCANGEAR_BEGINACTION]
LOG=INSTALL_SCANGEAR_BEGINACTION
SETWINDOWZPOS=1
UPDATEPROGRESSDLG=TRUE

LET=LET_SCANGEARINSTALLED_FALSE

LOG=START SCANGEAR INSTALL
APPL=INSTALL_SCANGEAR
LOG=..SCANGEAR install result is @%PARAM_REG%;APPLICATION_COMPLETED@/%EXITCODE%

IF=IS_RESULT_REBOOT
  LOG=SG need REBOOT.
  LET=LET_REBOOTDRV_TRUE
ENDIF

LET=LET_FAILURESTEP_SCANGEAR
IF=IS_RESULT_COREINSTALLER_INSTALLED
  LET=LET_SCANGEAR_INSTALLED
  LOG=SCANGEAR is installed successful.
ELSE
  LOG=SCANGEAR is not installed.
ENDIF

LET=LET_SECONDINSTALL
IF=IS_RESULT_EMERGENCYREBOOT_1
  MESSAGE=USBREBOOT_MSG
  LET=LET_REBOOT_FALSE
  LET=LET_REBOOTDRV_FALSE
  LET=LET_SCANGEAR_NOTINSTALLED
  SAVERERUN=RERUN_THIS
  END=REBOOT_RESUME
ENDIF
IF=IS_RESULT_EMERGENCYREBOOT_2
  PROGRESS=%SCANGEAR.WEIGHT%
  MESSAGE=USBREBOOT_MSG
  LET=LET_REBOOT_FALSE
  LET=LET_REBOOTDRV_FALSE
  SAVERERUN=RERUN_NEXT
  END=REBOOT_RESUME
ENDIF

IF=IS_SCANGEAR_NOTINSTALLED
  CREATEPROGRESSDLG=FALSE
  LET=LET_FAILSTEP_SCANGEAR
  END=FAILURE_PROC
ENDIF

PROGRESS=%SCANGEAR.WEIGHT%

LET=GET_SCANNERDRIVERNAME

SETWINDOWZPOS=1
END=NEXT

[SUB_CHECK_SGEXIST_CAPTUREMODE]
IF=IS_SCANGEAR_EXIST
ELSE
  LET=LET_SCANGEAR_INSTALLED
  LET=LET_DRIVER_SKIP_TRUE
ENDIF
END

[LET_SCANGEARINSTALLED_FALSE]
%SCANGEAR.INSTALLED%=0

[IS_SCANGEAR_EXIST]
IFEXISTFILE=INSTALL_SCANGEAR

[INSTALL_SCANGEAR]
FILE=%SRC%\DRIVER\DRVSETUP\SETUP.EXE
OPTION=%PARAM_REG%
WAIT=IS6
HIDE=FALSE
PARAMETER=INITIAL_MPDRIVER_PARAM
CANCEL=FALSE

[LET_ITEM_SCANGEAR]
%ITEM%=%SCANGEAR.TEXT%

[LET_SCANGEAR_INSTALLED]
%SCANGEAR.INSTALLED%=1
%SCANGEAR.ENABLE%=0

[IS_SCANGEAR_NOTINSTALLED]
IFNE=@%PARAM_REG%;APPLICATION_COMPLETED@,1
IFNE=@%PARAM_REG%;APPLICATION_COMPLETED@,140
IFNE=@%PARAM_REG%;APPLICATION_COMPLETED@,170

[IS_SCANGEAR_NOTINSTALL]
IFEQ=%SCANGEAR.ENABLE%,0
OR
IFEQ=%SCANGEAR.SELECT%,0

[LET_FAILURESTEP_SCANGEAR]
%FAILURESTEP%=%SCANGEAR.TEXT%

;---------------------------------
; INSTALL Manual Procedure
;---------------------------------

[INSTALL_EGV_PROC]
INITIALIZE=INSTALL_EGV_ACTION
BEGIN=INSTALL_EGV_BEGINACTION

[INSTALL_EGV_ACTION]
LET=LET_ITEM_EGV
REBOOTMODE=REBOOTMODE_REJECT
EJECTMODE=EJECTMODE_REJECT
LET=LET_EGV_PARAM_PRINTER_WITHCANON
IF=IS_SFS
  LET=LET_EGV_PARAM_PRINTER_NOCANON
ENDIF

IF=IS_EGV_NOTINSTALL
  END=NEXT
ENDIF
CREATEPROGRESSDLG=TRUE
LET=MYPRINT_LOG_EGV_INSTALL_START
END

[INSTALL_EGV_BEGINACTION]
SETWINDOWZPOS=1
IF=IS_SECONDINSTALL
  UPDATEPROGRESSDLG=TRUE
  PAUSE=6000
ENDIF
LET=LET_SECONDINSTALL

LOG=START EGV INSTALL
APPL=INSTALL_EGV
LOG=..EGV install result is @%PARAM_REG%;APPLICATION_COMPLETED@/%EXITCODE%

IF=IS_RESULT_REBOOT
  LET=LET_REBOOT_TRUE
  LOG=EGV need REBOOT.
ENDIF
IF=IS_RESULT_APPINST_SUCCESS
  LET=LET_EGV_INSTALLED
  LOG=EGV is installed.
ELSE
  LOG=EGV is not installed.
ENDIF

SETWINDOWZPOS=1
PROGRESS=%EGV.WEIGHT%
END=NEXT

[LET_EGV_PARAM_PRINTER_WITHCANON]
%EGV_PARAM_PRINTER%=%PRINTERNAME%

[LET_EGV_PARAM_PRINTER_NOCANON]
%EGV_PARAM_PRINTER%=%NAME%

[IS_EGV_NOTINSTALL]
IFEQ=%EGV.ENABLE%,0
OR
IFEQ=%EGV.SELECT%,0

[INSTALL_EGV]
FILE=%SRC%\EGV\StartHtm.exe
OPTION=%PARAM_REG%
WAIT=IS6
HIDE=FALSE
PARAMETER=INITIAL_EGV_PARAM
CANCEL=FALSE

[LET_ITEM_EGV]
%ITEM%=%EGV.TEXT%

[LET_EGV_INSTALLED]
%EGV.INSTALLED%=1
%EGV.ENABLE%=0

;---------------------------------
; Initial Manual Parameter
;---------------------------------
[INITIAL_EGV_PARAM]
@%PARAM_REG%;REBOOT@=DWORD,0
@%PARAM_REG%;EMERGENCY_REBOOT@=DWORD,0
@%PARAM_REG%;APPLICATION_COMPLETED@=DWORD,0xFFFFFFFF
@%PARAM_REG%;PRIMARY_LANGID@=DWORD,%INST_PRIMARY_LANGID%
@%PARAM_REG%;SUB_LANGID@=DWORD,%INST_SUB_LANGID%
@%PARAM_REG%;PRINTER@=SZ,%EGV_PARAM_PRINTER%
@%PARAM_REG%;DEVICENAME@=SZ,"Canon %PRODUCTNAME%"
@%PARAM_REG%;RESIDENCE@=SZ,%RESIDENCE%
@%PARAM_REG%;SEND_INFO_AGREE@=DWORD,1

;---------------------------------
; Install MP Toolbox Procedure
;---------------------------------

[INSTALL_MPNAVIEX_PROC]
INITIALIZE=INSTALL_MPNAVIEX_ACTION
BEGIN=INSTALL_UTILITY_BEGINACTION

[INSTALL_MPNAVIEX_ACTION]
LET=LET_MPNAVIEX_INFO
GOSUB=INSTALL_UTILITY_ACTION
LET=MYPRINT_LOG_MPNAVI_INSTALL_START
END

[IS_RESULT_MPNAVIEX_SUCCESS]
IFEQ=@%PARAM_REG%;APPLICATION_COMPLETED@,1
OR
IFEQ=@%PARAM_REG%;APPLICATION_COMPLETED@,140
OR
IFEQ=@%PARAM_REG%;APPLICATION_COMPLETED@,150
OR
IFEQ=@%PARAM_REG%;APPLICATION_COMPLETED@,160
OR
IFEQ=@%PARAM_REG%;APPLICATION_COMPLETED@,170

[IS_RESULT_MPNAVIEX_FAILED]
IFNE=@%PARAM_REG%;APPLICATION_COMPLETED@,1
IFNE=@%PARAM_REG%;APPLICATION_COMPLETED@,140
IFNE=@%PARAM_REG%;APPLICATION_COMPLETED@,150
IFNE=@%PARAM_REG%;APPLICATION_COMPLETED@,160
IFNE=@%PARAM_REG%;APPLICATION_COMPLETED@,170

[LET_MPNAVIEX_INFO]
%ITEM%=%MPNAVIEX.TEXT%
%FAILURESTEP%=`%MESSAGE%;STRING;MSM1808`
%UTILITY.ENABLE%=%MPNAVIEX.ENABLE%
%UTILITY.SELECT%=%MPNAVIEX.SELECT%
%UTILITY.WEIGHT%=%MPNAVIEX.WEIGHT%
%INSTALL_UTILITY%=INSTALL_MPNAVIEX
%LET_UTILITY_INSTALLED%=LET_MPNAVIEX_INSTALLED
%IS_UTILITY_INSTALL_SUCCESS%=IS_RESULT_MPNAVIEX_SUCCESS
%IS_UTILITY_INSTALL_FAILED%=IS_RESULT_MPNAVIEX_FAILED

[INSTALL_MPNAVIEX]
FILE=%SRC%\MPNAVIEX\SETUP.EXE
OPTION=%PARAM_REG% -NOEULA
WAIT=IS6
HIDE=FALSE
PARAMETER=INITIAL_APPLICATION_PARAM
CANCEL=FALSE

[LET_MPNAVIEX_INSTALLED]
%MPNAVIEX.INSTALLED%=1
%MPNAVIEX.ENABLE%=0

;---------------------------------
; Install Dial Utility Procedure
;---------------------------------

[INSTALL_DIALUTIL_PROC]
INITIALIZE=INSTALL_DIALUTIL_ACTION
BEGIN=INSTALL_DIALUTIL_BEGINACTION

[INSTALL_DIALUTIL_ACTION]
LET=LET_DIALUTIL_INFO
GOSUB=INSTALL_UTILITY_ACTION
LET=MYPRINT_LOG_DIALTOOL_INSTALL_START
END

[INSTALL_DIALUTIL_BEGINACTION]
CREATEPROGRESSDLG=TRUE
SETWINDOWZPOS=1
IF=IS_SECONDINSTALL
  UPDATEPROGRESSDLG=TRUE
  PAUSE=6000
ENDIF
LET=LET_SECONDINSTALL

LOG=START %ITEM% INSTALL
APPL=%INSTALL_UTILITY%
LOG=..%ITEM% install result is @%PARAM_REG%;APPLICATION_COMPLETED@/%EXITCODE%

IF=%IS_UTILITY_INSTALL_SUCCESS%
  LET=%LET_UTILITY_INSTALLED%
ENDIF
IF=IS_RESULT_REBOOT
  LET=LET_REBOOT_TRUE
  LOG=%ITEM% need REBOOT.
ENDIF

SETWINDOWZPOS=1
PROGRESS=%UTILITY.WEIGHT%
END=NEXT

[IS_RESULT_DIALUTIL_SUCCESS]
IFEQ=@%PARAM_REG%;APPLICATION_COMPLETED@,1
OR
IFEQ=@%PARAM_REG%;APPLICATION_COMPLETED@,140
OR
IFEQ=@%PARAM_REG%;APPLICATION_COMPLETED@,150
OR
IFEQ=@%PARAM_REG%;APPLICATION_COMPLETED@,160
OR
IFEQ=@%PARAM_REG%;APPLICATION_COMPLETED@,170

[IS_RESULT_DIALUTIL_FAILED]
IFNE=@%PARAM_REG%;APPLICATION_COMPLETED@,1
IFNE=@%PARAM_REG%;APPLICATION_COMPLETED@,140
IFNE=@%PARAM_REG%;APPLICATION_COMPLETED@,150
IFNE=@%PARAM_REG%;APPLICATION_COMPLETED@,160
IFNE=@%PARAM_REG%;APPLICATION_COMPLETED@,170

[LET_DIALUTIL_INFO]
%ITEM%=%DIALUTIL.TEXT%
%FAILURESTEP%=`%MESSAGE%;STRING;MSM1808`
%UTILITY.ENABLE%=%DIALUTIL.ENABLE%
%UTILITY.SELECT%=%DIALUTIL.SELECT%
%UTILITY.WEIGHT%=%DIALUTIL.WEIGHT%
%INSTALL_UTILITY%=INSTALL_DIALUTIL
%LET_UTILITY_INSTALLED%=LET_DIALUTIL_INSTALLED
%IS_UTILITY_INSTALL_SUCCESS%=IS_RESULT_DIALUTIL_SUCCESS
%IS_UTILITY_INSTALL_FAILED%=IS_RESULT_DIALUTIL_FAILED

[INSTALL_DIALUTIL]
FILE=%SRC%\DIALUTIL\SETUP.EXE
OPTION=%PARAM_REG% -NOEULA
WAIT=IS6
HIDE=FALSE
PARAMETER=INITIAL_APPLICATION_PARAM
CANCEL=FALSE

[LET_DIALUTIL_INSTALLED]
%DIALUTIL.INSTALLED%=1
%DIALUTIL.ENABLE%=0

;---------------------------------
; Install MIG Procedure
;---------------------------------
[INSTALL_MIG_PROC]
INITIALIZE=INSTALL_MIG_ACTION
BEGIN=INSTALL_APP_BEGINACTION

[INSTALL_MIG_ACTION]
LET=LET_MIG_INFO
GOSUB=INSTALL_APP_ACTION
END

[LET_MIG_INFO]
%ITEM%=%MIG.TEXT%
%APP.ENABLE%=%MIG.ENABLE%
%APP.SELECT%=%MIG.SELECT%
%APP.WEIGHT%=%MIG.WEIGHT%
%INSTALL_APP%=INSTALL_MIG
%LET_APP_INSTALLED%=LET_MIG_INSTALLED
%FAILURESTEP%=`%MESSAGE%;STRING;MSM1807`
%APPINST_RESULT_REQUIREMENT%=IS_RESULT_APPINST_SUCCESS_MORE
%EULA_CANCELED%=FALSE

[INSTALL_MIG]
FILE=%SRC%\MIG\MyImageGarden\SETUP.EXE
OPTION='%PARAM_REG% -NOEULA'
WAIT=IS6
HIDE=FALSE
PARAMETER=INITIAL_APPLICATION_PARAM
CANCEL=FALSE

[LET_MIG_INSTALLED]
%MIG.INSTALLED%=1
%MIG.ENABLE%=0

;---------------------------------
; Install Quick Menu Procedure
;---------------------------------
[INSTALL_QUICK_PROC]
INITIALIZE=INSTALL_QUICK_ACTION
BEGIN=INSTALL_APP_BEGINACTION

[INSTALL_QUICK_ACTION]
LET=LET_QUICK_INFO
GOSUB=INSTALL_APP_ACTION
END

[LET_QUICK_INFO]
%ITEM%=%QUICK.TEXT%
%APP.ENABLE%=%QUICK.ENABLE%
%APP.SELECT%=%QUICK.SELECT%
%APP.WEIGHT%=%QUICK.WEIGHT%
%INSTALL_APP%=INSTALL_QUICK
%LET_APP_INSTALLED%=LET_QUICK_INSTALLED
%FAILURESTEP%=`%MESSAGE%;STRING;MSM1807`
%APPINST_RESULT_REQUIREMENT%=IS_RESULT_APPINST_SUCCESS_MORE
%EULA_CANCELED%=FALSE

[INSTALL_QUICK]
FILE=%SRC%\QUICK\SETUP.EXE
OPTION='%PARAM_REG% -NOEULA'
WAIT=IS6
HIDE=FALSE
PARAMETER=INITIAL_APPLICATION_PARAM
CANCEL=FALSE

[LET_QUICK_INSTALLED]
%QUICK.INSTALLED%=1
%QUICK.ENABLE%=0

;---------------------------------
; Install PSP Procedure
;---------------------------------
[INSTALL_PSP_PROC]
INITIALIZE=INSTALL_PSP_ACTION
BEGIN=INSTALL_APP_BEGINACTION

[INSTALL_PSP_ACTION]
LET=LET_PSP_INFO
GOSUB=INSTALL_APP_ACTION
END

[LET_PSP_INFO]
%ITEM%=%PSP.TEXT%
%APP.ENABLE%=%PSP.ENABLE%
%APP.SELECT%=%PSP.SELECT%
%APP.WEIGHT%=%PSP.WEIGHT%
%INSTALL_APP%=INSTALL_PSP
%LET_APP_INSTALLED%=LET_PSP_INSTALLED
%FAILURESTEP%=`%MESSAGE%;STRING;MSM1807`
%APPINST_RESULT_REQUIREMENT%=IS_RESULT_APPINST_SUCCESS_MORE
%EULA_CANCELED%=IS_PSP_CANCEL

[INSTALL_PSP]
FILE='%SRC%\PSP\Print Studio Pro\SETUP.EXE'
OPTION='%PARAM_REG% "%INSTALL_DIR%" -NOEULA'
WAIT=IS6
HIDE=FALSE
PARAMETER=INITIAL_APPLICATION_PARAM
CANCEL=FALSE

[LET_PSP_INSTALLED]
%PSP.INSTALLED%=1
%PSP.ENABLE%=0

[IS_PSP_CANCEL]
IFEQ=%PSP.EULA_CANCEL%,1

;---------------------------------
; Install EPP Ex Procedure
;---------------------------------
[INSTALL_EPPEX_PROC]
INITIALIZE=INSTALL_EPPEX_ACTION
BEGIN=INSTALL_APP_BEGINACTION

[INSTALL_EPPEX_ACTION]
LET=LET_EPPEX_INFO
GOSUB=INSTALL_APP_ACTION
LET=MYPRINT_LOG_EPPEX_INSTALL_START
END

[LET_EPPEX_INFO]
%ITEM%=%EPPEX.TEXT%
%APP.ENABLE%=%EPPEX.ENABLE%
%APP.SELECT%=%EPPEX.SELECT%
%APP.WEIGHT%=%EPPEX.WEIGHT%
%INSTALL_APP%=INSTALL_EPPEX
%LET_APP_INSTALLED%=LET_EPPEX_INSTALLED
%FAILURESTEP%=`%MESSAGE%;STRING;MSM1807`
%APPINST_RESULT_REQUIREMENT%=IS_RESULT_APPINST_SUCCESS_MORE
%EULA_CANCELED%=FALSE

[INSTALL_EPPEX]
FILE=%SRC%\EPPEX\%INSTLANG%\SETUP.EXE
OPTION='%PARAM_REG% "%INSTALL_DIR%" -NOEULA'
WAIT=IS6
HIDE=FALSE
PARAMETER=INITIAL_APPLICATION_PARAM
CANCEL=FALSE

[LET_EPPEX_INSTALLED]
%EPPEX.INSTALLED%=1
%EPPEX.ENABLE%=0

;---------------------------------
; Install EPPPRO Procedure
;---------------------------------

[INSTALL_EPPPRO_PROC]
INITIALIZE=INSTALL_EPPPRO_ACTION
BEGIN=INSTALL_APP_BEGINACTION

[INSTALL_EPPPRO_ACTION]
LET=LET_EPPPRO_INFO
GOSUB=INSTALL_APP_ACTION
LET=MYPRINT_LOG_EPPPRO_INSTALL_START
END

[LET_EPPPRO_INFO]
%ITEM%=%EPPPRO.TEXT%
%APP.ENABLE%=%EPPPRO.ENABLE%
%APP.SELECT%=%EPPPRO.SELECT%
%APP.WEIGHT%=%EPPPRO.WEIGHT%
%INSTALL_APP%=INSTALL_EPPPRO
%LET_APP_INSTALLED%=LET_EPPPRO_INSTALLED
%FAILURESTEP%=`%MESSAGE%;STRING;MSM1807`
%APPINST_RESULT_REQUIREMENT%=IS_RESULT_APPINST_SUCCESS_MORE
%EULA_CANCELED%=FALSE

[INSTALL_EPPPRO]
FILE=%SRC%\EPPPRO\%INSTLANG%\SETUP.EXE
OPTION='%PARAM_REG% "%INSTALL_DIR%" -NOEULA'
WAIT=IS6
HIDE=FALSE
PARAMETER=INITIAL_APPLICATION_PARAM
CANCEL=FALSE

[LET_EPPPRO_INSTALLED]
%EPPPRO.INSTALLED%=1
%EPPPRO.ENABLE%=0

;---------------------------------
; Install Solution Menu Procedure
;---------------------------------

[INSTALL_SBOX_PROC]
INITIALIZE=INSTALL_SBOX_ACTION
BEGIN=INSTALL_APP_BEGINACTION

[INSTALL_SBOX_ACTION]
LET=LET_SBOX_INFO
GOSUB=INSTALL_APP_ACTION
LET=MYPRINT_LOG_SBOX_INSTALL_START
END

[LET_SBOX_INFO]
%ITEM%=%SBOX.TEXT%
%APP.ENABLE%=%SBOX.ENABLE%
%APP.SELECT%=%SBOX.SELECT%
%APP.WEIGHT%=%SBOX.WEIGHT%
%INSTALL_APP%=INSTALL_SBOX
%LET_APP_INSTALLED%=LET_SBOX_INSTALLED
%FAILURESTEP%=`%MESSAGE%;STRING;MSM1807`
%APPINST_RESULT_REQUIREMENT%=IS_RESULT_APPINST_SUCCESS_MORE
%EULA_CANCELED%=FALSE

[INSTALL_SBOX]
FILE=%SRC%\SBOX\SETUP.EXE
OPTION='%PARAM_REG% -NOEULA'
WAIT=IS6
HIDE=FALSE
PARAMETER=INITIAL_APPLICATION_PARAM
CANCEL=FALSE

[LET_SBOX_INSTALLED]
%SBOX.INSTALLED%=1
%SBOX.ENABLE%=0

;---------------------------------
; Install My Printer Utility
;---------------------------------

[INSTALL_MYPRINTER_PROC]
INITIALIZE=INSTALL_MYPRINTER_ACTION
BEGIN=INSTALL_APP_BEGINACTION

[INSTALL_MYPRINTER_ACTION]
LET=LET_MYPRINTER_INFO
GOSUB=INSTALL_APP_ACTION
LET=MYPRINT_LOG_MYPRINT_INSTALL_START
END

[LET_MYPRINTER_INFO]
%ITEM%=%MYPRINTER.TEXT%
%APP.ENABLE%=%MYPRINTER.ENABLE%
%APP.SELECT%=%MYPRINTER.SELECT%
%APP.WEIGHT%=%MYPRINTER.WEIGHT%
%INSTALL_APP%=INSTALL_MYPRINTER
%LET_APP_INSTALLED%=LET_MYPRINTER_INSTALLED
%FAILURESTEP%=`%MESSAGE%;STRING;MSM1808`
%APPINST_RESULT_REQUIREMENT%=IS_RESULT_APPINST_SUCCESS_MORE
%EULA_CANCELED%=FALSE

[INSTALL_MYPRINTER]
FILE=%SRC%\MYPRINT\SETUP.EXE
OPTION='%PARAM_REG% -NOEULA'
WAIT=IS6
HIDE=FALSE
PARAMETER=INITIAL_APPLICATION_PARAM
CANCEL=FALSE

[LET_MYPRINTER_INSTALLED]
%MYPRINTER.INSTALLED%=1
%MYPRINTER.ENABLE%=0

;---------------------------------
; Install AdobeProfile Procedure
;---------------------------------

[INSTALL_ADOBEICC_PROC]
INITIALIZE=INSTALL_ADOBEICC_ACTION
BEGIN=INSTALL_APP_BEGINACTION

[INSTALL_ADOBEICC_ACTION]
LET=LET_ADOBEICC_INFO
GOSUB=INSTALL_APP_ACTION
LET=MYPRINT_LOG_ADOBE_INSTALL_START
END

[LET_ADOBEICC_INFO]
%ITEM%=%ADOBEICC.TEXT%
%APP.ENABLE%=%ADOBEICC.ENABLE%
%APP.SELECT%=%ADOBEICC.SELECT%
%APP.WEIGHT%=%ADOBEICC.WEIGHT%
%INSTALL_APP%=INSTALL_ADOBEICC
%LET_APP_INSTALLED%=LET_ADOBEICC_INSTALLED
%FAILURESTEP%=`%MESSAGE%;STRING;MSM1807`
%APPINST_RESULT_REQUIREMENT%=IS_RESULT_APPINST_SUCCESS
%EULA_CANCELED%=IS_ADOBEICC_CANCEL

[INSTALL_ADOBEICC]
FILE=%SRC%\ADOBEICC\SETUP.EXE
OPTION='%PARAM_REG% -NOEULA'
WAIT=IS6
HIDE=FALSE
PARAMETER=INITIAL_APPLICATION_PARAM
CANCEL=FALSE

[IS_ADOBEICC_CANCEL]
IFEQ=%ADOBEICC.EULA_CANCEL%,1

[LET_ADOBEICC_INSTALLED]
%ADOBEICC.INSTALLED%=1
%ADOBEICC.ENABLE%=0

;---------------------------------
; Install Yomitori Kakumei
;---------------------------------

[INSTALL_YOMITORI_PROC]
INITIALIZE=INSTALL_YOMITORI_ACTION
BEGIN=INSTALL_3RDAPP_BEGINACTION
REBOOTREJECT_EVENT=REBOOTREJECT_ACTION

[INSTALL_YOMITORI_ACTION]
LET=LET_YOMITORI_INFO
GOSUB=INSTALL_APP_ACTION
LET=MYPRINT_LOG_YOMITORI_INSTALL_START
END

[LET_YOMITORI_INFO]
%ITEM%=%YOMITORI.TEXT%
%APP.ENABLE%=%YOMITORI.ENABLE%
%APP.SELECT%=%YOMITORI.SELECT%
%APP.WEIGHT%=%YOMITORI.WEIGHT%
%APP.SILENT%=%YOMITORI.SILENT%
%INSTALL_APP%=INSTALL_YOMITORI
%LET_APP_INSTALLED%=LET_YOMITORI_INSTALLED
%IS_REBOOT_APP%=IS_YOMITORI_REBOOT
%NEXT_PROC%=INSTALLED_YOMITORI_PROC
%EULA_CANCELED%=IS_YOMITORI_CANCEL
%IS_3RDAPP_INSTALL_SUCCESS%=TRUE
%INSTALL_APP_NOSILENT%=INSTALL_YOMITORI_NOSILENT
%IS_3RDAPP_TWICE_INSTALL%=FALSE

[INSTALL_YOMITORI]
FILE=%SRC%\YOMIKAKU\Original\SSETUP.EXE
WAIT=IS6
HIDE=FALSE
CANCEL=FALSE

[INSTALL_YOMITORI_NOSILENT]
FILE=%SRC%\YOMIKAKU\Original\SETUP.EXE
OPTION='/v"PARAM=NoReboot"'
WAIT=IS6
HIDE=FALSE
CANCEL=FALSE

[IS_YOMITORI_CANCEL]
IFEQ=%YOMITORI.EULA_CANCEL%,1

[LET_YOMITORI_INSTALLED]
%YOMITORI.INSTALLED%=1
%YOMITORI.ENABLE%=0

[IF_YOMITORI_INSTALL_SUCCESS]
IFEQ=%EXITCODE%,0

[IS_YOMITORI_REBOOT]
IFEQ=@SOFTWARE\PANASONIC\読取革命\L1.00.000;REBOOT@,1

;---------------------------------
; After Install Yomitori Kakumei
;---------------------------------
[INSTALLED_YOMITORI_PROC]
INITIALIZE=INSTALL_YOMITORI_ACTION
BEGIN=INSTALLED_3RDAPP_BEGINACTION

;---------------------------------
; Install EWP Ex Procedure
;---------------------------------
[INSTALL_EWPEX_PROC]
INITIALIZE=INSTALL_EWPEX_ACTION
BEGIN=INSTALL_APP_BEGINACTION

[INSTALL_EWPEX_ACTION]
LET=LET_EWPEX_INFO
GOSUB=INSTALL_APP_ACTION
LET=MYPRINT_LOG_EWPEX_INSTALL_START
END

[LET_EWPEX_INFO]
%ITEM%=%EWPEX.TEXT%
%APP.ENABLE%=%EWPEX.ENABLE%
%APP.SELECT%=%EWPEX.SELECT%
%APP.WEIGHT%=%EWPEX.WEIGHT%
%INSTALL_APP%=INSTALL_EWPEX
%LET_APP_INSTALLED%=LET_EWPEX_INSTALLED
%FAILURESTEP%=`%MESSAGE%;STRING;MSM1807`
%APPINST_RESULT_REQUIREMENT%=IS_RESULT_APPINST_SUCCESS_MORE
%EULA_CANCELED%=FALSE

[INSTALL_EWPEX]
FILE=%SRC%\EWPEX\SETUP.EXE
OPTION=%PARAM_REG% -NOEULA
WAIT=IS6
HIDE=FALSE
PARAMETER=INITIAL_APPLICATION_PARAM
CANCEL=FALSE

[LET_EWPEX_INSTALLED]
%EWPEX.INSTALLED%=1
%EWPEX.ENABLE%=0

;---------------------------------
; Install OshiraseMessanger Procedure
;---------------------------------
[INSTALL_OSHIRASE_PROC]
INITIALIZE=INSTALL_OSHIRASE_ACTION
BEGIN=INSTALL_APP_BEGINACTION

[INSTALL_OSHIRASE_ACTION]
LET=LET_OSHIRASE_INFO
GOSUB=INSTALL_APP_ACTION
LET=MYPRINT_LOG_OSHIRASE_INSTALL_START
END

[LET_OSHIRASE_INFO]
%ITEM%=%OSHIRASE.TEXT%
%APP.ENABLE%=%OSHIRASE.ENABLE%
%APP.SELECT%=%OSHIRASE.SELECT%
%APP.WEIGHT%=%OSHIRASE.WEIGHT%
%INSTALL_APP%=INSTALL_OSHIRASE
%LET_APP_INSTALLED%=LET_OSHIRASE_INSTALLED
%FAILURESTEP%=`%MESSAGE%;STRING;MSM1807`
%APPINST_RESULT_REQUIREMENT%=IS_RESULT_APPINST_SUCCESS
%EULA_CANCELED%=IS_OSHIRASE_CANCEL

[INSTALL_OSHIRASE]
FILE=%SRC%\OSHIRASE\CSPTLDL-CANONMJ.exe
OPTION=%PARAM_REG% -NOEULA
WAIT=IS6
HIDE=FALSE
PARAMETER=INITIAL_APPLICATION_PARAM
CANCEL=FALSE

[IS_OSHIRASE_CANCEL]
IFEQ=%OSHIRASE.EULA_CANCEL%,1

[LET_OSHIRASE_INSTALLED]
%OSHIRASE.INSTALLED%=1
%OSHIRASE.ENABLE%=0

;---------------------------------
; Install Utility Procedure
;---------------------------------

[INSTALL_UTILITY_PROC]
INITIALIZE=INSTALL_UTILITY_ACTION
BEGIN=INSTALL_UTILITY_BEGINACTION

[INSTALL_UTILITY_ACTION]
REBOOTMODE=REBOOTMODE_REJECT
EJECTMODE=EJECTMODE_REJECT
IF=IS_UTILITY_NOTINSTALL
  END=NEXT
ENDIF
END

[INSTALL_UTILITY_BEGINACTION]
IF=IS_CAPTURE_MODE
  LET=%LET_UTILITY_INSTALLED%
  LOG=%ITEM% is installed(CAPTURE_MODE).
  PROGRESS=%UTILITY.WEIGHT%
  END=NEXT
ENDIF
CREATEPROGRESSDLG=TRUE
SETWINDOWZPOS=1
IF=IS_SECONDINSTALL
  UPDATEPROGRESSDLG=TRUE
  PAUSE=6000
ENDIF
LET=LET_SECONDINSTALL

LOG=START %ITEM% INSTALL
APPL=%INSTALL_UTILITY%
LOG=..%ITEM% install result is @%PARAM_REG%;APPLICATION_COMPLETED@/%EXITCODE%

IF=%IS_UTILITY_INSTALL_SUCCESS%
  LET=%LET_UTILITY_INSTALLED%
ENDIF
IF=%IS_UTILITY_INSTALL_FAILED%
  CREATEPROGRESSDLG=FALSE
  LET=LET_FAILSTEP_UTILITY
  END=FAILURE_PROC
ENDIF
IF=IS_RESULT_REBOOT
  LET=LET_REBOOT_TRUE
  LOG=%ITEM% need REBOOT.
ENDIF

SETWINDOWZPOS=1
PROGRESS=%UTILITY.WEIGHT%
END=NEXT

[IS_RESULT_UTILITY_SUCCESS]
IFEQ=@%PARAM_REG%;APPLICATION_COMPLETED@,1

[IS_RESULT_UTILITY_FAILED]
IFNE=@%PARAM_REG%;APPLICATION_COMPLETED@,1

[IS_UTILITY_NOTINSTALL]
IFEQ=%UTILITY.ENABLE%,0
OR
IFEQ=%UTILITY.SELECT%,0

;---------------------------------
; Install Application
;---------------------------------

[INSTALL_APP_PROC]
INITIALIZE=INSTALL_APP_ACTION
BEGIN=INSTALL_APP_BEGINACTION

[INSTALL_APP_ACTION]
REBOOTMODE=REBOOTMODE_REJECT
EJECTMODE=EJECTMODE_REJECT
IF=IS_APP_NOTINSTALL
  END=NEXT
ENDIF
END

[INSTALL_APP_BEGINACTION]
SETWINDOWZPOS=1
IF=%EULA_CANCELED%
  PROGRESS=%APP.WEIGHT%
  END=NEXT
ENDIF
CREATEPROGRESSDLG=TRUE
UPDATEPROGRESSDLG=TRUE

IF=IS_SECONDINSTALL
  PAUSE=6000
ENDIF
LET=LET_SECONDINSTALL

LOG=START %ITEM% INSTALL
APPL=%INSTALL_APP%
LOG=..%ITEM% install result is @%PARAM_REG%;APPLICATION_COMPLETED@/%EXITCODE%

IF=IS_INSTALLTERMINATE
  LET=LET_REBOOT_TRUE
  CREATEPROGRESSDLG=FALSE
  END=FAILURE_PROC
ENDIF

IF=IS_RESULT_REBOOT
  LET=LET_REBOOT_TRUE
  LOG=%ITEM% need REBOOT.
ENDIF
IF=IS_RESULT_EMERGENCYREBOOT_1
  MESSAGE=USBREBOOT_MSG
  LET=LET_REBOOT_FALSE
  LET=LET_REBOOTDRV_FALSE
  SAVERERUN=RERUN_THIS
  END=REBOOT_RESUME
ENDIF
IF=IS_RESULT_EMERGENCYREBOOT_2
  MESSAGE=USBREBOOT_MSG
  LET=LET_REBOOT_FALSE
  LET=LET_REBOOTDRV_FALSE
  SAVERERUN=RERUN_NEXT
  END=REBOOT_RESUME
ENDIF
IF=%APPINST_RESULT_REQUIREMENT%
  LET=%LET_APP_INSTALLED%
ENDIF

SETWINDOWZPOS=1
PROGRESS=%APP.WEIGHT%
END=NEXT

[IS_APP_NOTINSTALL]
IFEQ=%APP.ENABLE%,0
OR
IFEQ=%APP.SELECT%,0

[IS_INSTALLTERMINATE]
IFEQ=%EXITCODE%,128

;---------------------------------
; Initial Application Parameter
;---------------------------------

[INITIAL_APPLICATION_PARAM]
@%PARAM_REG%;REBOOT@=DWORD,0
@%PARAM_REG%;EMERGENCY_REBOOT@=DWORD,0
@%PARAM_REG%;APPLICATION_COMPLETED@=DWORD,0xFFFFFFFF
@%PARAM_REG%;PRIMARY_LANGID@=DWORD,%INST_PRIMARY_LANGID%
@%PARAM_REG%;SUB_LANGID@=DWORD,%INST_SUB_LANGID%
@%PARAM_REG%;RESIDENCE@=SZ,%RESIDENCE%
@%PARAM_REG%;REGION@=SZ,%SELECTEDCOUNTRY%
@%PARAM_REG%;DEVICENAME@=SZ,"Canon %PRODUCTNAME%"
@%PARAM_REG%;DEVICEID@=SZ,%DEVICEID%
@%PARAM_REG%;SEND_INFO_AGREE@=DWORD,1

[IS_RESULT_APPINST_SUCCESS]
IFEQ=@%PARAM_REG%;APPLICATION_COMPLETED@,1

[IS_RESULT_APPINST_SUCCESS_MORE]
IFEQ=@%PARAM_REG%;APPLICATION_COMPLETED@,1
OR
IFEQ=@%PARAM_REG%;APPLICATION_COMPLETED@,130
OR
IFEQ=@%PARAM_REG%;APPLICATION_COMPLETED@,140
OR
IFEQ=@%PARAM_REG%;APPLICATION_COMPLETED@,160
OR
IFEQ=@%PARAM_REG%;APPLICATION_COMPLETED@,170
OR
IFEQ=@%PARAM_REG%;APPLICATION_COMPLETED@,180

[IS_RESULT_APPLICATION_BEGIN]
IFEQ=@%PARAM_REG%;APPLICATION_COMPLETED@,0

[IS_RESULT_NETRWORKSETUP_BACK]
IFEQ=@%PARAM_REG%;APPLICATION_COMPLETED@,120

[IS_RESULT_REBOOT]
IFNE=@%PARAM_REG%;REBOOT@,0

[LET_REBOOT_TRUE]
%REBOOT%=1

[LET_REGREBOOT_FALSE]
@%PARAM_REG%;REBOOT@=DWORD,0

[LET_REBOOTDRV_TRUE]
%REBOOTDRV%=1

[LET_REBOOT_FALSE]
%REBOOT%=0

[LET_REBOOTDRV_FALSE]
%REBOOTDRV%=0

;---------------------------------
; Install 3rd Application
;---------------------------------

[INSTALL_3RDAPP_PROC]
INITIALIZE=INSTALL_APP_ACTION
BEGIN=INSTALL_3RDAPP_BEGINACTION

[INSTALL_3RDAPP_BEGINACTION]
SETWINDOWZPOS=1
IF=%EULA_CANCELED%
  END=NEXT
ENDIF
CREATEPROGRESSDLG=TRUE
UPDATEPROGRESSDLG=TRUE

IF=IS_SECONDINSTALL
  PAUSE=6000
ENDIF
LET=LET_SECONDINSTALL
SAVERERUN=RERUN_3RDAPP
REBOOTMODE=REBOOTMODE_ACCEPT

LOG=START %ITEM% INSTALL

IF=IS_APPSILENT_TRUE
  APPL=%INSTALL_APP%
  LOG=..%ITEM% silent install result is %EXITCODE%
ELSE
  APPL=%INSTALL_APP_NOSILENT%
  LOG=..%ITEM% normal install result is %EXITCODE%
ENDIF

IF=%IS_3RDAPP_INSTALL_SUCCESS%
  LOG=%ITEM% install success
  REBOOTMODE=REBOOTMODE_REJECT
  END=NEXT
ENDIF

IF=%IS_3RDAPP_TWICE_INSTALL%
  LOG=%ITEM% install retry
  APPL=%INSTALL_APP_NOSILENT%
ENDIF

REBOOTMODE=REBOOTMODE_REJECT
END=NEXT

[RERUN_3RDAPP]
FILE=%MCDCHECK_DIR%\MCDCHECK.INI
BEGIN=%NEXT_PROC%

[IS_APPSILENT_TRUE]
IFEQ=%APP.SILENT%,1

;---------------------------------
; Installed 3rd Application
;---------------------------------
[INSTALLED_3RDAPP_BEGINACTION]
SETWINDOWZPOS=1
PROGRESS=%APP.WEIGHT%
DELETERERUN=RERUN_3RDAPP
IF=%EULA_CANCELED%
  END=NEXT
ENDIF

IF=%IS_3RDAPP_INSTALL_SUCCESS%
  LET=%LET_APP_INSTALLED%
ELSE
  LOG=%ITEM% install failed.
ENDIF

IF=%IS_REBOOT_APP%
  LET=LET_REBOOT_TRUE
ENDIF

END=NEXT

;---------------------------------
; Final Procedure
;---------------------------------

[FINAL_PROC]
INITIALIZE=FINAL_PROC_ACTION

[FINAL_PROC_ACTION]
CREATEPROGRESSDLG=FALSE
REBOOTMODE=REBOOTMODE_REJECT
EJECTMODE=EJECTMODE_REJECT
SETWINDOWZPOS=1
ITEMINFO_INSTALLED=%ITEMSECTION%

LET=LET_STEPITEM_NONE
LET=LET_COMMA_NULL

IF=IS_DO_NETWORKSETUP
  LET=LET_STEP3_SEARCHNETWORK
  LET=LET_COMMA_COMMA
ENDIF

IF=IS_SFS
  LET=SET_DETECT_MESSAGES_SFS
ELSE
  LET=SET_DETECT_MESSAGES_SFPMFP
ENDIF

IF=IS_NEED_DELECT_STEP
  LET=LET_STEP3_PRINTERCONNECT
  LET=LET_COMMA_COMMA
ENDIF

IF=IS_HEADALIGNMENT1_SHOW
  LOG=headalignment is 1
  LET=LET_STEP3_DETECT_HEADALIGNMENT1
  LET=LET_COMMA_COMMA
ENDIF
IF=IS_HEADALIGNMENT2_SHOW
  LOG=headalignment is 2
  LET=LET_STEP3_DETECT_HEADALIGNMENT2
  LET=LET_COMMA_COMMA
ENDIF
IF=IS_HEADALIGNMENT3_SHOW
  LOG=headalignment is 3
  LET=LET_STEP3_DETECT_HEADALIGNMENT1
  LET=LET_COMMA_COMMA
ENDIF

IF=IS_COMPLETIONSTEP_NEED
  LET=LET_STEP3_COMPLETION
  LET=LET_COMMA_COMMA
ENDIF

SETWINDOWZPOS=1

IF=NEED_REGIST_DRVINFO_4SBOX
  GOSUB=SUB_SAVE_INSTALLED_DEVICE
ENDIF

GOSUB=SUB_WSPTLIST_INSTALL

END=NEXT

[SUB_SAVE_INSTALLED_DEVICE]
LET=REGIST_DRVINFO_4SBOX
IF=IS_ARCHITECTURE_X64
  LET=REGIST_DRVINFO_4SBOX_64
ENDIF

[NEED_REGIST_DRVINFO_4SBOX]
IFEQ=%PRINTERDRIVER.SELECT%,1
OR
IFEQ=%MPDRIVER.SELECT%,1
OR
IFEQ=%SCANGEAR.SELECT%,1
OR
IFEQ=%XPS.SELECT%,1

[REGIST_DRVINFO_4SBOX]
@%INSTALLED_DEVICE_REG%;LISTNAME@=SZ,"Canon %PRODUCTNAME%"
@%INSTALLED_DEVICE_REG%;DEVICENAME@=SZ,%DEVICEID%
@%INSTALLED_DEVICE_REG%;CATEGORY@=SZ,`%INI%;PRODUCTTYPE_LIST;%PRODUCTFLAG%`
@%INSTALLED_DEVICE_REG%;RESIDENCE@=SZ,%RESIDENCE%
@%INSTALLED_DEVICE_REG%;AREA@=SZ,%SELECTEDCOUNTRY%
@%INSTALLED_DEVICE_REG%;CD@=SZ,%CDTYPE%
@%INSTALLED_DEVICE_REG%;LANG@=SZ,%LANG%
@%INSTALLED_DEVICE_REG%;WSpt_Residence@=SZ,%SELECTEDCOUNTRY%
@%INSTALLED_DEVICE_REG%;CDTYPE_INCDC@=SZ,%CDTYPE_INCDC%
@%INSTALLED_DEVICE_REG%;LANGID_FORIJUPDATE@=SZ,`%INI%;%LANG%;IJSLANG`
@%INSTALLED_DEVICE_REG%;MS_INSTDATE@=QWORD,%MS_INSTDATE%
@%INSTALLED_DEVICE_REG%;MS_INTERFACE@=SZ,%CONNECTTYPE%

[REGIST_DRVINFO_4SBOX_64]
@%INSTALLED_DEVICE_REG%;LISTNAME;x64@=SZ,"Canon %PRODUCTNAME%"
@%INSTALLED_DEVICE_REG%;DEVICENAME;x64@=SZ,%DEVICEID%
@%INSTALLED_DEVICE_REG%;CATEGORY;x64@=SZ,`%INI%;PRODUCTTYPE_LIST;%PRODUCTFLAG%`
@%INSTALLED_DEVICE_REG%;RESIDENCE;x64@=SZ,%RESIDENCE%
@%INSTALLED_DEVICE_REG%;AREA;x64@=SZ,%SELECTEDCOUNTRY%
@%INSTALLED_DEVICE_REG%;CD;x64@=SZ,%CDTYPE%
@%INSTALLED_DEVICE_REG%;LANG;x64@=SZ,%LANG%
@%INSTALLED_DEVICE_REG%;WSpt_Residence;x64@=SZ,%SELECTEDCOUNTRY%
@%INSTALLED_DEVICE_REG%;CDTYPE_INCDC;x64@=SZ,%CDTYPE_INCDC%
@%INSTALLED_DEVICE_REG%;LANGID_FORIJUPDATE;x64@=SZ,`%INI%;%LANG%;IJSLANG`
@%INSTALLED_DEVICE_REG%;MS_INSTDATE;x64@=QWORD,%MS_INSTDATE%
@%INSTALLED_DEVICE_REG%;MS_INTERFACE;x64@=SZ,%CONNECTTYPE%

[IS_NEED_DELECT_STEP]
IFEQ=%PRINTERDRIVER.INSTALLED%,1
IFNOT=%SELECT_METHOD%,LAN
OR
IFEQ=%MPDRIVER.INSTALLED%,1
IFNOT=%SELECT_METHOD%,LAN
OR
IFEQ=%SCANGEAR.INSTALLED%,1

[LET_STEPITEM_NONE]
%STEPITEM%=""

[LET_COMMA_NULL]
%COMMA%=""

[LET_COMMA_COMMA]
%COMMA%=","

[LET_STEP3_SEARCHNETWORK]
%STEPITEM%="%STEPITEM%%COMMA%`%MESSAGE%;STRING;MSM2090`"

[LET_STEP3_PRINTERCONNECT]
%STEPITEM%="%STEPITEM%%COMMA%%DETECT_STEPTITLE%"

[SET_DETECT_MESSAGES_SFPMFP]
%DETECT_STEPTITLE%="%STEPITEM%%COMMA%`%MESSAGE%;STRING;MSM2001`"
%DETECT_EXPLAIN%="%STEPITEM%%COMMA%`%MESSAGE%;STRING;MSM2002`"
%DETECT_NOTHINGHAPPEN%="%STEPITEM%%COMMA%`%MESSAGE%;STRING;MSM2003`"
%DETECT_SOMETHINGHAPPEN%="%STEPITEM%%COMMA%`%MESSAGE%;STRING;MSM2006`"
%FAILURESTEP%="%STEPITEM%%COMMA%`%MESSAGE%;STRING;MSM2001`"

[SET_DETECT_MESSAGES_SFS]
%DETECT_STEPTITLE%="%STEPITEM%%COMMA%`%MESSAGE%;STRING;MSM2031`"
%DETECT_EXPLAIN%="%STEPITEM%%COMMA%`%MESSAGE%;STRING;MSM2032`"
%DETECT_NOTHINGHAPPEN%="%STEPITEM%%COMMA%`%MESSAGE%;STRING;MSM2033`"
%DETECT_SOMETHINGHAPPEN%="%STEPITEM%%COMMA%`%MESSAGE%;STRING;MSM2034`"
%FAILURESTEP%="%STEPITEM%%COMMA%`%MESSAGE%;STRING;MSM2031`"

[LET_STEP3_DETECT_HEADALIGNMENT1]
%STEPITEM%="%STEPITEM%%COMMA%`%MESSAGE%;STRING;MSM2401`"

[LET_STEP3_DETECT_HEADALIGNMENT2]
%STEPITEM%="%STEPITEM%%COMMA%`%MESSAGE%;STRING;MSM2411`"

[LET_STEP3_COMPLETION]
%STEPITEM%="%STEPITEM%%COMMA%`%MESSAGE%;STRING;MSM1809`"

[IF_WSPT_INSTALL]
IFEQ=%PRINTERDRIVER.SELECT%,1
OR
IFEQ=%MPDRIVER.SELECT%,1
OR
IFEQ=%XPS.SELECT%,1

[SUB_WSPTLIST_INSTALL]
IF=WSPTLIST_EXIST
ELSE
  END
ENDIF

IF=IF_WSPT_INSTALL
ELSE
  END
ENDIF

CHECKIFCOPYWSPT=CHECK_TWO_FILES
LOG=WSPT_COPY IS %WSPT_COPY%

IF=IS_WSPT_COPY_NO
  END
ENDIF

FILECOPY=COPY_WSPT_FILE

IF=IS_FILECOPY_FAILED
  END
ENDIF
LET=REGIST_WSPT_PATH
IF=IS_ARCHITECTURE_X64
  LET=REGIST_WSPT_PATH_64
ENDIF
LOG=WSPT_COPY IS SUCCEEDED

[IS_WSPT_COPY_NO]
IF=%WSPT_COPY%,NO

[CHECK_TWO_FILES]
FILE_TO=%COMMON_APPDATA%\CanonIJWSpt\WSptList
FILE_FROM=%SRC%\WSptList\WSptList

[IS_FILECOPY_FAILED]
IFNE=%LPARAM%,0

[WSPTLIST_EXIST]
IFEXISTFILE=WSPTLIST_PATH

[WSPTLIST_PATH]
FILE=%SRC%\WsptList\WSptList

[COPY_WSPT_FILE]
SOURCE=%SRC%\WsptList\WSptList
DESTINATION="%COMMON_APPDATA%\CanonIJWSpt\WSptList"
CAPTION=FileCopy

[REGIST_WSPT_PATH]
@%INSTALLED_DEVICE_REG%;Wspt_Path@=SZ,"%COMMON_APPDATA%\CanonIJWSpt\WSptList"
[REGIST_WSPT_PATH_64]
@%INSTALLED_DEVICE_REG%;Wspt_Path;x64@=SZ,"%COMMON_APPDATA%\CanonIJWSpt\WSptList"

;---------------------------------
; Select LAN usage model Procedure
;---------------------------------

[LET_ITEM_NETWORKSETUP]
%ITEM%=`%MESSAGE%;STRING;MSM4014`

[IS_DO_NETWORKSETUP]
IFNE=%LANFLAG%,0
IFEQ=%PRINTERDRIVER.INSTALLED%,1
IF=%SELECT_METHOD%,LAN
OR
IFNE=%LANFLAG%,0
IFEQ=%MPDRIVER.INSTALLED%,1
IF=%SELECT_METHOD%,LAN

[NETWORKSETTING_CAUTION_MSG]
TEXT=`%MESSAGE%;STRING;MSM2081`
CAPTION=`%MESSAGE%;STRING;MSM0103`
BUTTON=OK
ICON=INFORMATION

;---------------------------------
; Detect Printer Procedure
;---------------------------------

[INSTALL_DETECTPRINTER_PROC]
INITIALIZE=INSTALL_DETECTPRINTER_ACTION
SCREEN=%SCREEN%\DETECT.SCI
BEGIN=DETECTPRINTER_BEGINACTION

HELP_EVENT=INSTALL_DETECTPRINTER_HELP_ACTION
CANCEL_EVENT=INSTALL_DETECTPRINTER_CANCEL_ACTION
DETECTPRINTER_EVENT=INSTALL_DETECTPRINTER_DETECT_ACTION
DETECTTIMEOUT_EVENT=INSTALL_DETECTPRINTER_TIMEOUT_ACTION
DETECTDEVICE_EVENT=INSTALL_DETECTDEVICE_ACTION
REBOOTREJECT_EVENT=REBOOTREJECT_ACTION
WAITMORE_EVENT=WAITMORE_ACTION

[WAITMORE_ACTION]
LOG=Maybe Plug and Play will take more time.Change Message to Wait more message.
LET=SET_WAITMOREMSG_TRUE
LET=LET_DETECTWARNINGFLAG_FALSE
LET=LET_DETECTDEVICEFLAG_FALSE
REDRAW=TEXT2_PAIN

[SET_WAITMOREMSG_TRUE]
%WAITMOREMSG%=1

[SET_WAITMOREMSG_FALSE]
%WAITMOREMSG%=0

[INSTALL_DETECTPRINTER_ACTION]
LOG=It is the beginning of INSTALL_DETECTPRINTER_ACTION
LET=LET_DETECTANIME_TRUE
REBOOTMODE=REBOOTMODE_REJECT
EJECTMODE=EJECTMODE_REJECT
IF=IS_NEED_DELECT_STEP
ELSE
  END=NEXT
ENDIF
SETWINDOWZPOS=1
LET=LET_HELPLANG
IF=IF_EXIST_HELP_MSETUPLANG
  LET=LET_HELPLANG_EN
ENDIF

LET=SET_WAITMOREMSG_FALSE

LET=LET_SAVE_INSTLANG

LET=LET_ITEM_PRINTERDRIVER
IF=IS_MFP
  LET=LET_ITEM_MPDRIVER
ENDIF
IF=IS_SFS
  LET=LET_ITEM_SCANGEAR
ENDIF

LET=LET_DETECTWARNINGFLAG_FALSE
LET=LET_DETECTDEVICEFLAG_FALSE
LET=LET_REDRAWPAIN
LOG=Start to detect devices.
TIMER=DETECT_TIMER

IF=IS_SFPFAX
  LET=LET_DETECTPRINTER_2K_SFP
ENDIF
IF=IS_MFP
  LET=LET_DETECTPRINTER_2K_MFP
ENDIF
IF=IS_SFS
  LET=LET_DETECT_SCANNER
ENDIF

IF=IS_ANIME_RTL
  LET=LET_ANIMATION_FILE_RTL
ELSE
  LET=LET_ANIMATION_FILE_NORMAL
ENDIF

SETWINDOWZPOS=1
END

[IS_ANIME_RTL]
IFEQ=%RTLREADING%,1
IFEXIST=%SRC%\RES\ANIME\RTL\USB.ANI

[DETECTPRINTER_BEGINACTION]
SETWINDOWZPOS=1
LET=MYPRINT_LOG_DETECT_START
END

[LET_DETECTPRINTER_2K_MFP]
%PRINTERSECTION%=INSTALL_MFP2K_%ARCHITECTURE%

[LET_DETECTPRINTER_2K_SFP]
%PRINTERSECTION%=INSTALL_SFP2K_%ARCHITECTURE%

[LET_DETECT_SCANNER]
%PRINTERSECTION%=INSTALL_SFS

[LET_ANIMATION_FILE_NORMAL]
%ANIMATION_FILE%=%SRC%\RES\ANIME\USB.ANI

[LET_ANIMATION_FILE_RTL]
%ANIMATION_FILE%=%SRC%\RES\ANIME\RTL\USB.ANI

[INSTALL_DETECTPRINTER_HELP_ACTION]
IF=IS_NOTEXIST_HELP
  END
ENDIF

OPEN=OPEN_DETECT_HELP
IF=IS_OPEN_FAIL
  MESSAGE=MSG_OPENFAIL
ENDIF
END

[IF_EXIST_HELP_MSETUPLANG]
IFNOTEXIST=%SRC%\egv\html\%HELPLANG%\help.htm

[LET_HELPLANG]
%HELPLANG%=%LANG%

[LET_HELPLANG_EN]
%HELPLANG%=English

[IS_NOTEXIST_HELP]
IFNOTEXIST=%SRC%\egv\html\%HELPLANG%\help.htm

[OPEN_DETECT_HELP]
FILE=%SRC%\egv\html\%HELPLANG%\help.htm

[INSTALL_DETECTPRINTER_CANCEL_ACTION]
IF=IS_CAPTURE_MODE
  END=NEXT
ENDIF
LET=LET_FORCEDEFAULT
LET=LET_FAILSTEP_DETECT_CANCEL
END=DETECT_FAILURE_PROC

[LET_FORCEDEFAULT]
@SOFTWARE\Canon\cnmbj\PrinterDriverInstaller\%PRINTERNAME%;ForceDefaultPrinter@=SZ,"1"

[LET_ITEM_PRINTERDRIVER]
%ITEM%=%PRINTERDRIVER.TEXT%

[INSTALL_DETECTPRINTER_TIMEOUT_ACTION]
LET=SET_WAITMOREMSG_FALSE
LET=LET_DETECTANIME_TRUE
REDRAW=DETECTEDBMP_PAIN
REDRAW=ANIMETION_PAIN
ANIMATION=TRUE
LET=LET_DETECTWARNINGFLAG_TRUE
LET=LET_DETECTDEVICEFLAG_FALSE
REDRAW=TEXT2_PAIN
END

[LET_DETECTWARNINGFLAG_TRUE]
%DETECTWARNINGFLAG%=1

[LET_DETECTWARNINGFLAG_FALSE]
%DETECTWARNINGFLAG%=0

[LET_DETECTANIME_TRUE]
%DETECTANIME%=TRUE

[LET_DETECTANIME_FALSE]
%DETECTANIME%=FALSE

[LET_DETECTDEVICEFLAG_TRUE]
%DETECTDEVICEFLAG%=1

[LET_DETECTDEVICEFLAG_FALSE]
%DETECTDEVICEFLAG%=0

[IS_DETECTDEVICEFLAG_FALSE]
IFEQ=%DETECTDEVICEFLAG%,0

[LET_REDRAWPAIN]
%DEVNODES_REDRAW_PAIN%=TEXT2_PAIN

[IS_NOT_PORTSELECTED]
IFNE=%LPARAM%,0

[INSTALL_DETECTPRINTER_DETECT_ACTION]
LOG=All devices were found.
LET=SET_WAITMOREMSG_FALSE
IF=IS_SFPFAX
  LET=LET_DRIVER_INSTALLED
ENDIF
IF=IS_MFP
  LET=LET_MPDRIVER_INSTALLED
  GOSUB=SUB_INSTALL_SCANUTILS
ENDIF
IF=IS_SFS
  LET=LET_SCANGEAR_INSTALLED
  GOSUB=SUB_INSTALL_SCANUTILS
ENDIF

LET=LOG_INSTALL_BY_PNP
END=NEXT

[INSTALL_DETECTDEVICE_ACTION]
LOG=Some devices were found.
ANIMATION=FALSE
LET=LET_DETECTWARNINGFLAG_FALSE
LET=LET_DETECTDEVICEFLAG_TRUE
LET=SET_WAITMOREMSG_FALSE
LET=LET_DETECTANIME_FALSE
REDRAW=%DEVNODES_REDRAW_PAIN%
REDRAW=ANIMETION_PAIN
REDRAW=DETECTEDBMP_PAIN
TIMER=DETECT_TIMER
END

[DETECT_TIMER]
TIMEOUT=%DETECTTIMEOUT%
EVENT=DETECTTIMEOUT_EVENT

[LET_SAVE_INSTLANG]
%SAVE_INSTLANG%=%INSTLANG%
%SAVE_REGION%=%REGION%

[LET_RESTORE_INSTLANG]
%INSTLANG%=%SAVE_INSTLANG%
%REGION%=%SAVE_REGION%

[LOG_INSTALL_BY_PNP]
@Software\Canon\MSETUPLOG;FLAG3@=DWORD,1

[IS_PRINTERDRIVER_INSTALLED]
IFNE=%PRINTERDRIVER.INSTALLED%,0

[IS_MPDRIVER_INSTALLED]
IFNE=%MPDRIVER.INSTALLED%,0

[IS_DRIVER_INSTALLED]
IFNE=%PRINTERDRIVER.INSTALLED%,0
OR
IFNE=%MPDRIVER.INSTALLED%,0

[SUB_INSTALL_SCANUTILS]
LET=LET_AHOGENGO
APPL=RUN_TWAIN_INSTALLER
IF=IS_SCANUTIL_NEED_REBOOT
  LET=LET_REBOOT_TRUE
ENDIF
IF=IS_SFS
  LET=LET_SCANUTIL_PARAM_SFS
ELSE
  LET=LET_SCANUTIL_PARAM_MFP
ENDIF

APPL=RUN_SCANUTIL_INSTALLER
IF=IS_SCANUTIL_NEED_REBOOT
  LET=LET_REBOOT_TRUE
ENDIF
END

[LET_SCANUTIL_PARAM_MFP]
%SCANUTILNAME%=Canon %DEVICEID%

[LET_SCANUTIL_PARAM_SFS]
%SCANUTILNAME%=%MFPID%

[RUN_SCANUTIL_INSTALLER]
FILE=%SRC%\DRIVER\SCNUTIL\ScanUtility\Setup.exe
WAIT=IS6
HIDE=FALSE
CANCEL=FALSE
CURRENTDIR=%SRC%\DRIVER\SCNUTIL\ScanUtility
OPTION='-NOUI -NOEULA -MSETUP -LANG:%AHOGENGO% -PNAME:"%SCANUTILNAME%" -NOSMEXUPDATE'

[LET_AHOGENGO]
%AHOGENGO%=`%INI%;%LANG%;AHOGENGO`

[RUN_TWAIN_INSTALLER]
FILE=%SRC%\DRIVER\SCNUTIL\Twain\Setup.exe
WAIT=IS6
HIDE=FALSE
CANCEL=FALSE
CURRENTDIR=%SRC%\DRIVER\SCNUTIL\Twain
OPTION='-VERSIONCHECK'

[IS_SCANUTIL_NEED_REBOOT]
IFEQ=%EXITCODE%,128

;---------------------------------
; SFP detect information
;---------------------------------
[INSTALL_SFP2K_x86]
DETECT=MESSAGE
DEVICE=DEVICE_SFP_INF_x86
PRINTERNAME=%PRINTERNAME%
PORTNAME=%PORTSELECT%

[INSTALL_SFP2K_x64]
DETECT=MESSAGE
DEVICE=DEVICE_SFP_INF_x64
PRINTERNAME=%PRINTERNAME%
PORTNAME=%PORTSELECT%

[DEVICE_SFP_INF_x86]
INF=%SRC%\Driver\Driver\%2KDRVID%3.INF
DEVICETYPE=PRINTER

[DEVICE_SFP_INF_x64]
INF=%SRC%\Driver\Driver\%2KDRVID%6.INF
DEVICETYPE=PRINTER

;---------------------------------
; MFP detect information
;---------------------------------
[INSTALL_MFP2K_x86]
DETECT=MESSAGE
DEVICE=SCAN_INF,FAX_INF_x86,PRN_INF_x86
PRINTERNAME=%PRINTERNAME%
FAXNAME=%FAXNAME%
PORTNAME=%PORTSELECT%

[INSTALL_MFP2K_x64]
DETECT=MESSAGE
DEVICE=SCAN_INF,FAX_INF_x64,PRN_INF_x64
PRINTERNAME=%PRINTERNAME%
FAXNAME=%FAXNAME%
PORTNAME=%PORTSELECT%

[PRN_INF_x86]
INF=%SRC%\Driver\Driver\%MFPID%P3.INF
DEVICETYPE=PRINTER
[PRN_INF_x64]
INF=%SRC%\Driver\Driver\%MFPID%P6.INF
DEVICETYPE=PRINTER

[SCAN_INF]
INF=%SRC%\Driver\Driver\%MFPID%SC.INF
DEVICETYPE=SCANNER

[FAX_INF_x86]
INF=%SRC%\Driver\Driver\%MFPID%FX3.INF
DEVICETYPE=FAX
[FAX_INF_x64]
INF=%SRC%\Driver\Driver\%MFPID%FX6.INF
DEVICETYPE=FAX

;---------------------------------
; SFS detect information
;---------------------------------
[INSTALL_SFS]
DETECT=MESSAGE
DEVICE=SFS_INF
PRINTERNAME=%PRINTERNAME%
FAXNAME=%FAXNAME%
PORTNAME=%PORTSELECT%

[SFS_INF]
INF=%SRC%\Driver\Driver\%SCANINFNAME%.INF
DEVICETYPE=SCANNER

;---------------------------------
; Install LAN Driver Procedure
;---------------------------------
[INSTALL_LAN_PROC]
INITIALIZE=INSTALL_LAN_ACTION
BEGIN=INSTALL_LAN_BEGINACTION

[INSTALL_LAN_ACTION]
LET=LET_DRIVER_SKIP_FALSE
REBOOTMODE=REBOOTMODE_REJECT
EJECTMODE=EJECTMODE_REJECT
SETWINDOWZPOS=1

IF=IS_DO_NETWORKSETUP
ELSE
  END=NEXT
ENDIF
LOG=Start to network setup.
LET=MYPRINT_LOG_LANSETUP_START

LET=LET_LAN_INFO

GOSUB=INSTALL_UTILITY_ACTION
END

[INSTALL_LAN_BEGINACTION]
SETWINDOWZPOS=1
SAVERERUN=RERUN_LAN
REBOOTMODE=REBOOTMODE_ACCEPT

LOG=START Network Setup
APPL=INSTALL_LAN

IF=IS_CAPTURE_MODE
  END=NEXT
ENDIF

LOG=..Network Setup's result is @%PARAM_REG%;APPLICATION_COMPLETED@/%EXITCODE%

IF=IS_RESULT_NETRWORKSETUP_BACK
  END=WELCOME_PROC
ENDIF

IF=IS_RESULT_APPLICATION_BEGIN
  LET=LET_REBOOT_FALSE
  LET=LET_REBOOTDRV_FALSE
  END=REBOOT_RESUME
ENDIF

REBOOTMODE=REBOOTMODE_REJECT
DELETERERUN=RERUN_LAN

IF=IS_RESULT_EMERGENCYREBOOT_1
  SETWINDOWZPOS=1
  MESSAGE=USBREBOOT_MSG
  LET=LET_REBOOT_FALSE
  LET=LET_REBOOTDRV_FALSE
  SAVERERUN=RERUN_THIS
  END=REBOOT_RESUME
ENDIF
IF=IS_RESULT_EMERGENCYREBOOT_2
  SETWINDOWZPOS=1
  LET=LANFAIL_SUCCESS
  MESSAGE=USBREBOOT_MSG
  LET=LET_REBOOT_FALSE
  LET=LET_REBOOTDRV_FALSE
  SAVERERUN=RERUN_NEXT
  END=REBOOT_RESUME
ENDIF

IF=IS_RESULT_APPINST_SUCCESS
  LET=LANFAIL_SUCCESS
  LOG=Network Setup finished successfully.
ELSE
  LET=LANFAIL_FAIL
  LOG=Network Setup failed..
  LET=LET_FAILURESTEP_SEARCHNETWORK
  LET=LET_FAILSTEP_LANSETUP_FAIL
  END=LAN_FAILURE_PROC
ENDIF
IF=IS_RESULT_REBOOT
  LET=LET_REBOOT_TRUE
ENDIF

SETWINDOWZPOS=1
END=NEXT

[LET_FAILURESTEP_SEARCHNETWORK]
%FAILURESTEP%=`%MESSAGE%;STRING;MSM2090`

[LANFAIL_SUCCESS]
%LANFAIL%=SUCCESS
%FRENDLYNAME%=@%PARAM_REG%;PRINTER_FRIENDLY_NAME@

[LANFAIL_FAIL]
%LANFAIL%=FAIL_%EXITCODE%

[IS_LANDRIVER_EXIST]
IFEXISTFILE=INSTALL_LAN

[LET_LAN_INFO]
%ITEM%=`%MESSAGE%;STRING;MSM4014`
%FAILURESTEP%=`%MESSAGE%;STRING;MSM1808`
%UTILITY.ENABLE%=1
%UTILITY.SELECT%=1
%UTILITY.WEIGHT%=3
%INSTALL_UTILITY%=INSTALL_LAN
%LET_UTILITY_INSTALLED%=LET_LAN_INSTALLED

[INSTALL_LAN]
FILE=%SRC%\DRIVER\DRVSETUP\SETUP.EXE
OPTION='%PARAM_REG% /L:N'
WAIT=IS6
HIDE=FALSE
PARAMETER=INITIAL_LAN_PARAM
CANCEL=FALSE

[LET_LAN_INSTALLED]
%NETWORKSETUP.INSTALLED%=1

[INITIAL_LAN_PARAM]
@%PARAM_REG%@=
@%PARAM_REG%;REBOOT@=DWORD,0
@%PARAM_REG%;APPLICATION_COMPLETED@=DWORD,0xFFFFFFFF
@%PARAM_REG%;CONNECTION_TIMEOUT@=DWORD,%DETECTTIMEOUT%
@%PARAM_REG%;EMERGENCY_REBOOT@=DWORD,0
@%PARAM_REG%;PRIMARY_LANGID@=DWORD,%INST_PRIMARY_LANGID%
@%PARAM_REG%;SUB_LANGID@=DWORD,%INST_SUB_LANGID%
@%PARAM_REG%;PRINTERDRIVERNAME@=SZ,%FRENDLYNAME%
@%PARAM_REG%;LAN_MANUALSETTING@=DWORD,3
@%PARAM_REG%;REBOOT_RUN@=DWORD,%REBOOT_RUN%
@%PARAM_REG%;SCANNERDRIVERNAME@=SZ,%SCANNERDRIVERNAME%
@%PARAM_REG%;FAXDRIVERNAME@=SZ,%FAXFRIENDLYNAME%
@%PARAM_REG%;RESIDENCE@=SZ,%RESIDENCE%
@%PARAM_REG%;DEVICENAME@=SZ,"Canon %PRODUCTNAME%"
@%PARAM_REG%;PRINTER_FRIENDLY_NAME@=SZ,""
@%PARAM_REG%;SCANNER_FRIENDLY_NAME@=SZ,""
@%PARAM_REG%;FAX_FRIENDLY_NAME@=SZ,""
@%PARAM_REG%;CONNECTTYPE@=SZ,%CONNECTTYPE%
@%PARAM_REG%;SEND_INFO_AGREE@=DWORD,1

[RERUN_LAN]
FILE=%MCDCHECK_DIR%\MCDCHECK.INI
BEGIN=THIS

;---------------------------------
; Install XPS Driver Install Procedure
;---------------------------------
[INSTALL_XPS_PROC]
BEGIN=INSTALL_XPS_ACTION

[INSTALL_XPS_ACTION]
LET=LET_ITEM_XPS
IF=IS_XPS_NOTINSTALL
  END=NEXT
ENDIF
IF=IS_CAPTURE_MODE
  LET=LET_XPS_INSTALLED
  END=NEXT
ENDIF

LET=MYPRINT_LOG_XPS_INSTALL_START
LOG=START XPS Drivier INSTALL
APPL=INSTALL_XPS
LOG=..XPS Drivier install result is @%PARAM_REG%;APPLICATION_COMPLETED@/%EXITCODE%

IF=IS_RESULT_REBOOT
  LOG=XPS Driver need REBOOT.
  LET=LET_REBOOTDRV_TRUE
ENDIF

IF=IS_RESULT_COREINSTALLER_INSTALLED
  LET=LET_XPS_INSTALLED
ENDIF

IF=IS_RESULT_EMERGENCYREBOOT_1
  LET=LET_REBOOTDRV_TRUE
ENDIF
IF=IS_RESULT_EMERGENCYREBOOT_2
  LET=LET_REBOOTDRV_TRUE
ENDIF

END=NEXT

[LET_XPS_INSTALLED]
%XPS.INSTALLED%=1
%XPS.ENABLE%=0

[LET_XPS_NOTINSTALLED]
%XPS.INSTALLED%=0
%XPS.ENABLE%=1

[IS_XPS_NOTINSTALLED]
IFEQ=%PRODUCTFLAG%,1
IFNE=@%PARAM_REG%;APPLICATION_COMPLETED@,1
IFNE=@%PARAM_REG%;APPLICATION_COMPLETED@,140
IFNE=@%PARAM_REG%;APPLICATION_COMPLETED@,170

[IS_XPS_NOTINSTALL]
IFEQ=%XPS.SELECT%,0

[INSTALL_XPS]
FILE=%SRC%\XPS\DRVSETUP\SETUP.EXE
OPTION=%PARAM_REG%
WAIT=IS6
HIDE=FALSE
PARAMETER=INITIAL_XPS_PARAM
CANCEL=FALSE

[INITIAL_XPS_PARAM]
@%PARAM_REG%;REBOOT@=DWORD,0
@%PARAM_REG%;EMERGENCY_REBOOT@=DWORD,0
@%PARAM_REG%;APPLICATION_COMPLETED@=DWORD,0xFFFFFFFF
@%PARAM_REG%;PRIMARY_LANGID@=DWORD,%INST_PRIMARY_LANGID%
@%PARAM_REG%;SUB_LANGID@=DWORD,%INST_SUB_LANGID%
@%PARAM_REG%;SCANNERDRIVERNAME@=SZ,""
@%PARAM_REG%;INFPATH@=MULTI_SZ,""
@%PARAM_REG%;RESIDENCE@=SZ,%RESIDENCE%
@%PARAM_REG%;DEVICENAME@=SZ,"Canon %PRODUCTNAME%"
@%PARAM_REG%;SEND_INFO_AGREE@=DWORD,1

[LET_ITEM_XPS]
%ITEM%=%XPS.TEXT%

;---------------------------------
; Head Alignment Procedure
;---------------------------------

[HEADALIGNMENT_PROC]
INITIALIZE=HEADALIGNMENT_ACTION
SCREEN=%SCREEN%\HEADALIGNMENT.SCI
BEGIN=HEADALIGNMENT_BEGINACTION

NEXT_EVENT=HEADALIGNMENT_NEXT_EVENT
REBOOTREJECT_EVENT=REBOOTREJECT_ACTION

[HEADALIGNMENT_ACTION]
REBOOTMODE=REBOOTMODE_REJECT
EJECTMODE=EJECTMODE_REJECT

IF=IS_HEADALIGNMENT1_SHOW
  END
ELSE
  END=NEXT
ENDIF
END

[HEADALIGNMENT_BEGINACTION]
SETWINDOWZPOS=1
END

[HEADALIGNMENT_NEXT_EVENT]
END=NEXT

[IS_HEADALIGNMENT1_SHOW]
IFNE=%PRINTERDRIVER.INSTALLED%,0
IFEQ=%HEADALIGNMENTFLAG%,1
OR
IFNE=%MPDRIVER.INSTALLED%,0
IFEQ=%HEADALIGNMENTFLAG%,1

;---------------------------------
; Head Alignment 2 Procedure
; This screen can execute PHA.
;---------------------------------

[HEADALIGNMENT2_PROC]
INITIALIZE=HEADALIGNMENT2_ACTION
SCREEN=%SCREEN%\HEADALIGNMENT2.SCI
BEGIN=HEADALIGNMENT2_CHECKREBOOT

NEXT_EVENT=HEADALIGNMENT2_NEXT_EVENT
REBOOTREJECT_EVENT=REBOOTREJECT_ACTION
EXEC_EVENT=HEADALIGNMENT2_EXEC_EVENT

[HEADALIGNMENT2_ACTION]
REBOOTMODE=REBOOTMODE_REJECT
EJECTMODE=EJECTMODE_REJECT

IF=IS_HEADALIGNMENT23_SHOW
ELSE
  END=NEXT
ENDIF

IF=IS_HEADALIGNMENT3
  LET=SET_PARAM_FOR_HEADALIGNMENT3
ENDIF
IF=IS_EXECBTN_ENABLE_TRUE
  LET=SET_PARAM_FOR_HEADALIGNMENT2
ELSE
  LET=SET_PARAM_FOR_HEADALIGNMENT2_EXECBTNDISABLE
ENDIF

END

[HEADALIGNMENT2_NEXT_EVENT]
SETWINDOWZPOS=1
END=NEXT

[HEADALIGNMENT2_EXEC_EVENT]
LET=SET_EXECBTN_ENABLE_FALSE
END=WAITPHA_PROC

[SET_EXECBTN_ENABLE_FALSE]
%EXECBTN_ENABLE%=0

[IS_EXECBTN_ENABLE_TRUE]
IFEQ=%EXECBTN_ENABLE%,1
IFEQ=%HEADALIGNMENTFLAG%,2

[IS_HEADALIGNMENT3]
IFEQ=%HEADALIGNMENTFLAG%,3

[SET_PARAM_FOR_HEADALIGNMENT2]
%PHA_TITLE%=`%MESSAGE%;STRING;MSM2411`
%PHA_EXPLAINATION%=`%MESSAGE%;STRING;MSM2412`
%PHA_BITMAP%=head.bmp
%NEXT_FOCUS%=0
%EXEC_FOCUS%=1

[SET_PARAM_FOR_HEADALIGNMENT2_EXECBTNDISABLE]
%PHA_TITLE%=`%MESSAGE%;STRING;MSM2411`
%PHA_EXPLAINATION%=`%MESSAGE%;STRING;MSM2412`
%PHA_BITMAP%=head.bmp
%NEXT_FOCUS%=1
%EXEC_FOCUS%=0

[SET_PARAM_FOR_HEADALIGNMENT3]
%PHA_TITLE%=`%MESSAGE%;STRING;MSM2401`
%PHA_EXPLAINATION%=`%MESSAGE%;STRING;MSM2414`
%PHA_BITMAP%=HeadFront.bmp
%NEXT_FOCUS%=1
%EXEC_FOCUS%=0

[IS_HEADALIGNMENT2_SHOW]
IFNE=%PRINTERDRIVER.INSTALLED%,0
IFEQ=%HEADALIGNMENTFLAG%,2
OR
IFNE=%MPDRIVER.INSTALLED%,0
IFEQ=%HEADALIGNMENTFLAG%,2

[IS_HEADALIGNMENT23_SHOW]
IFNE=%PRINTERDRIVER.INSTALLED%,0
IFEQ=%HEADALIGNMENTFLAG%,2
OR
IFNE=%MPDRIVER.INSTALLED%,0
IFEQ=%HEADALIGNMENTFLAG%,2
OR
IFNE=%PRINTERDRIVER.INSTALLED%,0
IFEQ=%HEADALIGNMENTFLAG%,3
OR
IFNE=%MPDRIVER.INSTALLED%,0
IFEQ=%HEADALIGNMENTFLAG%,3

[IS_HEADALIGNMENT3_SHOW]
IFNE=%PRINTERDRIVER.INSTALLED%,0
IFEQ=%HEADALIGNMENTFLAG%,3
OR
IFNE=%MPDRIVER.INSTALLED%,0
IFEQ=%HEADALIGNMENTFLAG%,3

[HEADALIGNMENT2_CHECKREBOOT]
SETWINDOWZPOS=1
IF=IS_REBOOTDRVNEED
  MESSAGE=USBREBOOT_MSG
  LET=LET_REBOOT_FALSE
  LET=LET_REBOOTDRV_FALSE
  SAVERERUN=RERUN_HEADALIGNMENT2
  END=REBOOT_RESUME
ENDIF
END

[RERUN_HEADALIGNMENT2]
FILE=%MCDCHECK_DIR%\MCDCHECK.INI
BEGIN=THIS

;---------------------------------
; Waiting HEADALIGNMENT Procedure
;---------------------------------

[WAITPHA_PROC]
SCREEN=%SCREEN%\DUMMY.SCI
BEGIN=WAITPHA_ACTION

[WAITPHA_ACTION]
SETWINDOWZPOS=1
APPL=EXECUTE_PHA_%ARCHITECTURE%
END=HEADALIGNMENT2_PROC

[EXECUTE_PHA_x86]
FILE=%SRC%\RES\CMS_LIB\DATA\PHA32.exe
OPTION='"%FRENDLYNAME%" 104'
WAIT=IS6
HIDE=TRUE
CANCEL=FALSE

[EXECUTE_PHA_x64]
FILE=%SRC%\RES\CMS_LIB\DATA\PHA64.exe
OPTION='"%FRENDLYNAME%" 104'
WAIT=IS6
HIDE=TRUE
CANCEL=FALSE

;---------------------------------
; Result Procedure
;---------------------------------
[INSTCOMPLETE_PROC]
INITIALIZE=INSTCOMPLETE_PROC_ACTION
SCREEN=%SCREEN%\InstComplete.SCI
NEXT_EVENT=INSTCOMPLETE_OK_ACTION
REBOOTREJECT_EVENT=REBOOTREJECT_ACTION
BEGIN=INSTCOMPLETE_BEGINACTION

[INSTCOMPLETE_PROC_ACTION]
SETWINDOWZPOS=1
REBOOTMODE=REBOOTMODE_REJECT
EJECTMODE=EJECTMODE_REJECT
IF=IS_COMPLETIONSTEP_NEED
ELSE
  END=NEXT
ENDIF
IF=IS_STEPITEM_NULL
  LET=LET_STEPSUBITEM_NULL
ELSE
  LET=LET_STEPSUBITEM_INSTCOMPLETE
ENDIF

END

[IS_STEPITEM_NULL]
IFEQ=%STEPITEM%,""

[LET_STEPSUBITEM_INSTCOMPLETE]
%STEPSUBITEM%=""

[LET_STEPSUBITEM_NULL]
%STEPSUBITEM%=`%MESSAGE%;STRING;MSM1809`

[INSTCOMPLETE_BEGINACTION]
SETWINDOWZPOS=1
IF=IS_REBOOTNEED_INSTCOMPLETE
  LOG=REBOOT occcered in INSTCOMPLETE.
  MESSAGE=USBREBOOT_MSG
  LET=LET_REBOOT_FALSE
  LET=LET_REBOOTDRV_FALSE
  SAVERERUN=RERUN_NEXT
  END=REBOOT_RESUME
ENDIF
END

[IS_REBOOTNEED_INSTCOMPLETE]
IFEQ=%PRODUCTFLAG%,2
IFEQ=%REBOOT%,1
OR
IFEQ=%PRODUCTFLAG%,2
IFEQ=%REBOOTDRV%,1

[INSTCOMPLETE_OK_ACTION]
END=NEXT

[IS_COMPLETIONSTEP_NEED]
IFEQ=%PRINTERDRIVER.SELECT%,1
OR
IFEQ=%MPDRIVER.SELECT%,1
OR
IFEQ=%SCANGEAR.SELECT%,1

;---------------------------------
; Install Web Registration Module Procedure
;---------------------------------
[BEFORE_WREG_PROC]
INITIALIZE=INIT_BEFORE_WREG_PROC
SCREEN=%SCREEN%\DUMMY.SCI

[INIT_BEFORE_WREG_PROC]
REBOOTMODE=REBOOTMODE_REJECT
EJECTMODE=EJECTMODE_REJECT
LOG=MYPRINT_LOG_WEBREG_INSTALL

IF=IS_WEBREG_NEED
  LOG=WEBREG IS NEEDED
ELSE
  LOG=WEBREG IS NOT NEEDED
  END=NEXT
ENDIF
DECRYPT=DECRYPT_WEBREG_URL
LET=LET_LANGID
LET=ADD_PARAM_2URAL_URL
LET=ADD_PARAM_2WEBREG_URL
URLENCODE=URLENCODE_URAL_URL
URLENCODE=URLENCODE_WEBREG_URL
DECRYPT=REDECRYPT_URAL_URL
DECRYPT=REDECRYPT_REDIRECT_URL

IF=IF_NOT_URAL
  LET=SET_URALURL_NULL
ENDIF

LOG=START USER_REGISTRATION INSTALL
APPL=INSTALL_USER_REGISTRATION

IF=IS_INSTALL_USER_REGISTRATION_SUCCESS
  FILECOPY=COPY_SBOXINI
  WRITEPPSTRING=FIX_SBOXINI_NAME
  WRITEPPSTRING=FIX_SBOXINI_APPEXEFILE
  WRITEPPSTRING=FIX_SBOXINI_APPEXEPATH
  WRITEPPSTRING=FIX_SBOXINI_OPTION
  LET=LET_INSTALL_WEBREG_SUCCESS
  LOG=USER_REGISTRATION installed successfully
ELSE
  LOG=USER_REGISTRATION is not installed.
ENDIF

IF=IS_INSTALL_USER_REGISTRATION_REBOOT
  LOG=USER_REGISTRATION need REBOOT.
  LET=LET_REBOOT_TRUE
ENDIF

GET_HKCU=GET_REG_CIGLOGIN
IF=IF_REGISTREDUSER
  LET=LET_REGISTEREDUSER_TRUE
ELSE
  LET=LET_REGISTEREDUSER_FALSE
ENDIF

LET=LET_WEBREGMSG_DEFAULT
IF=IS_USCD
  LET=LET_WEBREGITEM_USA
ENDIF

IF=IS_WEBREG_VIA_REDIRECT_FORSETMSG
ELSE
  GOSUB=SUB_SETWEBREGMSG_AS_URAL
ENDIF

END=NEXT

[IF_NOT_URAL]
IFEQ=%PRODUCTFLAG%,2
OR
IF=%CIGTARGET%,FALSE

[SET_URALURL_NULL]
%URAL_URL%=""

[IS_INSTALL_WEBREG_SUCCESS]
IFEQ=%WEBREG.INSTALLED%,1

[LET_INSTALL_WEBREG_SUCCESS]
%WEBREG.INSTALLED%=1

[LET_WEBREGITEM_USA]
%WEBREGBMP%=%BITMAP%\ereg.bmp
%WEBREGPR%=`%MESSAGE%;STRING;MSM2485JU`

[SUB_SETWEBREGMSG_AS_URAL]
IF=IS_PRODUCTREG
  LET=LET_WEBREGMSG_PRODUCTREG
ENDIF

LET=LET_WEBREGMSG_EXPLAIN1_URAL


[IS_PRODUCTREG]
IFEQ=%REGISTEREDUSER%,1

[LET_WEBREGMSG_DEFAULT]
%WEBREGTITLE%=`%MESSAGE%;STRING;MSM2464`
%WEBREGSTEPTITLE%=`%MESSAGE%;STRING;MSM2451`
%WEBREGPR%=`%MESSAGE%;STRING;MSM2475`
%WEBREGEXPLAIN1%=`%MESSAGE%;STRING;MSM2486_Mac`
%WEBREGEXPLAIN2%=`%MESSAGE%;STRING;MSM2487`
%WEBREGBMP%=%BITMAP%\UserRegist.bmp

[LET_WEBREGMSG_PRODUCTREG]
%WEBREGTITLE%=`%MESSAGE%;STRING;MSM2484`
%WEBREGSTEPTITLE%=`%MESSAGE%;STRING;MSM2484`
%WEBREGPR%=`%MESSAGE%;STRING;MSM2485M`

[LET_WEBREGMSG_EXPLAIN1_URAL]
%WEBREGEXPLAIN1%=`%MESSAGE%;STRING;MSM2486_Mac2`

[GET_REG_CIGLOGIN]
FILE=SOFTWARE\Canon_Inc_IC\CANON iMAGE GATEWAY Shared\Settings
KEY=CiGLoginName
RETURN=%CIGLOGINNAME%

[IF_REGISTREDUSER]
IFNOT=%CIGLOGINNAME%,""

[LET_REGISTEREDUSER_TRUE]
%REGISTEREDUSER%=1

[LET_REGISTEREDUSER_FALSE]
%REGISTEREDUSER%=0

[ADD_PARAM_2URAL_URL]
%URAL_URL%=%WEBREG_URL%FNC=CAPI
%URAL_URL%=%URAL_URL%&CDN=%CDTYPE%
%URAL_URL%=%URAL_URL%&RES=%RESIDENCE%
%URAL_URL%=%URAL_URL%&CAT=`%INI%;PRODUCTTYPE_LIST;%PRODUCTFLAG%`

[ADD_PARAM_2WEBREG_URL]
%WEBREG_URL%=%WEBREG_URL%FNC=USER_REG
%WEBREG_URL%=%WEBREG_URL%&CDN=%CDTYPE%
%WEBREG_URL%=%WEBREG_URL%&RES=%RESIDENCE%
%WEBREG_URL%=%WEBREG_URL%&CAT=`%INI%;PRODUCTTYPE_LIST;%PRODUCTFLAG%`
%WEBREG_URL%=%WEBREG_URL%&DEV=%DEVICEID%

[URLENCODE_URAL_URL]
%URAL_URL%=%URAL_URL%

[URLENCODE_WEBREG_URL]
%WEBREG_URL%=%WEBREG_URL%

[DECRYPT_WEBREG_URL]
%WEBREG_URL%=%WEBREG_URL_BASE%

[REDECRYPT_URAL_URL]
%URAL_URL%=%URAL_URL%

[REDECRYPT_REDIRECT_URL]
%URL4MODULE%=%WEBREG_URL%

[COPY_SBOXINI]
SOURCE=%SRC%\RES\CMS_LIB\DATA\smenu.ini
DESTINATION="%PROGRAMFILES%\canon\Solution Menu EX\UserRegistration\%DEVICEID%.ini"
CAPTION=FileCopy

[FIX_SBOXINI_NAME]
SOURCE="%PROGRAMFILES%\canon\Solution Menu EX\UserRegistration\%DEVICEID%.ini"
SECTION=UserRegistration
KEY=NAME
VALUE=Canon %PRODUCTNAME%

[FIX_SBOXINI_APPEXEFILE]
SOURCE="%PROGRAMFILES%\canon\Solution Menu EX\UserRegistration\%DEVICEID%.ini"
SECTION=UserRegistration
KEY=APPEXEFILE
VALUE=IJEREG.exe

[FIX_SBOXINI_APPEXEPATH]
SOURCE="%PROGRAMFILES%\canon\Solution Menu EX\UserRegistration\%DEVICEID%.ini"
SECTION=UserRegistration
KEY=APPEXEPATH
VALUE="%PROGRAMFILES%\canon\IJEREG\%PRODUCTNAME%\IJEREG.exe"

[FIX_SBOXINI_OPTION]
SOURCE="%PROGRAMFILES%\canon\Solution Menu EX\UserRegistration\%DEVICEID%.ini"
SECTION=UserRegistration
KEY=OPTION
VALUE=-SMEX

[INSTALL_USER_REGISTRATION]
FILE=%SRC%\RES\CMS_LIB\DATA\WEBREG\SETUP.EXE
OPTION=-L %PRIMARY_LANGID_TEMP% -l %SUB_LANGID_TEMP% -U %URL4MODULE% -P "%PRODUCTNAME%" -R %RTLREADING% -X "WEBREG_%DEVICEID%_%CDTYPE%" -Y "SOFTWARE\Canon\IJPLM" -Z "LIBRARY" -C "%URAL_URL%" -D "%DEVICEID%" -T "%CDTYPE%" -A "%SELECTEDCOUNTRY%" -G "%GDIDRVNAME%"
WAIT=IS6
HIDE=FALSE
CANCEL=FALSE

[LET_LANGID]
%PRIMARY_LANGID_TEMP%=`%INI%;%LANG%;LANGID`
%SUB_LANGID_TEMP%=`%INI%;%LANG%;LANGSUBID`

[IS_INSTALL_USER_REGISTRATION_SUCCESS]
IFEQ=%EXITCODE%,0

[IS_INSTALL_USER_REGISTRATION_REBOOT]
IFEQ=%EXITCODE%,128


;---------------------------------
; Web Registration Procedure
;---------------------------------
[WEBREG_PROC]
INITIALIZE=WEBREG_PROC_ACTION
SCREEN=%SCREEN%\USERREGIST.SCI
NEXT_EVENT=WEBREG_NEXT_EVENT
EXEC_EVENT=WEBREG_EXEC_EVENT
BEGIN=WEBREG_BEGINACTION

[WEBREG_PROC_ACTION]
REBOOTMODE=REBOOTMODE_REJECT
EJECTMODE=EJECTMODE_REJECT
LET=LET_STEPITEM_NONE
LET=LET_COMMA_NULL
IF=IS_WEBREG_NEED
  LET=LET_STEP4_WEBREG
  LET=LET_COMMA_COMMA
ENDIF
IF=IS_IJPLM
  LET=LET_STEP4_IJPLM
  LET=LET_COMMA_COMMA
ENDIF
IF=IS_TESTPRINT
  LET=LET_STEP4_TESTPRINT
  LET=LET_COMMA_COMMA
ENDIF

IF=IS_WEBREG_NEED
ELSE
  END=NEXT
ENDIF
IF=IS_DRVONLY
  END=NEXT
ENDIF

LET=MYPRINT_LOG_WEBREG_SCREEN
END

[LET_STEP4_WEBREG]
%STEPITEM%="%STEPITEM%%COMMA%%WEBREGSTEPTITLE%"

[LET_STEP4_IJPLM]
%STEPITEM%="%STEPITEM%%COMMA%`%MESSAGE%;STRING;MSM2851`"

[LET_STEP4_TESTPRINT]
%STEPITEM%="%STEPITEM%%COMMA%`%MESSAGE%;STRING;MSM2901`"

[WEBREG_BEGINACTION]
SETWINDOWZPOS=1
IF=IS_REBOOTNEED_WEBREG
  LOG=REBOOT occcered in WEBREG.
  MESSAGE=WEBREG_REBOOT
  LET=LET_REBOOT_FALSE
  LET=LET_REBOOTDRV_FALSE
  SAVERERUN=RERUN_WEBREG
  END=REBOOT_RESUME
ENDIF
END

[RERUN_WEBREG]
FILE=%MCDCHECK_DIR%\MCDCHECK.INI
BEGIN=WEBREG_PROC

[WEBREG_REBOOT]
TEXT=`%MESSAGE%;STRING;MSW1`
CAPTION=`%MESSAGE%;STRING;MSM0103`
ICON=INFORMATION
BUTTON=OK

[IS_REBOOTNEED_WEBREG]
IFNE=%PRODUCTFLAG%,2
IFEQ=%REBOOT%,1
OR
IFNE=%PRODUCTFLAG%,2
IFEQ=%REBOOTDRV%,1

[WEBREG_NEXT_EVENT]
LET=SET_UREG_NONE
LET=MYPRINT_LOG_WEBREG_CANCEL
LET=GET_UREG_CURRENT
LOG=UREG_CURRENT is %UREG_CURRENT%
IF=IF_UREG_CURRENT_TRUE
ELSE
  LET=LET_SAVE_DATA_4SMEX_UREG_FALSE
ENDIF
END=NEXT

[WEBREG_EXEC_EVENT]
LET=MYPRINT_LOG_WEBREG_EXEC
LET=SET_WEBREG_EXECUTE
LET=LET_SAVE_DATA_4SMEX_UREG_TRUE
LOADPROXY_INFO=1
END=NEXT

[SET_WEBREG_EXECUTE]
%WEBREG_EXECUTE%=1

[SET_WEBREG_NOT_EXECUTE]
%WEBREG_EXECUTE%=0

[IF_WEBREG_EXECUTE]
IFEQ=%WEBREG_EXECUTE%,1

[IS_WEBREG_NEED]
IFEQ=%PRINTERDRIVER.SELECT%,1
IFNOT=%WEBREG_URL_BASE%,NULL
IFEQ=%WEBREGFLAG%,1
OR
IFEQ=%MPDRIVER.SELECT%,1
IFNOT=%WEBREG_URL_BASE%,NULL
IFEQ=%WEBREGFLAG%,1
OR
IFEQ=%SCANGEAR.SELECT%,1
IFNOT=%WEBREG_URL_BASE%,NULL
IFEQ=%WEBREGFLAG%,1

[IS_WEBREG_VIA_REDIRECT]
IFEQ=%WEBREG_EXECUTE%,1
IFEQ=%WEBREG.INSTALLED%,0
OR
IFEQ=%WEBREG_EXECUTE%,1
IF=%CIGTARGET%,FALSE
OR
IFEQ=%WEBREG_EXECUTE%,1
IFEQ=%SCANGEAR.SELECT%,1

[IS_WEBREG_VIA_REDIRECT_FORSETMSG]
IFEQ=%WEBREG.INSTALLED%,0
OR
IF=%CIGTARGET%,FALSE
OR
IFEQ=%SCANGEAR.SELECT%,1

[IS_WEBREG_VIA_CCL]
IFEQ=%WEBREG_EXECUTE%,1
IFEQ=%WEBREG.INSTALLED%,1
IF=%CIGTARGET%,TRUE
IFNE=%SCANGEAR.SELECT%,1

;---------------------------------
; LogManager Screen Procedure
;---------------------------------

[IJPLM_PROC]
INITIALIZE=IJPLM_PROC_ACTION
SCREEN=%SCREEN%\EXSURVEY.SCI
NEXT_EVENT=IJPLM_NEXT_EVENT
EXEC_EVENT=IJPLM_EXEC_EVENT
DETAIL_EVENT=IJPLM_DETAIL_EVENT
BEGIN=IJPLM_BEGIN_ACTION

[IJPLM_PROC_ACTION]
REBOOTMODE=REBOOTMODE_REJECT
EJECTMODE=EJECTMODE_REJECT
LET=LET_IJPLM_EXEFLAG_ZERO
IF=IS_IJPLM
ELSE
  END=NEXT
ENDIF
IF=IS_DRVONLY
  END=NEXT
ENDIF

LET=LET_IJPLM_TEXT_NORMAL
IF=IS_COUNTRY_CHINA
  LET=LET_IJPLM_TEXT_CHINA
ENDIF
END

[LET_IJPLM_TEXT_NORMAL]
%IJPLM_TEXT1%=`%MESSAGE%;STRING;MSM2870`
%EXS_TXT_PATH%=%SRC%\RES\Message\%LANG%\MSM2872.txt

[LET_IJPLM_TEXT_CHINA]
%IJPLM_TEXT1%=`%MESSAGE%;STRING;MSM2871`
%EXS_TXT_PATH%=%SRC%\RES\Message\%LANG%\MSM2872C.txt

[IJPLM_BEGIN_ACTION]
IF=IS_WEBREG_VIA_REDIRECT
  LOG=User Registration via Redirect
  GOSUB=SUB_WEBREG_VIA_REDIRECT
  LET=SET_WEBREG_NOT_EXECUTE
ENDIF
IF=IS_WEBREG_VIA_CCL
  LET=SET_RETURN_PROC_IJPLM
  END=CONNECTING_WEBREG_PROC
ENDIF
REMOVEALLMESSAGE=TRUE
END

[IJPLM_EXEC_EVENT]
LET=LET_IJPLM_EXEFLAG_AGREE
END=NEXT

[IJPLM_NEXT_EVENT]
LET=LET_IJPLM_EXEFLAG_DISAGREE
END=NEXT

[LET_IJPLM_EXEFLAG_ZERO]
%IJPLM_EXEFLAG%=0

[IS_IJPLM_EXEFLAG_NOEXEC]
IFEQ=%IJPLM_EXEFLAG%,0

[LET_IJPLM_EXEFLAG_AGREE]
%IJPLM_EXEFLAG%=1

[IS_IJPLM_EXEFLAG_AGREE]
IFEQ=%IJPLM_EXEFLAG%,1

[LET_IJPLM_EXEFLAG_DISAGREE]
%IJPLM_EXEFLAG%=2

[IS_IJPLM_EXEFLAG_DISAGREE]
IFEQ=%IJPLM_EXEFLAG%,2

[IJPLM_DETAIL_EVENT]
IF=IS_COUNTRY_CHINA
  MESSAGE=MSG_IJPLM_CHINA
ELSE
  MESSAGE=MSG_IJPLM
ENDIF

[MSG_IJPLM]
TEXT=`%MESSAGE%;STRING;MSM2862`
CAPTION=`%MESSAGE%;STRING;MSM2851`
BUTTON=OK
ICON=

[MSG_IJPLM_CHINA]
TEXT=`%MESSAGE%;STRING;MSM2864`
CAPTION=`%MESSAGE%;STRING;MSM2851`
BUTTON=OKHELP
ICON=

[IS_IJPLM]
IFEQ=%PRINTERDRIVER.SELECT%,1
OR
IFEQ=%MPDRIVER.SELECT%,1
OR
IFEQ=%SCANGEAR.SELECT%,1

;---------------------------------
; LogManager Execute Procedure
;---------------------------------
[IJPLM_PROC2]
SCREEN=%SCREEN%\DUMMY.SCI
BEGIN=IJPLM_ACTION2

[IJPLM_ACTION2]
REBOOTMODE=REBOOTMODE_REJECT
EJECTMODE=EJECTMODE_REJECT

IF=IS_IJPLM_EXEFLAG_NOEXEC
  END=NEXT
ENDIF
IF=IS_IJPLM_EXEFLAG_AGREE
  APPL=CALL_IJPLM_AGREE
ENDIF
IF=IS_IJPLM_EXEFLAG_DISAGREE
  APPL=CALL_IJPLM_DISAGREE
ENDIF

LET=LET_REGREBOOT_FALSE
IF=IS_RESULT_REBOOT
    LOG=LOG Manager need reboot.
    LET=LET_REBOOT_TRUE
ENDIF

END=NEXT

[CALL_IJPLM_AGREE]
FILE=%SRC%\IJPLM\SETUP.EXE
WAIT=IS6
HIDE=TRUE
CANCEL=FALSE
OPTION=%PARAM_REG% -A
PARAMETER=INITIAL_APPLICATION_PARAM

[CALL_IJPLM_DISAGREE]
FILE=%SRC%\IJPLM\SETUP.EXE
WAIT=IS6
HIDE=TRUE
CANCEL=FALSE
OPTION=%PARAM_REG% -D
PARAMETER=INITIAL_APPLICATION_PARAM

;---------------------------------
; TestPrint Procedure
;---------------------------------
[TESTPRINT_PROC]
INITIALIZE=TESTPRINT_ACTION
SCREEN=%SCREEN%\TEST_PRINT.SCI
NEXT_EVENT=TESTPRINT_NEXT_EVENT
EXEC_EVENT=TESTPRINT_EXEC_EVENT
BEGIN=TESTPRINT_BEGINACTION

[TESTPRINT_ACTION]
LOG=TESTFLG is %TESTPRINTFLG%
IF=IS_TESTPRINTMETHOD
  END=NEXT
ENDIF

IF=IS_TESTPRINT
ELSE
  END=NEXT
ENDIF
LET=GET_EGV_PATH
END

[IS_TESTPRINTMETHOD]
IFEQ=%TESTPRINTFLG%,0

[IS_TESTPRINT]
IFEQ=%PRINTERDRIVER.SELECT%,1
IFEQ=%EGV.INSTALLED%,1
IFEQ=%TESTPRINTFLG%,1
OR
IFEQ=%MPDRIVER.SELECT%,1
IFEQ=%EGV.INSTALLED%,1
IFEQ=%TESTPRINTFLG%,1
OR
IFEQ=%PRINTERDRIVER.SELECT%,1
IFEQ=%EGV.SELECT%,1
IFNE=`%INI%;MSETUP;CAPTUREMODE`,0
IFEQ=%TESTPRINTFLG%,1
OR
IFEQ=%MPDRIVER.SELECT%,1
IFEQ=%EGV.SELECT%,1
IFNE=`%INI%;MSETUP;CAPTUREMODE`,0
IFEQ=%TESTPRINTFLG%,1

[TESTPRINT_BEGINACTION]
SETWINDOWZPOS=1
END

[TESTPRINT_NEXT_EVENT]
END=NEXT

[TESTPRINT_EXEC_EVENT]
STARTWAITDLG=2
OPEN=OPEN_TESTPRIN
PAUSE=5000
STARTWAITDLG=0
END

[OPEN_TESTPRIN]
FILE=%EGV_EXEPATH%
OPTION='"%EGV_INFOPATH%" %EGV_P_TESTPRINT% /i "%FRENDLYNAME%"'

[GET_EGV_PATH]
%EGV_EXEPATH%="@SOFTWARE\CANON\Easy Guide Viewer\%PRINTERNAME%;APP_PATH@"
%EGV_INFOPATH%="@SOFTWARE\CANON\Easy Guide Viewer\%PRINTERNAME%;Info_PATH@"
%EGV_P_TESTPRINT%="@SOFTWARE\CANON\Easy Guide Viewer\%PRINTERNAME%;MSETUP_TESTPRINT@"

;---------------------------------
; END Procedure
;---------------------------------

[END_PROC]
INITIALIZE=END_PROC_ACTION
SCREEN=%SCREEN%\SFP_END.SCI
BEGIN=END_PROC_BEGINACTION
REBOOTCHECK_EVENT=END_REBOOTCHECK_ACTION
EXIT_EVENT=END_EXIT_ACTION
REBOOT_EVENT=END_REBOOT_ACTION
REBOOTREJECT_EVENT=REBOOTREJECT_ACTION

[END_PROC_ACTION]
LET=MYPRINT_LOG_COMPLETEALL
ITEMINFO_INSTALLED=%ITEMSECTION%
SAVE_IJPLMLOG=IJPLMLOG_FINISH
IF=IS_SFS
  LET=LET_MSETUP_RUNONCE
ENDIF

REBOOTMODE=REBOOTMODE_REJECT
EJECTMODE=EJECTMODE_REJECT

LET=LET_SET_SCANUTIL_PATH
IF=IS_NETSCANUTIL_INSTALL
  OPEN=INSTALL_NETSCANUTIL
ENDIF

LET=LET_SET_NS_SELECTOR_PATH
LOG=NSS is %NS_SELECTOR_PATH%
IF=IS_NS_SELECTOR
  OPEN=INSTALL_NS_SELECTOR
ENDIF

DLLARBITRATE
RMDIR=%PROGRAMFILES%\Canon
IF=IS_REBOOTDRVNEED
  LET=LET_REBOOT_TRUE
ENDIF
LET=INIT_REBOOTFLAG

END

[END_PROC_BEGINACTION]
IF=IS_WEBREG_VIA_REDIRECT
  LOG=User Registration via Redirect
  GOSUB=SUB_WEBREG_VIA_REDIRECT
  LET=SET_WEBREG_NOT_EXECUTE
ENDIF
IF=IS_WEBREG_VIA_CCL
  LET=SET_RETURN_PROC_END
  END=CONNECTING_WEBREG_PROC
ENDIF
REMOVEALLMESSAGE=TRUE
END

[IS_SHOW_USB_MSG_FORSFS]
IFEQ=%SCANGEAR.SELECT%,1
IFNE=%REBOOT%,1
IFNE=%REBOOTDRV%,1

[IJPLMLOG_FINISH]
DLL=@SOFTWARE\Canon\IJPLM;LIBRARY@
DEVID=`%INI%;MSETUP;DEVICEID`
SCREENSIZE=%SCREENWIDTH%x%SCREENHEIGHT%

[SET_UREG_DONE]
%UREG_DONE%=MSETUP

[SET_UREG_NONE]
%UREG_DONE%=NONE

[IS_UREG_DONE]
IF=%UREG_DONE%,MSETUP

[END_REBOOTCHECK_ACTION]
LET=LET_REBOOTFLAG
REDRAW=BMPBTN_PAIN
END

[INIT_REBOOTFLAG]
%REBOOTBUTTON%=%REBOOT%

[LET_REBOOTFLAG]
%REBOOTBUTTON%=%LPARAM%

[END_EXIT_ACTION]
SETWINDOWZPOS=1
LET=LET_SBOX_PATH
IF=IS_SBOX_NEED_RUN
  OPEN=OPEN_SBOX
ENDIF

;LET=GET_WEBUSEFULINFO_PATH
;LOG=WEB USEFULINFO is %WEBUSEFULINFO_URL%

;GET_INTERNET_CONNECTION_STATE=%CONNECT_STATE%
IF=IS_INTERNET_CONNECTION_STATE
  OPEN=OPEN_WEBUSEFULINFO
ENDIF

IF=IS_REBOOTNEED
  DELETEREG=%PARAM_REG%
  END=END_CDEJECT
ENDIF

LET=LET_MYPRINTER_PATH
IF=IS_EXIST_MYPRINTER
  OPEN=OPEN_MYPRINTER
ENDIF

DELETEREG=%PARAM_REG%
END=END_CDEJECT

[IS_USEFULINFO_RUN]
IFEXISTFILE=OPEN_USEFULINFO
IFEXISTFILE=OPEN_USEFULINFO_DUMMY

[IS_INTERNET_CONNECTION_STATE]
IFEQ=%CONNECT_STATE%,1

[END_REBOOT_ACTION]
DELETEREG=%PARAM_REG%
END=REBOOT

[LET_SBOX_PATH]
%SBOX_PATH%=@SOFTWARE\Canon\Quick Menu;AppPath@

[IS_SBOX_NEED_RUN]
;IFNE=%PRODUCTFLAG%,2
IFEXIST=%SBOX_PATH%

[OPEN_SBOX]
FILE=%SBOX_PATH%
OPTION='/MS /Main'
WAIT=NONE
HIDE=FALSE
CANCEL=FALSE
CURRENTDIR=%WINDOWS%

[LET_MYPRINTER_PATH]
%MYPRINTER_PATH%=@SOFTWARE\Canon\MyPrinter;AppPath@

[IS_EXIST_MYPRINTER]
IFEXIST=%MYPRINTER_PATH%
IFEQ=%MYPRINTER.INSTALLED%,1

[OPEN_MYPRINTER]
FILE=%MYPRINTER_PATH%
OPTION='/logon'
WAIT=NONE
HIDE=FALSE
CANCEL=FALSE
CURRENTDIR=%WINDOWS%

[IS_REBOOTNEED]
IFEQ=%REBOOT%,1
OR
IFEQ=%REBOOTDRV%,1

[IS_REBOOTDRVNEED]
IFEQ=%REBOOTDRV%,1


[OPEN_USEFULINFO]
FILE=%EGV_EXEPATH%
OPTION='"%EGV_INFOPATH%" %EGV_P_USEFULINFO%'
CURRENTDIR=%WINDOWS%

[OPEN_USEFULINFO_DUMMY]
FILE=%EGV_INFOPATH%

[OPEN_WEBUSEFULINFO]
FILE=%WEBUSEFULINFO_URL%

[GET_USEFULINFO_PATH]
%EGV_EXEPATH%="@SOFTWARE\CANON\Easy Guide Viewer\%PRINTERNAME%;APP_PATH@"
%EGV_INFOPATH%="@SOFTWARE\CANON\Easy Guide Viewer\%PRINTERNAME%;Info_PATH@"
%EGV_P_USEFULINFO%="@SOFTWARE\CANON\Easy Guide Viewer\%PRINTERNAME%;MSETUP_USEFULFUNCTIONS@"

[GET_WEBUSEFULINFO_PATH]
%WEBUSEFULINFO_URL_BASE%="http://rs.ciggws.net/rd2.cgi?"
%WEBUSEFULINFO_URL%=%WEBUSEFULINFO_URL_BASE%FNC=MTSU_LINK
%WEBUSEFULINFO_URL%=%WEBUSEFULINFO_URL%&OSV=W&DEV=%DEVICEID%&CTV=1.0&LNG=`%INI%;%LANG%;IJSLANG`
%WEBUSEFULINFO_URL%=%WEBUSEFULINFO_URL%&CTN=UF%2Ffunctions.html

;---------------------------------
; Network Scan Utility Procedure
;---------------------------------
[IS_NETSCANUTIL_INSTALL]
IFEXISTFILE=INSTALL_NETSCANUTIL
IFEXISTFILE=NSU_PATH
IF=%SELECT_METHOD%,LAN

[LET_SET_SCANUTIL_PATH]
%NETSCANUTIL_PATH%=@Software\Canon\IJNetworkUtilitiesPath\IJNetworkScanUtility;AppPath@

[INSTALL_NETSCANUTIL]
FILE=%NETSCANUTIL_PATH%
WAIT=NONE
HIDE=FALSE
CANCEL=FALSE

[NSU_PATH]
FILE=%SRC%\Driver\LANUTIL\SCANUTIL\Setup.exe

;---------------------------------
; Network Scan Selector Procedure
;---------------------------------
[IS_NS_SELECTOR]
IFEXISTFILE=INSTALL_NS_SELECTOR
IFEXISTFILE=NSS_PATH
IF=%SELECT_METHOD%,LAN

[LET_SET_NS_SELECTOR_PATH]
%NS_SELECTOR_PATH%=@Software\Canon\IJNetworkScannerSelectorEX;AppPath@

[INSTALL_NS_SELECTOR]
FILE=%NS_SELECTOR_PATH%
OPTION=/FORCE
WAIT=NONE
HIDE=FALSE
CANCEL=FALSE

[NSS_PATH]
FILE=%SRC%\Driver\LANUTIL\SELECTOR\Setup.exe

;---------------------------------
; Failure Procedure
;---------------------------------

[FAILURE_PROC]
SCREEN=%SCREEN%\INST_FAILURE.SCI
BEGIN=FAILURE_BEGIN_ACTION

WELCOME_EVENT=FAILURE_RETRY_ACTION

[FAILURE_BEGIN_ACTION]
SETWINDOWZPOS=1
ITEMINFO_INSTALLED=%ITEMSECTION%
END

[FAILURE_RETRY_ACTION]
LET=LET_FIRSTINSTALL
END=WELCOME_PROC

[LET_PRINTERDRIVER_NOTINSTALLED]
%PRINTERDRIVER.INSTALLED%=0
%PRINTERDRIVER.ENABLE%=1

[LET_MPDRIVER_NOTINSTALLED]
%MPDRIVER.INSTALLED%=0
%MPDRIVER.ENABLE%=1

[LET_SCANGEAR_NOTINSTALLED]
%SCANGEAR.INSTALLED%=0
%SCANGEAR.ENABLE%=1

[LET_FAILSTEP_PRINTERDRIVER]
%FAILSTEP&=INSTALL_PRINTERDRIVER

[LET_FAILSTEP_MPDRIVER]
%FAILSTEP&=INSTALL_MPDRIVER

[LET_FAILSTEP_SCANGEAR]
%FAILSTEP&=INSTALL_SCANGEAR

[LET_FAILSTEP_UTILITY]
%FAILSTEP&=%INSTALL_UTILITY%

[LET_FAILSTEP_LANSETUP_CANCEL]
%FAILSTEP&=LANSETUP_CANCEL

[LET_FAILSTEP_LANSETUP_FAIL]
%FAILSTEP&=LANSETUP_FAIL

[LET_FAILSTEP_DETECT_CANCEL]
%FAILSTEP&=DETECT_CANCEL

;---------------------------------
; Detect Failure Procedure
;---------------------------------

[DETECT_FAILURE_PROC]
SCREEN=%SCREEN%\INST_DETECT_FAILURE.SCI
BEGIN=FAILURE_BEGIN_ACTION
WELCOME_EVENT=FAILURE_RETRY_ACTION

;---------------------------------
; LAN Failure Procedure
;---------------------------------
[LAN_FAILURE_PROC]
SCREEN=%SCREEN%\INST_LAN_FAILURE.SCI
BEGIN=FAILURE_BEGIN_ACTION
WELCOME_EVENT=FAILURE_RETRY_ACTION

;---------------------------------
; Tutorial for selecting IF Procedure
;---------------------------------
[SELECTIF_TUTO_PROC]
INITIALIZE=SELECTIF_TUTO_INITACTION
BEGIN=SELECTIF_TUTO_BEGINACTION

[SELECTIF_TUTO_INITACTION]
LET=LET_ITEM_EGV
LOG=SELECTIF_TUTO_INITACTION
END

[SELECTIF_TUTO_BEGINACTION]
APPL=INSTALL_TUTO
IF=IS_RESULT_APPINST_SUCCESS
  LOG=TUTO is installed.
ELSE
  LOG=TUTO is not installed.
  LET=SELECT_METHOD_USB
  END=%NEXTSTEP%
ENDIF

LET=GET_TUTO_PATH
LET=SET_TUTO_POINT_TOP
LET=SET_TUTO_RESULT_ZERO
APPL=OPEN_TUTO
LET=GET_TUTO_RESULT

IF=IS_TUTO_RESULT_ZERO
  LOG=TUTO is canceled.
  LET=SELECT_METHOD_USB
  APPL=UNINST_TUTO
  END=%TUTO_PREVSTEP%
ENDIF
IF=IS_TUTO_RESULT_WIRED
  LOG=TUTO is IS_TUTO_RESULT_WIRED.
  LET=SELECT_METHOD_LAN_WIRED
  END=SETLAN_TUTO_PROC
ENDIF
IF=IS_TUTO_RESULT_WIRELESS
  LOG=TUTO is IS_TUTO_RESULT_WIRELESS.
  LET=SELECT_METHOD_LAN_WIRELESS
  END=SETLAN_TUTO_PROC
ENDIF

LOG=TUTO RESULT %TUTO_RESULT% is USB or Failed.
LOG=NEXTSTEP %NEXTSTEP%
LET=SELECT_METHOD_USB
APPL=UNINST_TUTO
END=%NEXTSTEP%

[INSTALL_TUTO]
FILE=%SRC%\TUTO\StartHtm.exe
OPTION=%PARAM_REG%
WAIT=IS6
HIDE=FALSE
PARAMETER=INITIAL_TUTO_PARAM
CANCEL=FALSE

[UNINST_TUTO]
FILE=%TUTO_UNINSTPATH%
OPTION=/D
WAIT=IS6
HIDE=FALSE
CANCEL=FALSE

[GET_TUTO_PATH]
%TUTO_EXEPATH%="@SOFTWARE\CANON\Easy Tutorial Viewer\%DEVICEID%;APP_PATH@"
%TUTO_INFOPATH%="@SOFTWARE\CANON\Easy Tutorial Viewer\%DEVICEID%;Info_PATH@"
%TOTO_P_TOP%="@SOFTWARE\CANON\Easy Tutorial Viewer\%DEVICEID%;SETUP_TOP@"
%TOTO_P_WIRED1%="@SOFTWARE\CANON\Easy Tutorial Viewer\%DEVICEID%;SETUP_WIRED@"
%TOTO_P_WIRED2%="@SOFTWARE\CANON\Easy Tutorial Viewer\%DEVICEID%;SETUP_WIRED_SECONDMACHINE@"
%TOTO_P_WIRELESS1%="@SOFTWARE\CANON\Easy Tutorial Viewer\%DEVICEID%;SETUP_WIRELESS@"
%TOTO_P_WIRELESS2%="@SOFTWARE\CANON\Easy Tutorial Viewer\%DEVICEID%;SETUP_WIRELESS_SECONDMACHINE@"
%TUTO_UNINSTPATH%="@SOFTWARE\CANON\Easy Tutorial Viewer\%DEVICEID%;UNINSTALL_PATH@"

[SET_TUTO_POINT_TOP]
%TUTO_POINT%=%TOTO_P_TOP%
[SET_TUTO_POINT_WIRED1]
%TUTO_POINT%=%TOTO_P_WIRED1%
[SET_TUTO_POINT_WIRED2]
%TUTO_POINT%=%TOTO_P_WIRED2%
[SET_TUTO_POINT_WIRELESS1]
%TUTO_POINT%=%TOTO_P_WIRELESS1%
[SET_TUTO_POINT_WIRELESS2]
%TUTO_POINT%=%TOTO_P_WIRELESS2%

[OPEN_TUTO]
FILE=%TUTO_EXEPATH%
OPTION='"%TUTO_INFOPATH%" %TUTO_POINT% /m "SOFTWARE\CANON\MSETUP4\%DEVICEID%"
WAIT=IS6
HIDE=FALSE
CANCEL=FALSE
CURRENTDIR=%WINDOWS%

[GET_TUTO_RESULT]
%TUTO_RESULT%=@SOFTWARE\CANON\MSETUP4\%DEVICEID%;RESULT@
[SET_TUTO_RESULT_ZERO]
@SOFTWARE\CANON\MSETUP4\%DEVICEID%;RESULT@=SZ,"0"



[IS_TUTO_RESULT_ZERO]
IFEQ=%TUTO_RESULT%,0
[IS_TUTO_RESULT_WIRED]
IFEQ=%TUTO_RESULT%,1
[IS_TUTO_RESULT_WIRELESS]
IFEQ=%TUTO_RESULT%,2
[IS_TUTO_RESULT_USB]
IFEQ=%TUTO_RESULT%,3
[IS_TUTO_RESULT_FINISH]
IFEQ=%TUTO_RESULT%,11

[INITIAL_TUTO_PARAM]
@%PARAM_REG%;REBOOT@=DWORD,0
@%PARAM_REG%;EMERGENCY_REBOOT@=DWORD,0
@%PARAM_REG%;APPLICATION_COMPLETED@=DWORD,0xFFFFFFFF
@%PARAM_REG%;PRIMARY_LANGID@=DWORD,%INST_PRIMARY_LANGID%
@%PARAM_REG%;SUB_LANGID@=DWORD,%INST_SUB_LANGID%
@%PARAM_REG%;PRINTER@=SZ,%DEVICEID%
@%PARAM_REG%;SEND_INFO_AGREE@=DWORD,1

[SELECT_METHOD_USB]
%SELECT_METHOD%=USB
%CONNECTTYPE%=USB

[SELECT_METHOD_LAN_WIRED]
%SELECT_METHOD%=LAN
%CONNECTTYPE%=WIRED

[SELECT_METHOD_LAN_WIRELESS]
%SELECT_METHOD%=LAN
%CONNECTTYPE%=WIRELESS

;---------------------------------
; Tutorial for selecting IF Procedure
;---------------------------------
[SETLAN_TUTO_PROC]
INITIALIZE=SETLAN_TUTO_INITACTION
BEGIN=SETLAN_TUTO_BEGINACTION

[SETLAN_TUTO_INITACTION]
LOG=SETLAN_TUTO_PROC
END

[SUB_CHECKPRN_AND_SET_TUTOPAGE]
STARTWAITDLG=2
IF=IS_ARCHITECTURE_X64
  APPL=CHECKPRN_INLAN_64
ELSE
  APPL=CHECKPRN_INLAN_32
ENDIF

LOG=CheckLan result is %EXITCODE%
STARTWAITDLG=0

IF=IF_TUTO_WIRED1
  LET=SET_TUTO_POINT_WIRED1
ENDIF
IF=IF_TUTO_WIRED2
  LET=SET_TUTO_POINT_WIRED2
ENDIF
IF=IF_TUTO_WIRELESS1
  LET=SET_TUTO_POINT_WIRELESS1
ENDIF
IF=IF_TUTO_WIRELESS2
  LET=SET_TUTO_POINT_WIRELESS2
ENDIF

[SUB_SET_TUTOPAGE_FORSECOND]
IF=IF_TUTO_WIRED0
  LET=SET_TUTO_POINT_WIRED1
ELSE
  LET=SET_TUTO_POINT_WIRELESS1
ENDIF

[IS_CHECK_PRINTER]
IF=%INSTALLFLOW%,First
OR
IF=%INSTALLFLOW%,Choice

[SETLAN_TUTO_BEGINACTION]
IF=IS_CHECK_PRINTER
  GOSUB=SUB_CHECKPRN_AND_SET_TUTOPAGE
ELSE
  GOSUB=SUB_SET_TUTOPAGE_FORSECOND
ENDIF

LET=SET_TUTO_RESULT_ZERO
APPL=OPEN_TUTO
LET=GET_TUTO_RESULT

IF=IS_TUTO_RESULT_ZERO
  LOG=TUTO is canceled.
  LET=SELECT_METHOD_USB
  APPL=UNINST_TUTO
  END=%TUTO_PREVSTEP%
ENDIF
IF=IS_TUTO_RESULT_WIRED
  LOG=TUTO result WIRED again.maybe an user backed.
  LET=SELECT_METHOD_LAN_WIRED
  END=SETLAN_TUTO_PROC
ENDIF
IF=IS_TUTO_RESULT_WIRELESS
  LOG=TUTO result WIRELESS again.maybe an user backed.
  LET=SELECT_METHOD_LAN_WIRELESS
  END=SETLAN_TUTO_PROC
ENDIF
IF=IS_TUTO_RESULT_USB
  LOG=TUTO is USB
  LET=SELECT_METHOD_USB
  APPL=UNINST_TUTO
  END=%NEXTSTEP%
ENDIF

LOG=TUTO successfully finished
APPL=UNINST_TUTO
END=%NEXTSTEP%

[CHECKPRN_INLAN_32]
FILE=%SRC%\RES\CMS_LIB\DATA\CheckLan32.exe
WAIT=IS6
HIDE=FALSE
CANCEL=FALSE
OPTION='"%DEVICEID%" "%SRC%\DRIVER\LAN\CNMNPPM.DLL"'

[CHECKPRN_INLAN_64]
FILE=%SRC%\RES\CMS_LIB\DATA\CheckLan64.exe
WAIT=IS6
HIDE=FALSE
CANCEL=FALSE
OPTION='"%DEVICEID%" "%SRC%\DRIVER\LAN\CNMN6PPM.DLL"'

[IF_PRINTER_FOUND_IN_LAN_WIRELESS]
IFEQ=%EXITCODE%,1
IFEQ=%LANTYPE%,2
OR
IFEQ=%EXITCODE%,1
IFEQ=%LANTYPE%,3

[IF_PRINTER_FOUND_IN_LAN_WIRED]
IFEQ=%EXITCODE%,1
IFEQ=%LANTYPE%,1

[IF_TUTO_WIRED0]
IF=%CONNECTTYPE%,WIRED
[IF_TUTO_WIRED1]
IFNE=%EXITCODE%,1
IF=%CONNECTTYPE%,WIRED
[IF_TUTO_WIRED2]
IFEQ=%EXITCODE%,1
IF=%CONNECTTYPE%,WIRED
[IF_TUTO_WIRELESS1]
IFNE=%EXITCODE%,1
IF=%CONNECTTYPE%,WIRELESS
[IF_TUTO_WIRELESS2]
IFEQ=%EXITCODE%,1
IF=%CONNECTTYPE%,WIRELESS

;---------------------------------
; Calling IJEREG.exe Procedure
;---------------------------------
[CONNECTING_WEBREG_PROC]
SCREEN=%SCREEN_SCI%
BEGIN=CONNECTING_WEBREG_ACTION

[CONNECTING_WEBREG_ACTION]
LOG=CONNECTING_WEBREG_ACTION via CCL return is %RETURN_PROC%
LOG=SCREEN IS %SCREEN_SCI%
STARTWAITDLG=1
OPEN=OPEN_WEBREG_PAGE_URAL
LOG=WEBREG result is %EXITCODE%
STARTWAITDLG=0

;-プロキシ必要だったエラーの場合は取得を試す
IF=IS_URAL_NEED_PROXY_IDPS
  LET=SET_GETPX_EXECUTE
  GETPROXY_INFO=1
  CALC=CALC_GETPROXYCOUNT_PLUS
ENDIF
IF=IS_GIVEUP_GETPROXY
  MESSAGE=URAL_ERROR_MSG
  LET=SET_WEBREG_NOT_EXECUTE
  END=%RETURN_PROC%
ENDIF

;-プロキシ取得がキャンセルだった場合はそこで終了
IF=IF_GET_PROXY_RESULT_CANCELED
  MESSAGE=URAL_ERROR_MSG
  LET=SET_WEBREG_NOT_EXECUTE
  END=%RETURN_PROC%
ENDIF
;-プロキシ取得が失敗だった場合もそこで終了
IF=IF_GET_PROXY_RESULT_FAILED
  MESSAGE=URAL_ERROR_MSG
  LET=SET_WEBREG_NOT_EXECUTE
  END=%RETURN_PROC%
ENDIF
;-プロキシ取得が成功だった場合はループへ
IF=IF_GET_PROXY_RESULT_SUCCEEDED
  LET=SET_CLEAR_GETPX_FLAGS
  END=CONNECTING_WEBREG_PROC
ENDIF

IF=IS_URAL_CANNOTCONNECT_NOW
  MESSAGE=URAL_ERROR_MSG
ELSE
  LET=SET_UREG_DONE
ENDIF

IF=IS_CCL_SUCCEEDED_WITH_PROXY
  CONFIRMPROXY_INFO=1
ENDIF

LET=SET_WEBREG_NOT_EXECUTE
END=%RETURN_PROC%

[SET_RETURN_PROC_END]
%SCREEN_SCI%=%SCREEN%\SFP_END.SCI
%RETURN_PROC%=END_PROC

[SET_RETURN_PROC_IJPLM]
%SCREEN_SCI%=%SCREEN%\EXSURVEY.SCI
%RETURN_PROC%=IJPLM_PROC

[IS_URAL_CANNOTCONNECT_NOW]
IFEQ=%EXITCODE%,10

[IS_URAL_NEED_PROXY_IDPS]
IFEQ=%EXITCODE%,16
IFLE=%GETPROXYCOUNT%,2

[CALC_GETPROXYCOUNT_PLUS]
%GETPROXYCOUNT%=%GETPROXYCOUNT%+1

[IS_GIVEUP_GETPROXY]
IFEQ=%EXITCODE%,16
IFGE=%GETPROXYCOUNT%,3

[IS_CCL_SUCCEEDED_WITH_PROXY]
IFEQ=%EXITCODE%,1
IFEQ=%GETPXRESULT%,1


[URAL_ERROR_MSG]
TEXT=`%MESSAGE%;STRING;MSM2589`
CAPTION=%WEBREGTITLE%
ICON=ERROR
BUTTON=OK

[OPEN_WEBREG_PAGE_URAL]
FILE=%PROGRAMFILES%\canon\IJEREG\%PRODUCTNAME%\IJEREG.exe
OPTION='-NOURALMSG "%PXUID%" "%PXPSD%"'

[IF_GETPX_DONE]
IFEQ=%GETPXRESULT%,1

[IF_GET_PROXY_RESULT_CANCELED]
IFEQ=%GETPX_EXECUTE%,1
IFEQ=%GETPXRESULT%,2

[IF_GET_PROXY_RESULT_SUCCEEDED]
IFEQ=%GETPX_EXECUTE%,1
IFEQ=%GETPXRESULT%,1

[IF_GET_PROXY_RESULT_FAILED]
IFEQ=%GETPX_EXECUTE%,1
IFEQ=%GETPXRESULT%,0

[SET_GETPX_EXECUTE]
%GETPX_EXECUTE%=1

[SET_CLEAR_GETPX_FLAGS]
%GETPX_EXECUTE%=0

;===========ForRedirect============
[SUB_WEBREG_VIA_REDIRECT]
LET=ADD_WEBREG_PARAM
OPEN=OPEN_WEBREG_PAGE
IF=IS_OPEN_FAIL
  MESSAGE=MSG_OPENFAIL
ELSE
  LET=SET_UREG_DONE
ENDIF

[IS_OPEN_FAIL]
IFNE=%EXITCODE%,0

[MSG_OPENFAIL]
TEXT=`%MESSAGE%;STRING;MSE4`
CAPTION=`%MESSAGE%;STRING;MSM0101`
BUTTON=OK
ICON=ERROR

[ADD_WEBREG_PARAM]
%WEBREG_URL%=%WEBREG_URL%&LNG=%MSETUPLANGID_LARGE%
%WEBREG_URL%=%WEBREG_URL%&OSV=W%OS_MAJOR%.%OS_MINOR%

[OPEN_WEBREG_PAGE]
FILE=%WEBREG_URL%

;---------------------------------
; LANGUAGE Procedure
;---------------------------------
[LANG_PROC]
INITIALIZE=CHECK_LANG_ACTION
SCREEN=%SCREEN%\LANG.SCI

SELECT_LANG_EVENT=SELECT_LANG_ACTION
NEXT_EVENT=LANG_NEXT_ACTION
REBOOTREJECT_EVENT=REBOOTREJECT_ACTION

[CHECK_LANG_ACTION]
SETWINDOWZPOS=1
END

[IS_JCD]
IF=%CDTYPE%,JCD

[IS_USCD]
IF=%CDTYPE%,USCD

[SELECT_LANG_ACTION]
LET=LET_SELECTED_LANG
END

[LANG_NEXT_ACTION]
LANGUAGE=%SELECTED_LANG%
LET=LET_RTLREADING
IF=IS_RTLREADING
  LET=LET_SCI_RTLREADING
ELSE
  LET=LET_SCI_NORMAL
ENDIF
END=WELCOME_PROC

[LET_SELECTED_LANG_TOP]
%SELECTED_LANG%=0

[LET_SELECTED_LANG]
%SELECTED_LANG%=%LPARAM%

[LET_SELECTED_LANGSTR]
%SELECTED_LANGSTR%=`%MESSAGE%;STRING;%LANG%`

;===================================
; Language Table
[Japanese]
LANGID=17
LANGSUBID=0
RESIDENCE=japan
RTLREADING=0
DRVLANG=JP
IJSLANG=JP
AHOGENGO=0011

[English]
LANGID=9
LANGSUBID=0
RESIDENCE=america
RTLREADING=0
DRVLANG=US
IJSLANG=EN
AHOGENGO=0009

[French]
LANGID=12
LANGSUBID=0
RESIDENCE=europe
RTLREADING=0
DRVLANG=FR
IJSLANG=FR
AHOGENGO=000c

[German]
LANGID=7
LANGSUBID=0
RESIDENCE=europe
RTLREADING=0
DRVLANG=DE
IJSLANG=DE
AHOGENGO=0007

[Italian]
LANGID=16
LANGSUBID=0
RESIDENCE=europe
RTLREADING=0
DRVLANG=IT
IJSLANG=IT
AHOGENGO=0010

[Spanish]
LANGID=10
LANGSUBID=0
RESIDENCE=europe
RTLREADING=0
DRVLANG=ES
IJSLANG=ES
AHOGENGO=000a

[Dutch]
LANGID=19
LANGSUBID=0
RESIDENCE=europe
RTLREADING=0
DRVLANG=NL
IJSLANG=NL
AHOGENGO=0013

[Danish]
LANGID=6
LANGSUBID=0
RESIDENCE=europe
RTLREADING=0
DRVLANG=DK
IJSLANG=DA
AHOGENGO=0006

[Finnish]
LANGID=11
LANGSUBID=0
RESIDENCE=europe
RTLREADING=0
DRVLANG=FI
IJSLANG=FI
AHOGENGO=000b

[Swedish]
LANGID=29
LANGSUBID=0
RESIDENCE=europe
RTLREADING=0
DRVLANG=SE
IJSLANG=SV
AHOGENGO=001d

[Norwegian]
LANGID=20
LANGSUBID=0
RESIDENCE=europe
RTLREADING=0
DRVLANG=NO
IJSLANG=NO
AHOGENGO=0014

[Portuguese]
LANGID=22
LANGSUBID=0
RESIDENCE=america
RTLREADING=0
DRVLANG=PT
IJSLANG=PT
AHOGENGO=0016

[Greek]
LANGID=8
LANGSUBID=0
RESIDENCE=europe
RTLREADING=0
DRVLANG=GR
IJSLANG=EL
AHOGENGO=0008

[Hungarian]
LANGID=14
LANGSUBID=0
RESIDENCE=europe
RTLREADING=0
DRVLANG=HU
IJSLANG=HU
AHOGENGO=000e

[Czech]
LANGID=5
LANGSUBID=0
RESIDENCE=europe
RTLREADING=0
DRVLANG=CZ
IJSLANG=CS
AHOGENGO=0005

[Polish]
LANGID=21
LANGSUBID=0
RESIDENCE=europe
RTLREADING=0
DRVLANG=PL
IJSLANG=PL
AHOGENGO=0015

[Russian]
LANGID=25
LANGSUBID=0
RESIDENCE=europe
RTLREADING=0
DRVLANG=RU
IJSLANG=RU
AHOGENGO=0019

[Simplified_Chinese]
LANGID=4
LANGSUBID=2
RESIDENCE=asia
RTLREADING=0
DRVLANG=CN
IJSLANG=SC
AHOGENGO=0804

[Traditional_Chinese]
LANGID=4
LANGSUBID=1
RESIDENCE=asia
RTLREADING=0
DRVLANG=TW
IJSLANG=TC
AHOGENGO=0404

[Korean]
LANGID=18
LANGSUBID=0
RESIDENCE=asia
RTLREADING=0
DRVLANG=KR
IJSLANG=KO
AHOGENGO=0012

[Thai]
LANGID=30
LANGSUBID=0
RESIDENCE=asia
RTLREADING=0
DRVLANG=TH
IJSLANG=TH
AHOGENGO=001e

[Turkish]
LANGID=31
LANGSUBID=0
RESIDENCE=europe
RTLREADING=0
DRVLANG=TR
IJSLANG=TR
AHOGENGO=001f

[Estonian]
LANGID=37
LANGSUBID=0
RESIDENCE=europe
RTLREADING=0
DRVLANG=US
IJSLANG=ET
AHOGENGO=0025

[Latvian]
LANGID=38
LANGSUBID=0
RESIDENCE=europe
RTLREADING=0
DRVLANG=US
IJSLANG=LV
AHOGENGO=0026

[Lithuanian]
LANGID=39
LANGSUBID=0
RESIDENCE=europe
RTLREADING=0
DRVLANG=US
IJSLANG=LT
AHOGENGO=0027

[Slovenian]
LANGID=36
LANGSUBID=0
RESIDENCE=europe
RTLREADING=0
DRVLANG=US
IJSLANG=SL
AHOGENGO=0024

[Slovak]
LANGID=27
LANGSUBID=0
RESIDENCE=europe
RTLREADING=0
DRVLANG=US
IJSLANG=SK
AHOGENGO=001b

[Ukrainian]
LANGID=34
LANGSUBID=0
RESIDENCE=europe
RTLREADING=0
DRVLANG=US
IJSLANG=UK
AHOGENGO=0022

[Arabic]
LANGID=1
LANGSUBID=0
RESIDENCE=europe
RTLREADING=1
DRVLANG=AR
IJSLANG=AR
AHOGENGO=0001

[Indonesian]
LANGID=33
LANGSUBID=0
RESIDENCE=asia
RTLREADING=0
DRVLANG=ID
IJSLANG=ID
AHOGENGO=0021

[Bulgarian]
LANGID=2
LANGSUBID=0
RESIDENCE=europe
RTLREADING=0
DRVLANG=US
IJSLANG=BG
AHOGENGO=0002

[Rumanian]
LANGID=24
LANGSUBID=0
RESIDENCE=europe
RTLREADING=0
DRVLANG=US
IJSLANG=RO
AHOGENGO=0018

;===================Web Registration========================
[LET_WEBREGURL_BASE]
%WEBREG_URL_BASE%="jvvr8--pq,akeeuq,lgv-pf,aek="

[LET_WEBREGURL_NULL]
%WEBREG_URL_BASE%=NULL

[SETTING]
asia=CN,HK,IN,ID,KR,MY,PH,SG,TW,TH,VN,MO,Others
europe=AT,BE,BG,HR,CZ,DK,EE,FI,FR,DE,GR,HU,IE,IT,LV,LT,LU,NL,NO,PL,PT,RO,RU,SK,SI,ZA,ES,SE,CH,TR,GB,Others
america=US,CA,BR,MX,AR,CL,PA,Others
oceania=AU,NZ,Others

[IF_WEBREG_TARGET]
IF=%RESIDENCE%,europe

[IS_COUNTRY_CHINA]
IF=%SELECTEDCOUNTRY%,"CN"

[DEFAULTCOUNTRY_AMERICA]
0409=`%MESSAGE%;STRING;US`
540a=`%MESSAGE%;STRING;US`
1009=`%MESSAGE%;STRING;CA`
0c0c=`%MESSAGE%;STRING;CA`
0416=`%MESSAGE%;STRING;BR`
080a=`%MESSAGE%;STRING;MX`
2c0a=`%MESSAGE%;STRING;AR`
340a=`%MESSAGE%;STRING;CL`
180a=`%MESSAGE%;STRING;PA`
DEFAULT=`%MESSAGE%;STRING;Others`

[DEFAULTCOUNTRY_OCEANIA]
0c09=`%MESSAGE%;STRING;AU`
1409=`%MESSAGE%;STRING;NZ`
DEFAULT=`%MESSAGE%;STRING;Others`

[DEFAULTCOUNTRY_EUROPE]
0c07=`%MESSAGE%;STRING;AT`
080c=`%MESSAGE%;STRING;BE`
0813=`%MESSAGE%;STRING;BE`
0402=`%MESSAGE%;STRING;BG`
0405=`%MESSAGE%;STRING;CZ`
0406=`%MESSAGE%;STRING;DK`
0425=`%MESSAGE%;STRING;EE`
040b=`%MESSAGE%;STRING;FI`
081d=`%MESSAGE%;STRING;FI`
040c=`%MESSAGE%;STRING;FR`
0407=`%MESSAGE%;STRING;DE`
0408=`%MESSAGE%;STRING;GR`
040e=`%MESSAGE%;STRING;HU`
1809=`%MESSAGE%;STRING;IE`
0410=`%MESSAGE%;STRING;IT`
0426=`%MESSAGE%;STRING;LV`
0427=`%MESSAGE%;STRING;LT`
140c=`%MESSAGE%;STRING;LU`
1007=`%MESSAGE%;STRING;LU`
0413=`%MESSAGE%;STRING;NL`
0414=`%MESSAGE%;STRING;NO`
0814=`%MESSAGE%;STRING;NO`
0415=`%MESSAGE%;STRING;PL`
0816=`%MESSAGE%;STRING;PT`
0418=`%MESSAGE%;STRING;RO`
0419=`%MESSAGE%;STRING;RU`
041b=`%MESSAGE%;STRING;SK`
0424=`%MESSAGE%;STRING;SI`
1c09=`%MESSAGE%;STRING;ZA`
0c0a=`%MESSAGE%;STRING;ES`
041d=`%MESSAGE%;STRING;SE`
0807=`%MESSAGE%;STRING;CH`
0810=`%MESSAGE%;STRING;CH`
100c=`%MESSAGE%;STRING;CH`
041f=`%MESSAGE%;STRING;TR`
0809=`%MESSAGE%;STRING;GB`
041a=`%MESSAGE%;STRING;HR`
DEFAULT=`%MESSAGE%;STRING;Others`

[DEFAULTCOUNTRY_ASIA]
0804=`%MESSAGE%;STRING;CN`
0c04=`%MESSAGE%;STRING;HK`
0421=`%MESSAGE%;STRING;ID`
4009=`%MESSAGE%;STRING;IN`
0412=`%MESSAGE%;STRING;KR`
4409=`%MESSAGE%;STRING;MY`
3409=`%MESSAGE%;STRING;PH`
4809=`%MESSAGE%;STRING;SG`
1004=`%MESSAGE%;STRING;SG`
0404=`%MESSAGE%;STRING;TW`
041e=`%MESSAGE%;STRING;TH`
1404=`%MESSAGE%;STRING;MO`
DEFAULT=`%MESSAGE%;STRING;Others`

[MYPRINT_LOG_START]
@Software\Canon\MSETUPLOG;FLAG4@=DWORD,0
[MYPRINT_LOG_COMPLETEALL]
@Software\Canon\MSETUPLOG;FLAG4@=DWORD,1
[MYPRINT_LOG_PDRV_INSTALL_START]
@Software\Canon\MSETUPLOG;FLAG4@=DWORD,10
[MYPRINT_LOG_MDRV_INSTALL_START]
@Software\Canon\MSETUPLOG;FLAG4@=DWORD,11
[MYPRINT_LOG_SDRV_INSTALL_START]
@Software\Canon\MSETUPLOG;FLAG4@=DWORD,12
[MYPRINT_LOG_EGV_INSTALL_START]
@Software\Canon\MSETUPLOG;FLAG4@=DWORD,13
[MYPRINT_LOG_MYPRINT_INSTALL_START]
@Software\Canon\MSETUPLOG;FLAG4@=DWORD,20
[MYPRINT_LOG_MPNAVI_INSTALL_START]
@Software\Canon\MSETUPLOG;FLAG4@=DWORD,22
[MYPRINT_LOG_EPPEX_INSTALL_START]
@Software\Canon\MSETUPLOG;FLAG4@=DWORD,23
[MYPRINT_LOG_CDR_INSTALL_START]
@Software\Canon\MSETUPLOG;FLAG4@=DWORD,24
[MYPRINT_LOG_SBOX_INSTALL_START]
@Software\Canon\MSETUPLOG;FLAG4@=DWORD,25
[MYPRINT_LOG_EPPPRO_INSTALL_START]
@Software\Canon\MSETUPLOG;FLAG4@=DWORD,26
[MYPRINT_LOG_DIALTOOL_INSTALL_START]
@Software\Canon\MSETUPLOG;FLAG4@=DWORD,27
[MYPRINT_LOG_ADOBE_INSTALL_START]
@Software\Canon\MSETUPLOG;FLAG4@=DWORD,30
[MYPRINT_LOG_YOMITORI_INSTALL_START]
@Software\Canon\MSETUPLOG;FLAG4@=DWORD,32
[MYPRINT_LOG_EWPEX_INSTALL_START]
@Software\Canon\MSETUPLOG;FLAG4@=DWORD,35
[MYPRINT_LOG_OSHIRASE_INSTALL_START]
@Software\Canon\MSETUPLOG;FLAG4@=DWORD,36
[MYPRINT_LOG_WEBREG_INSTALL]
@Software\Canon\MSETUPLOG;FLAG4@=DWORD,38
[MYPRINT_LOG_SEARCHNETWORK_START]
@Software\Canon\MSETUPLOG;FLAG4@=DWORD,39
[MYPRINT_LOG_SECONDSELECT_START]
@Software\Canon\MSETUPLOG;FLAG4@=DWORD,40
[MYPRINT_LOG_DETECT_START]
@Software\Canon\MSETUPLOG;FLAG4@=DWORD,41
[MYPRINT_LOG_LANSETUP_START]
@Software\Canon\MSETUPLOG;FLAG4@=DWORD,42
[MYPRINT_LOG_XPS_INSTALL_START]
@Software\Canon\MSETUPLOG;FLAG4@=DWORD,55
[MYPRINT_LOG_WEBREG_SCREEN]
@Software\Canon\MSETUPLOG;FLAG4@=DWORD,61
[MYPRINT_LOG_WEBREG_EXEC]
@Software\Canon\MSETUPLOG;FLAG4@=DWORD,62
[MYPRINT_LOG_WEBREG_CANCEL]
@Software\Canon\MSETUPLOG;FLAG4@=DWORD,63
