home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
DOS/V Power Report 1997 March
/
VPR9703B.ISO
/
driver
/
canopus
/
win95
/
dosv
/
3dv95_ut
/
3dv95_ut.lzh
/
SETUP.MS_
/
SETUP.MS
Wrap
Text File
|
1996-10-14
|
31KB
|
924 lines
'************************************************
'-- setup.mst --
'Power Window Application Setup script
'Copyright (C) 1996 CANOPUS Co.,Ltd. All rights reserved.
'************************************************
'$INCLUDE 'setupapi.inc'
'$INCLUDE 'msdetect.inc'
'$INCLUDE 'msregdb.inc'
''Dialog ID's
CONST WELCOMEV =200
CONST WELCOMEVUS =201
CONST ASKQUITV =400
CONST ASKQUITVUS =401
CONST OPTIONSV =600
CONST OPTIONSVUS =601
CONST PWBOARD =700
CONST PWBOARDUS =701
CONST DESTPATHW95 =1001
CONST DESTPATHUSW95 =1003
CONST EXITSUCCESSW95 =1101
CONST EXITSUCCESSUSW95=1103
CONST EXITQUIT =1200
CONST EXITQUITUS =1201
CONST EXITFAILURE =1300
CONST EXITFAILUREUS =1301
CONST EXITCHECK =1400
CONST EXITCHECKUS =1401
CONST DESTINSTALL =1500
CONST DESTINSTALLUS =1501
CONST BADPATHW95 =2001
CONST BADPATHUSW95 =2003
CONST POWERERROR =2100
CONST POWERERRORUS =2101
CONST DISKERROR =2200
CONST DISKERRORUS =2201
''Defalut Setting
CONST TRUE =1
CONST FALSE =0
''CustInst list
CONST TOTALKBOX =5
CONST CHECKBOX1 =1
CONST CHECKBOX2 =2
CONST CHECKBOX3 =3
CONST CHECKBOX4 =4
CONST CHECKBOX5 =5
'' Users Area
GLOBAL DEST$ '' Default Dir
GLOBAL WINDRIVE$ '' Windows Dir
GLOBAL GROUP$ '' Group Name
GLOBAL CUIDLL$ '' User DLL File Name
GLOBAL CHECKSTATES$ '' Check Box Data
GLOBAL JPMODE AS INTEGER '' Japanese / English Mode
GLOBAL WINMODE AS INTEGER '' Windows Version
GLOBAL OPBOARD AS INTEGER '' Option Board
GLOBAL MPEGFLG AS INTEGER '' MPEG Board TRUE:HARD MPEG FALSE:SOFT MPEG
GLOBAL VIDEOFLG AS INTEGER '' Video Board TRUE:YES FALSE:NO
GLOBAL VIEWERFLG AS INTEGER '' Video Viewer TRUE:YES FALSE:NO
GLOBAL TUNERFLG AS INTEGER '' TV Tuner TRUE:YES FALSE:NO
GLOBAL MPEGDRV AS INTEGER '' MPEG Driver TRUE:YES FALSE:NO
GLOBAL SPFLG AS INTEGER '' Speed TRUE:YES FALSE:NO
GLOBAL CAPFLG AS INTEGER '' Capture TRUE:YES FALSE:NO
GLOBAL DOCFLG AS INTEGER '' Manual TRUE:YES FALSE:NO
''CustInst list symbol names
DECLARE SUB Install
DECLARE SUB DefaultLoad
DECLARE FUNCTION MakePath (szDir$, szFile$) AS STRING
DECLARE SUB IniSetAndBakup (szFile$, szSec$, szKey$, szVal$, szSecOp$)
DECLARE SUB IniSetAndBakupChk (szFile$, szSec$, szKey$, szVal$, szSecOp$)
DECLARE SUB IniSetAndStandBakup (szFile$, szSec$, szKey$, szVal$, szSecOp$)
DECLARE SUB UninstallFileCounter (szFile$, szSec$, szKey$, szVal$)
DECLARE FUNCTION CheckPowerWindow LIB "mscuistf.dll" () AS INTEGER
DECLARE FUNCTION GetPowerWindowDir LIB "mscuistf.dll" () AS INTEGER
DECLARE FUNCTION GetWindowsVer LIB "mscuistf.dll" () AS INTEGER
DECLARE FUNCTION ExitWindowsExec LIB "User" (Exec$, Param$) AS INTEGER
DECLARE FUNCTION GetMetrics LIB "mscuistf.dll" () AS INTEGER
' #[ INIT ]
INIT:
CUIDLL$ = "mscuistf.dll"
WINMODE = GetWindowsVer()
JPMODE = GetMetrics()
SetWindowSize 3
SetBitmap CUIDLL$, 1
SetTitle "Power Window Application Setup"
szInf$ = GetSymbolValue("STF_SRCINFPATH")
IF szInf$ = "" THEN
szInf$ = GetSymbolValue("STF_CWDDIR") + "setup.inf"
END IF
ReadInfFile szInf$
IF WINMODE = FALSE THEN
IF JPMODE <> 0 THEN
i% = DoMsgBox("Windows 95 専用のアプリケーションのため、この環境にはインストールできません。", "Power Window Application Setup", MB_OK+MB_TASKMODAL+MB_ICONHAND)
ELSE
i% = DoMsgBox("Please install Windows 95 before installing Power Window Application.", "Power Window Application Setup", MB_OK+MB_TASKMODAL+MB_ICONHAND)
END IF
END
END IF
DefaultLoad
WELCOME:
IF JPMODE <> 0 THEN
dlg% = WELCOMEV
ELSE
dlg% = WELCOMEVUS
END IF
sz$ = UIStartDlg(CUIDLL$, dlg%, "FInfoDlgProc", 0, "")
IF sz$ = "CONTINUE" THEN
UIPop 1
ELSE
GOSUB ASKQUITJMP
GOTO WELCOME
END IF
BOARDCHECKSTART:
CHECKSTATES$ = "CheckTool"
RemoveSymbol CHECKSTATES$
RemoveSymbol "OptionsGreyed"
RemoveSymbol "OptionsDelete"
RemoveSymbol "OptionsOutput"
IF OPBOARD = 1 THEN
AddListItem "OptionsOutput", "1"
AddListItem "OptionsDelete", "2"
ELSEIF OPBOARD = 2 THEN
AddListItem "OptionsDelete", "1"
AddListItem "OptionsOutput", "2"
ELSEIF OPBOARD = 3 THEN
AddListItem "OptionsOutput", "1"
AddListItem "OptionsOutput", "2"
END IF
IF VIDEOFLG = FALSE THEN
AddListItem "CheckTool", "OFF"
ELSE
AddListItem "CheckTool", "ON"
END IF
IF MPEGFLG = FALSE THEN
AddListItem "CheckTool", "OFF"
ELSE
AddListItem "CheckTool", "ON"
END IF
BOARDCHECKLOOP:
IF OPBOARD = 0 THEN
GOTO CHECKCUTSTART
END IF
IF JPMODE <> 0 THEN
dlg% = PWBOARD
ELSE
dlg% = PWBOARDUS
END IF
sz$ = UIStartDlg(CUIDLL$, dlg%, "FCheck0DlgProc", 0, "")
IF sz$ = "CONTINUE" THEN
IF GetListItem("CheckTool", 1) = "OFF" THEN
VIDEOFLG=FALSE
ELSE
VIDEOFLG=TRUE
END IF
IF GetListItem("CheckTool", 2) = "OFF" THEN
MPEGFLG=FALSE
ELSE
MPEGFLG=TRUE
END IF
UIPop 1
GOTO CHECKCUTSTART
ELSE
GOSUB ASKQUITJMP
GOTO BOARDCHECKLOOP
END IF
CHECKCUTSTART:
CHECKSTATES$ = "CheckItemsIn"
RemoveSymbol CHECKSTATES$
RemoveSymbol "OptionsGreyed"
RemoveSymbol "OptionsDelete"
RemoveSymbol "OptionsOutput"
IF JPMODE <> 0 THEN
AddListItem CHECKSTATES$, "ON"
ELSE
AddListItem CHECKSTATES$, "OFF"
AddListItem "OptionsGreyed", "1"
END IF
AddListItem CHECKSTATES$, "ON"
IF MPEGFLG = TRUE THEN
AddListItem CHECKSTATES$, "ON"
ELSE
AddListItem CHECKSTATES$, "ON"
END IF
IF VIDEOFLG = TRUE THEN
IF VIEWERFLG = TRUE THEN
AddListItem CHECKSTATES$, "ON"
AddListItem "OptionsOutput", "4"
ELSE
AddListItem CHECKSTATES$, "OFF"
AddListItem "OptionsDelete", "4"
END IF
IF TUNERFLG = TRUE THEN
AddListItem CHECKSTATES$, "ON"
AddListItem "OptionsOutput", "5"
ELSE
AddListItem CHECKSTATES$, "OFF"
AddListItem "OptionsDelete", "5"
END IF
ELSE
AddListItem CHECKSTATES$, "OFF"
AddListItem "OptionsDelete", "4"
AddListItem CHECKSTATES$, "OFF"
AddListItem "OptionsDelete", "5"
END IF
CHECKCUTLOOP:
IF JPMODE <> 0 THEN
dlg% = OPTIONSV
ELSE
dlg% = OPTIONSVUS
END IF
sz$ = UIStartDlg(CUIDLL$, dlg%, "FCheckDlgProc", 0, "")
IF sz$ = "CONTINUE" THEN
push% = 0
CHECKSTATES$ = "CheckItemsOut"
FOR i% = 1 TO TOTALKBOX STEP 1
IF GetListItem(CHECKSTATES$, i%) = "ON" THEN
push% = 1
END IF
NEXT i%
IF push% = 0 THEN
IF JPMODE <> 0 THEN
dlg% = EXITCHECK
ELSE
dlg% = EXITCHECKUS
END IF
sz$ = UIStartDlg(CUIDLL$, dlg%, "FInfoDlgProc", 0, "")
UIPop 1
GOTO CHECKCUTLOOP
END IF
UIPop 1
GOTO GETPATH
ELSEIF sz$ = "BACK" THEN
UIPop 1
IF OPBOARD = 0 THEN
GOTO WELCOME
ELSE
GOTO BOARDCHECKSTART
END IF
ELSE
GOSUB ASKQUITJMP
GOTO CHECKCUTLOOP
END IF
GETPATH:
SetSymbolValue "EditTextIn", DEST$
SetSymbolValue "EditFocus", "END"
GETPATHL1:
IF JPMODE <> 0 THEN
dlg% = DESTPATHW95
ELSE
dlg% = DESTPATHUSW95
END IF
sz$ = UIStartDlg(CUIDLL$, dlg%, "FEditDlgProc", 0, "")
DEST$ = GetSymbolValue("EditTextOut")
IF sz$ = "CONTINUE" THEN
IF IsDirWritable(DEST$) = 0 THEN
GOSUB INPUTPATH
GOTO GETPATHL1
END IF
UIPop 1
ELSEIF sz$ = "REACTIVATE" THEN
GOTO GETPATHL1
ELSEIF sz$ = "BACK" THEN
UIPop 1
GOTO CHECKCUTSTART
ELSE
GOSUB ASKQUITJMP
GOTO GETPATHL1
END IF
INST:
IF JPMODE <> 0 THEN
dlg% = DESTINSTALL
ELSE
dlg% = DESTINSTALLUS
END IF
sz$ = UIStartDlg(CUIDLL$, dlg%, "FInfoDlgProc", 0, "")
IF sz$ = "CONTINUE" THEN
UIPop 1
ELSEIF sz$ = "BACK" THEN
UIPop 1
GOTO GETPATH
ELSE
GOSUB ASKQUITJMP
GOTO INST
END IF
Install
QUIT:
ON ERROR GOTO ERRQUIT
IF ERR = 0 THEN
IF JPMODE <> 0 THEN
dlg% = EXITSUCCESSW95
ELSE
dlg% = EXITSUCCESSUSW95
END IF
ELSEIF ERR = STFQUIT THEN
IF JPMODE <> 0 THEN
dlg% = EXITQUIT
ELSE
dlg% = EXITQUITUS
END IF
ELSE
IF JPMODE <> 0 THEN
dlg% = EXITFAILURE
ELSE
dlg% = EXITFAILUREUS
END IF
END IF
QUITL1:
sz$ = UIStartDlg(CUIDLL$, dlg%, "FInfoDlgProc", 0, "")
IF sz$ = "CONTINUE" THEN
UIPop 1
END
END IF
RESET:
new% = ExitExecRestart()
Exe$ = WINDRIVE$ + "\_msrstrt.exe"
Empty$ = ""
RESTART1:
IF new% = 0 THEN
IF JPMODE <> 0 THEN
i% = DoMsgBox("Windows を再起動できません。他のアプリケーション(MS-DOSプロンプト等)を終了してください。", "セットアップ エラー", MB_OK+MB_TASKMODAL+MB_ICONHAND)
ELSE
i% = DoMsgBox("The Setup program cannot restart Windows. Please terminate all other applications and MS-DOS Prompt.", "Setup Error", MB_OK+MB_TASKMODAL+MB_ICONHAND)
END IF
END IF
I% = ExitWindowsExec (Exe$, Empty$)
IF I% = 0 THEN
GOTO RESET
ELSE
END
END IF
END
ERRQUIT:
IF JPMODE <> 0 THEN
i% = DoMsgBox("セットアップディスクの内容が壊れています。テクニカルサポートまで連絡してください。", "セットアップ エラー", MB_OK+MB_TASKMODAL+MB_ICONHAND)
ELSE
i% = DoMsgBox("This Setup disk is destroyed. Please contact our Technical Support.", "Setup Error", MB_OK+MB_TASKMODAL+MB_ICONHAND)
END IF
END
INPUTPATH:
IF JPMODE <> 0 THEN
dlg% = BADPATHW95
ELSE
dlg% = BADPATHUSW95
END IF
sz$ = UIStartDlg(CUIDLL$, dlg%, "FInfo0DlgProc", 0, "")
IF sz$ = "REACTIVATE" THEN
GOTO INPUTPATH
END IF
UIPop 1
RETURN
ASKQUITJMP:
IF JPMODE <> 0 THEN
dlg% = ASKQUITV
ELSE
dlg% = ASKQUITVUS
END IF
sz$ = UIStartDlg(CUIDLL$, dlg%, "FQuitDlgProc", 0, "")
IF sz$ = "EXIT" THEN
UIPopAll
ERROR STFQUIT
ELSEIF sz$ = "REACTIVATE" THEN
GOTO ASKQUITJMP
ELSE
UIPop 1
END IF
RETURN
'*****************************************************
'** 内容:
'** インストールの作業
'** 引き数:
'** なし
'** 戻り値:
'** なし
'*****************************************************
SUB Install STATIC
SrcDir$ = GetSymbolValue("STF_SRCDIR")
'' a:\english\setup.exeから起動した場合、ソースディレクトリを1階層上げる
'' チェック手段として、SETUP.INF の有無で判定
l& = GetSizeOfFile(SrcDir$ + "SETUP.INF")
IF l& = 0 THEN
ist% = 1
istold% = 1
istop% = 1
WHILE ( istop% )
ied% = INSTR(ist%, SrcDir$, "\")
IF ied% = 0 THEN
istop% = 0
ELSE
istold% = ist%
ist% = ied% + 1
END IF
WEND
IF istold% <> 1 THEN
SrcDir$ = Mid$(SrcDir$, 1, (istold% - 1))
END IF
END IF
WinSysDir$ = GetWindowsSysDir()
CreateDir DEST$, cmoNone
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "DIR", DEST$
CreateIniKeyValue WINDRIVE$ + "UNPWCINE.INI", "InstallApplication", "SECTION", "PowerWindowApp", cmoOverwrite
''ファイルコピーリストの登録
CHECKSTATES$ = "CheckItemsOut"
IF GetListItem(CHECKSTATES$, 1) = "ON" THEN
AddSectionFilesToCopyList "OPTION1", SrcDir$, DEST$
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(DEST$,"README.TXT")
END IF
IF GetListItem(CHECKSTATES$, 2) = "ON" THEN
AddSectionFilesToCopyList "OPTION2", SrcDir$, DEST$
AddSectionFilesToCopyList "OPTSYS2", SrcDir$, WinSysDir$
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(DEST$,"PWCINE95.EXE")
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(DEST$,"VCDMCI95.DLL")
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(DEST$,"CINEMA95.DLL")
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(WinSysDir$,"PWJPEG.DRV")
IF DOCFLG = TRUE THEN
IF JPMODE <> 0 THEN
AddSectionFilesToCopyList "OPTION20", SrcDir$, DEST$
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(DEST$,"PWCINE95.DOC")
END IF
END IF
END IF
IF GetListItem(CHECKSTATES$, 3) = "ON" THEN
IF MPEGFLG = FALSE THEN '' Soft MPEG Driver
AddSectionFilesToCopyList "OPTION30", SrcDir$, DEST$
AddSectionFilesToCopyList "OPTSYS3", SrcDir$, WinSysDir$
AddSectionFilesToCopyList "OPTWIN3", SrcDir$, WINDRIVE$
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(DEST$,"MPEGC.EXE")
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(WINDRIVE$,"SOFTPEG.INI")
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(WinSysDir$,"SOFTPEGC.DLL")
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(WinSysDir$,"CCMPEGW.DLL")
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(WinSysDir$,"CCMPEG.DLL")
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(WinSysDir$,"SOFTPEG.DRV")
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(WinSysDir$,"SOFTPEG3.DLL")
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(WinSysDir$,"SOFTPEGC.DLL")
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(WinSysDir$,"CD16.DRV")
ELSE '' Hard MPEG Driver
AddSectionFilesToCopyList "OPTION3", SrcDir$, DEST$
AddSectionFilesToCopyList "OPTION30", SrcDir$, DEST$
AddSectionFilesToCopyList "OPTSYS3", SrcDir$, WinSysDir$
AddSectionFilesToCopyList "OPTSYS30", SrcDir$, WinSysDir$
AddSectionFilesToCopyList "OPTSYS31", SrcDir$, WinSysDir$
AddSectionFilesToCopyList "OPTWIN3", SrcDir$, WINDRIVE$
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(DEST$,"CDALLOC.EXE")
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(DEST$,"MPEGC.EXE")
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(WINDRIVE$,"SOFTPEG.INI")
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(WinSysDir$,"SOFTPEGC.DLL")
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(WinSysDir$,"CCMPEGW.DLL")
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(WinSysDir$,"CCMPEG.DLL")
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(WinSysDir$,"SOFTPEG.DRV")
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(WinSysDir$,"SOFTPEG3.DLL")
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(WinSysDir$,"SOFTPEGC.DLL")
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(WinSysDir$,"CD16.DRV")
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(WinSysDir$,"PWTVMPEG.DRV")
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(WinSysDir$,"PWMPG.DLL")
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(WinSysDir$,"PWVDE.DLL")
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(WinSysDir$,"PWADE.DLL")
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(WinSysDir$,"PWMX2.DLL")
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(WinSysDir$,"PWVMX16.DLL")
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(WinSysDir$,"PWVMX32.DLL")
END IF
END IF
IF GetListItem(CHECKSTATES$, 4) = "ON" THEN
AddSectionFilesToCopyList "OPTSYS2", SrcDir$, WinSysDir$
AddSectionFilesToCopyList "OPTSYS31", SrcDir$, WinSysDir$
AddSectionFilesToCopyList "OPTSYS4", SrcDir$, WinSysDir$
AddSectionFilesToCopyList "OPTION4", SrcDir$, DEST$
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(WinSysDir$,"PWJPEG.DRV")
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(WinSysDir$,"PWVMX16.DLL")
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(WinSysDir$,"PWVMX32.DLL")
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(DEST$,"PWVVIEW.EXE")
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(DEST$,"PWVVIEW.HLP")
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(WinSysDir$,"PWTVRCAP.DRV")
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(WinSysDir$,"PWDIALOG.DLL")
ELSE
IF VIDEOFLG = TRUE THEN '' Video Board
AddSectionFilesToCopyList "OPTSYS2", SrcDir$, WinSysDir$
AddSectionFilesToCopyList "OPTSYS31", SrcDir$, WinSysDir$
AddSectionFilesToCopyList "OPTSYS4", SrcDir$, WinSysDir$
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(WinSysDir$,"PWJPEG.DRV")
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(WinSysDir$,"PWVMX16.DLL")
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(WinSysDir$,"PWVMX32.DLL")
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(WinSysDir$,"PWTVRCAP.DRV")
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(WinSysDir$,"PWDIALOG.DLL")
END IF
END IF
IF GetListItem(CHECKSTATES$, 5) = "ON" THEN
AddSectionFilesToCopyList "OPTSYS5", SrcDir$, WinSysDir$
AddSectionFilesToCopyList "OPTION5", SrcDir$, DEST$
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(DEST$,"PWTVRTUN.EXE")
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(WinSysDir$,"PWTVRTUN.DLL")
END IF
AddSectionFilesToCopyList "OPTIONA", SrcDir$, DEST$
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "FILE", MakePath(DEST$,"PWAPUIST.EXE")
''ファイルコピー
SizeReq& = GetCopyListCost ("","", "")
IF SizeReq& <> 0 THEN
IF JPMODE <> 0 THEN
dlg% = DISKERROR
ELSE
dlg% = DISKERRORUS
END IF
sz$ = UIStartDlg(CUIDLL$, dlg%, "FInfoDlgProc", 0, "")
END
END IF
SetRestartDir WINDRIVE$
CopyFilesInCopyList
''INIファイルの登録
IF GetListItem(CHECKSTATES$, 2) = "ON" THEN
RemoveInisection WINDRIVE$ + "CANOPUS.INI", "Power Cinema 95" , cmoVital
IF SPFLG = TRUE THEN
CreateIniKeyValue WINDRIVE$ + "CANOPUS.INI", "Power Cinema 95", "SpeedCheck", "1", cmoOverwrite
END IF
IF CAPFLG = TRUE THEN
CreateIniKeyValue WINDRIVE$ + "CANOPUS.INI", "Power Cinema 95", "UseCapture", "0", cmoOverwrite
END IF
IniSetAndBakup WINDRIVE$ + "SYSTEM.INI", "DRIVERS", "VIDC.MJPG", "PWJPEG.DRV", "SYS"
CreateIniKeyValue WINDRIVE$ + "CONTROL.INI", "DRIVERS.DESC", "PWJPEG.DRV", "CANOPUS Power Window Motion JPEG Decompressor", cmoOverwrite
END IF
IF GetListItem(CHECKSTATES$, 3) = "ON" THEN
IF MPEGFLG = FALSE THEN '' Soft MPEG Driver
IniSetAndBakupChk WINDRIVE$ + "SYSTEM.INI", "MCI", "MPEGVIDEO", "SOFTPEG.DRV", "SYS"
IniSetAndBakup WINDRIVE$ + "SYSTEM.INI", "MCI", "MPEGVIDEOCD", "SOFTPEG.DRV CDI", "SYS"
CreateIniKeyValue WINDRIVE$ + "CONTROL.INI", "DRIVERS.DESC", "SOFTPEG.DRV", "[MCI] CompCore SoftPEG (TM) MPEG Driver", cmoOverwrite
ELSE '' Hard MPEG Driver
szLoad$ = GetIniKeyString(INDRIVE$ + "Win.ini", "WINDOWS", "LOAD")
szWrite$ = ""
ist% = 1
istop% = 1
WHILE ( istop% )
ied% = INSTR(ist%, szLoad$, " ")
IF ied% = 0 THEN
istop% = 0
ied% = LEN(szLoad$) + 1
END IF
szBuff$ = Mid$(szLoad$, ist%, (ied% - ist%))
ret% = InStr(szBuff$, "CDALLOC.EXE")
IF ret% = 0 THEN
szWrite$ = szWrite$ + szBuff$ + " "
END IF
ist% = ied% + 1
WEND
szWrite$ = szWrite$ + MakePath(DEST$,"CDALLOC.EXE")
CreateIniKeyValue WINDRIVE$ + "WIN.INI", "WINDOWS", "LOAD", szWrite$, cmoOverwrite
IniSetAndBakup WINDRIVE$ + "SYSTEM.INI", "MCI", "MPEGCDI", "PWTVMPEG.DRV", "SYS"
IniSetAndBakupChk WINDRIVE$ + "SYSTEM.INI", "MCI", "MPEGVIDEO", "PWTVMPEG.DRV", "SYS"
IniSetAndBakup WINDRIVE$ + "SYSTEM.INI", "MCI", "MPEGVIDEOCD", "SOFTPEG.DRV CDI", "SYS"
CreateIniKeyValue WINDRIVE$ + "CONTROL.INI", "DRIVERS.DESC", "PWTVMPEG.DRV", "[MCI] CANOPUS Power Window MPEG Driver", cmoOverwrite
CreateIniKeyValue WINDRIVE$ + "CONTROL.INI", "DRIVERS.DESC", "SOFTPEG.DRV", "[MCI] CompCore SoftPEG (TM) MPEG Driver", cmoOverwrite
END IF
CreateIniKeyValue WINDRIVE$ + "WIN.INI", "MCI EXTENSIONS", "MPG", "MPEGVIDEO", cmoOverwrite
CreateIniKeyValue WINDRIVE$ + "WIN.INI", "MCI EXTENSIONS", "VID", "MPEGVIDEO", cmoOverwrite
CreateIniKeyValue WINDRIVE$ + "WIN.INI", "MCI EXTENSIONS", "DAT", "MPEGVIDEO", cmoOverwrite
CreateIniKeyValue WINDRIVE$ + "WIN.INI", "MCI EXTENSIONS", "MPA", "MPEGVIDEO", cmoOverwrite
CreateIniKeyValue WINDRIVE$ + "WIN.INI", "MCI EXTENSIONS", "MPV", "MPEGVIDEO", cmoOverwrite
RemoveIniKey WINDRIVE$ + "SYSTEM.INI", "MCI", "CCMPEG" , cmoNone
RemoveIniKey WINDRIVE$ + "SYSTEM.INI", "MCI", "CCMPEGCDI" , cmoNone
RemoveIniKey WINDRIVE$ + "MPLAYER.INI", "DEVICES", "CCMPEG", cmoNone
RemoveIniKey WINDRIVE$ + "MPLAYER.INI", "DEVICES", "CCMPEGCDI" , cmoNone
RemoveIniKey WINDRIVE$ + "MPLAYER.INI", "OPTIONS", "CCMPEG" , cmoNone
RemoveIniKey WINDRIVE$ + "MPLAYER.INI", "OPTIONS", "CCMPEGCDI" , cmoNone
' CreateRegKeyValue ".mpg", "mplayer"
END IF
IF ( GetListItem(CHECKSTATES$, 4) = "ON" ) OR ( VIDEOFLG = TRUE ) THEN
RemoveInisection WINDRIVE$ + "CANOPUS.INI", "Video Viewer" , cmoVital
RemoveInisection WINDRIVE$ + "CANOPUS.INI", "T64VCapture" , cmoVital
IniSetAndStandBakup WINDRIVE$ + "SYSTEM.INI", "DRIVERS", "MSVideo", "PWTVRCAP.DRV", "SYS"
RemoveIniKey WINDRIVE$ + "CONTROL.INI", "DRIVERS.DESC", "PWTVCAP.DRV", cmoNone
RemoveIniKey WINDRIVE$ + "CONTROL.INI", "DRIVERS.DESC", "PW91CAP.DRV", cmoNone
CreateIniKeyValue WINDRIVE$ + "CONTROL.INI", "DRIVERS.DESC", "PWTVRCAP.DRV", "Power Window T64V/3DV Video Capture Driver", cmoOverwrite
IniSetAndBakup WINDRIVE$ + "SYSTEM.INI", "DRIVERS", "VIDC.MJPG", "PWJPEG.DRV", "SYS"
CreateIniKeyValue WINDRIVE$ + "CONTROL.INI", "DRIVERS.DESC", "PWJPEG.DRV", "CANOPUS Power Window Motion JPEG Decompressor", cmoOverwrite
END IF
''グループ登録
IF JPMODE <> 0 THEN
GROUP$ = "PowerWindow アプリケーション"
ELSE
GROUP$ = "PowerWindow Application"
END IF
CreateProgmanGroup GROUP$, "", cmoNone
ShowProgmanGroup GROUP$, 1, cmoNone
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "GROUP", GROUP$
IF GetListItem(CHECKSTATES$, 1) = "ON" THEN
IF JPMODE <> 0 THEN
szIcon$ = "リリースノート"
ELSE
szIcon$ = "Release Note"
END IF
CreateProgmanItem GROUP$, szIcon$ , "NOTEPAD.EXE "+MakePath(DEST$,"README.TXT") , "", cmoOverwrite
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "ICON", szIcon$
END IF
IF GetListItem(CHECKSTATES$, 2) = "ON" THEN
CreateProgmanItem GROUP$, "PowerCinema 95", MakePath(DEST$,"PWCINE95.EXE") , "", cmoOverwrite
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "ICON", "PowerCinema 95"
IF DOCFLG = TRUE THEN
IF JPMODE <> 0 THEN
CreateProgmanItem GROUP$, "PowerCinema 95 Manual", MakePath(DEST$,"PWCINE95.DOC") , "", cmoOverwrite
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "ICON", "PowerCinema 95 Manual"
END IF
END IF
END IF
IF GetListItem(CHECKSTATES$, 3) = "ON" THEN
CreateProgmanItem GROUP$, "MPEG Mapper" , MakePath(DEST$,"MPEGC.EXE"), "", cmoOverwrite
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "ICON", "MPEG Mapper"
END IF
IF GetListItem(CHECKSTATES$, 4) = "ON" THEN
CreateProgmanItem GROUP$, "Video Viewer" , MakePath(DEST$,"PWVVIEW.EXE"), "", cmoOverwrite
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "ICON", "Video Viewer"
END IF
IF GetListItem(CHECKSTATES$, 5) = "ON" THEN
CreateProgmanItem GROUP$, "TV Tuner" , MakePath(DEST$,"PWTVRTUN.EXE"), "", cmoOverwrite
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "ICON", "TV Tuner"
END IF
IF JPMODE <> 0 THEN
szIcon$ = "アンインストーラ"
ELSE
szIcon$ = "Uninstaller"
END IF
CreateProgmanItem GROUP$, szIcon$ , MakePath(DEST$,"PWAPUIST.EXE"), "", cmoOverwrite
UninstallFileCounter WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", "ICON", szIcon$
END SUB
'**********************************************
' 内容:
' フルパスの構造体に変換
' 引き数:
' szDir$ - フルパスディレクトリ名
' szFile$ - ファイル名またはディレクトリ名
' 戻り値:
' パス名
'**********************************************
FUNCTION MakePath (szDir$, szFile$) STATIC AS STRING
IF szDir$ = "" THEN
MakePath = szFile$
ELSEIF szFile$ = "" THEN
MakePath = szDir$
ELSEIF MID$(szDir$, LEN(szDir$), 1) = "\" THEN
MakePath = szDir$ + szFile$
ELSE
MakePath = szDir$ + "\" + szFile$
END IF
END FUNCTION
'**********************************************
' 内容:
' Ini内容保管
' 登録あれば、何もしない。
' 引き数:
' szFile$ - フルパスファイル
' szSec$ - セクション
' szKey$ - キー
' szVal$ - 値
' szSecOp$- ディレクトリ
' 戻り値:
' なし
'***********************************************
SUB IniSetAndBakup (szFile$, szSec$, szKey$, szVal$, szSecOp$) STATIC
szLoadBak$ = GetIniKeyString(szFile$, szSec$, szKey$)
szLoad$ = GetIniKeyString(WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", szSecOp$ + szKey$)
IF (szLoad$ = "") OR (szLoad$ <> szLoadBak$) THEN
IF (szLoadBak$ <> szVal$) THEN
CreateIniKeyValue WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", szSecOp$ + szKey$, szLoadBak$, cmoOverwrite
END IF
END IF
CreateIniKeyValue szFile$, szSec$, szKey$, szVal$, cmoOverwrite
END SUB
'**********************************************
' 内容:
' Ini内容保管
' 引き数:
' szFile$ - フルパスファイル
' szSec$ - セクション
' szKey$ - キー
' szVal$ - 値
' szSecOp$- ディレクトリ
' 戻り値:
' なし
'***********************************************
SUB IniSetAndBakupChk (szFile$, szSec$, szKey$, szVal$, szSecOp$) STATIC
IF MPEGDRV = 0 THEN
szLoadBak$ = GetIniKeyString(szFile$, szSec$, szKey$)
szLoad$ = GetIniKeyString(WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", szSecOp$ + szKey$)
IF (szLoad$ = "") OR (szLoad$ <> szLoadBak$) THEN
IF (szLoadBak$ <> szVal$) THEN
CreateIniKeyValue WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", szSecOp$ + szKey$, szLoadBak$, cmoOverwrite
END IF
END IF
CreateIniKeyValue szFile$, szSec$, szKey$, szVal$, cmoOverwrite
ELSE
WinSysDir$ = GetWindowsSysDir()
l& = GetSizeOfFile(WinSysDir$ + "MCIQTZ.DRV")
IF l& <> 0 THEN
szVal$ = "MCIQTZ.DRV"
CreateIniKeyValue WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", szSecOp$ + szKey$, szVal$, cmoOverwrite
ELSE
CreateIniKeyValue WINDRIVE$ + "UNPWCINE.INI", "PowerWindowApp", szSecOp$ + szKey$, "", cmoOverwrite
END IF
CreateIniKeyValue szFile$, szSec$, szKey$, szVal$, cmoOverwrite
END IF
END SUB
'***************************************************
' 内容:
' アンインストールするファイルカウンタの内容保管
' 引き数:
' szFile$ - フルパスファイル
' szSec$ - セクション
' szKey$ - キー
' szVal$ - 値
' 戻り値:
' なし
'***************************************************
SUB UninstallFileCounter (szFile$, szSec$, szKey$, szVal$ ) STATIC
szLoad$ = ""
szLoadBak$ = ""
FOR i% = 0 TO 1000 STEP 1
IF i% < 10 THEN
Number$ = MID$(STR$(i%), 2, 1)
ELSEIF i% < 100 THEN
Number$ = MID$(STR$(i%), 2, 2)
ELSE
Number$ = MID$(STR$(i%), 2, 3)
END IF
szLoadBak$ = GetIniKeyString(szFile$, szSec$, szKey$+Number$)
IF (szLoadBak$ = "") OR (szLoadBak$ = szVal$) THEN
CreateIniKeyValue szFile$, szSec$, szKey$+Number$, szVal$, cmoOverwrite
EXIT FOR
END IF
NEXT i%
END SUB
'***************************************************
' 内容:
' Ini内容保管
' 登録あれば、キー内容に未登録番号(1~9)を追加して保管する
' 引き数:
' szFile$ - フルパスファイル
' szSec$ - セクション
' szKey$ - キー
' szVal$ - 値
' szSecOp$- ディレクトリ
' 戻り値:
' パス名
'***************************************************
SUB IniSetAndStandBakup (szFile$, szSec$, szKey$, szVal$, szSecOp$) STATIC
szLoad$ = GetIniKeyString(szFile$, szSec$, szKey$)
FOR i% = 1 TO 9 STEP 1
Number$ = MID$(STR$(i%), 2, 1)
szLoad$ = GetIniKeyString(szFile$, szSec$, szKey$+Number$)
IF (szLoad$ = "") OR (szLoad$ = szVal$) OR (szLoad$ = "PWTVRCAP.DRV") OR (szLoad$ = "PWTVCAP.DRV") OR (szLoad$ = "PW91CAP.DRV") THEN
RemoveIniKey szFile$, szSec$, szKey$+Number$, cmoNone
END IF
NEXT i%
n% = 1
FOR i% = 1 TO 9 STEP 1
Number$ = MID$(STR$(i%), 2, 1)
szLoad$ = GetIniKeyString(szFile$, szSec$, szKey$+Number$)
IF (szLoad$ <> "") THEN
Number$ = MID$(STR$(n%), 2, 1)
IF szLoad$ <> "" THEN
CreateIniKeyValue szFile$, szSec$, szKey$+Number$, szLoad$, cmoOverwrite
n% = n% + 1
END IF
END IF
NEXT i%
CreateIniKeyValue szFile$, szSec$, szKey$, szVal$, cmoOverwrite
END SUB
'***************************************************
' 内容:
' 必要な情報を取得する。
' 引き数:
' なし
' 戻り値:
' なし
'***************************************************
SUB DefaultLoad STATIC
szIni$ = GetSymbolValue("STF_SRCINFPATH")
IF szIni$ = "" THEN
szIni$ = GetSymbolValue("STF_CWDDIR") + "setup.ini"
END IF
szOp$ = GetIniKeyString(szIni$, "Option", "OPAP" )
VIEWERFLG = FALSE
TUNERFLG = FALSE
if szOP$ = "1" THEN
VIEWERFLG = TRUE
ELSEIF szOP$ = "2" THEN
TUNERFLG = TRUE
ELSEIF szOP$ = "3" THEN
VIEWERFLG = TRUE
TUNERFLG = TRUE
END IF
szOp$ = GetIniKeyString(szIni$, "Option", "OPBD" )
OPBOARD = 0
if szOP$ = "1" THEN
OPBOARD = 1
ELSEIF szOP$ = "2" THEN
OPBOARD = 2
ELSEIF szOP$ = "3" THEN
OPBOARD = 3
END IF
szOp$ = GetIniKeyString(szIni$, "Option", "MPEG" )
MPEGFLG = FALSE
if szOP$ = "1" THEN
MPEGFLG = TRUE
END IF
szOp$ = GetIniKeyString(szIni$, "Option", "VIDEO" )
VIDEOFLG = FALSE
if szOP$ = "1" THEN
VIDEOFLG = TRUE
END IF
szOp$ = GetIniKeyString(szIni$, "Option", "MPEGDRV" )
MPEGDRV = FALSE
if szOP$ = "1" THEN
MPEGDRV = TRUE
END IF
szOp$ = GetIniKeyString(szIni$, "Option", "SP" )
SPFLG = FALSE
if szOP$ = "1" THEN
SPFLG = TRUE
END IF
szOp$ = GetIniKeyString(szIni$, "Option", "CAP" )
CAPFLG = FALSE
if szOP$ = "1" THEN
CAPFLG = TRUE
END IF
szOp$ = GetIniKeyString(szIni$, "Option", "DOC" )
DOCFLG = FALSE
if szOP$ = "1" THEN
DOCFLG = TRUE
END IF
DEST$ = ""
WINDRIVE$ = GetWindowsDir()
i% = GetPowerWindowDir()
IF i% = TRUE THEN
DEST$ = GetSymbolValue("PwDirOut")
END IF
IF DEST$ = "" THEN
DEST$ = MID$(WINDRIVE$, 1, 1) + ":\PWAPP"
END IF
i% = CheckPowerWindow()
IF i% = FALSE THEN
IF JPMODE <> 0 THEN
dlg% = POWERERROR
ELSE
dlg% = POWERERRORUS
END IF
sz$ = UIStartDlg(CUIDLL$, dlg%, "FInfoDlgProc", 0, "")
END
END IF
END SUB