Annotation of mstools/win32s/setup/32sinst.mst, revision 1.1

1.1     ! root        1: '**************************************************************************
        !             2: '*                       MSSetup Toolkit Sample 1
        !             3: '**************************************************************************
        !             4: 
        !             5: '' $DEFINE DEBUG  ''Define for script development/debugging
        !             6: 
        !             7: '$INCLUDE 'setupapi.inc'
        !             8: '$INCLUDE 'msdetect.inc'
        !             9: 
        !            10: ''Dialog ID's
        !            11: CONST WELCOME       = 100
        !            12: CONST ASKQUIT       = 200
        !            13: CONST DESTPATH      = 300
        !            14: CONST EXITFAILURE   = 400
        !            15: CONST EXITQUIT      = 600
        !            16: CONST EXITSUCCESS   = 700
        !            17: CONST OPTIONS       = 800
        !            18: CONST BADPATH       = 6400
        !            19: 
        !            20: CONST HELPWELCOME   = 1000
        !            21: CONST VERPATH       = 1100
        !            22: CONST EXITFAILNOTWIN31 = 1200
        !            23: CONST EXITFAILNOTENH = 1300
        !            24: CONST FREECELLINST  = 1400
        !            25: CONST FREECELLPATH  = 1500
        !            26: CONST HELPFREECELL  = 1600
        !            27: 
        !            28: 
        !            29: ''Bitmap ID
        !            30: CONST LOGO = 1
        !            31: 
        !            32: GLOBAL DESTSYS$      ''Windows\System directory.
        !            33: GLOBAL DEST32S$      ''Windows\System\Win32s directory
        !            34: GLOBAL DESTFREE$     ''Freecell directory
        !            35: 
        !            36: DECLARE SUB Install
        !            37: DECLARE SUB UpdateSystemIni
        !            38: DECLARE SUB RebootSystem
        !            39: DECLARE FUNCTION MakePath (szDir$, szFile$) AS STRING
        !            40: DECLARE FUNCTION MakeSystemIni LIB "INIUPD.DLL" (arg1$, arg2$) AS INTEGER
        !            41: DECLARE FUNCTION RestartWindows LIB "INIUPD.DLL" (arg1$) AS INTEGER
        !            42: 
        !            43: INIT:
        !            44:     CUIDLL$ = "mscuistf.dll"            ''Custom user interface dll
        !            45:     HELPPROC$ = "FHelpDlgProc"          ''Help dialog procedure
        !            46: 
        !            47:     SetBitmap CUIDLL$, LOGO
        !            48:     SetTitle "Microsoft Win32s Setup Program"
        !            49: 
        !            50:     szInf$ = GetSymbolValue("STF_SRCINFPATH")
        !            51:     IF szInf$ = "" THEN
        !            52:        szInf$ = GetSymbolValue("STF_CWDDIR") + "32sinst.inf"
        !            53:     END IF
        !            54:     ReadInfFile szInf$
        !            55: 
        !            56:     DESTSYS$ = GetWindowsSysDir()
        !            57:     DEST32S$ = DESTSYS + "WIN32S\"
        !            58: 
        !            59: '$IFDEF DEBUG
        !            60:     i% = SetSizeCheckMode(scmOnIgnore)    '' could use scmOff; def = scmOnFatal
        !            61:     WinDrive$ = MID$(GetWindowsDir, 1, 1)
        !            62:     IF IsDriveValid(WinDrive$) = 0 THEN
        !            63:        i% = DoMsgBox("Windows drive ('"+WinDrive$+"') is not a valid drive.", "DEBUG", MB_TASKMODAL+MB_ICONHAND+MB_OK)
        !            64:        GOTO QUIT
        !            65:     END IF
        !            66: '$ENDIF ''DEBUG
        !            67: 
        !            68: CHECK:
        !            69:     IF GetWindowsMajorVersion < 3 THEN
        !            70:        ExitCode% = EXITFAILNOTWIN31
        !            71:        GOTO QUIT
        !            72:     END IF
        !            73:     IF GetWindowsMajorVersion = 3 AND GetWindowsMinorVersion < 1 THEN
        !            74:        ExitCode% = EXITFAILNOTWIN31
        !            75:        GOTO QUIT
        !            76:     END IF
        !            77:     IF GetWindowsMode < 2  THEN     '' Not Enhanced or Windows NT
        !            78:        ExitCode% = EXITFAILNOTENH
        !            79:        GOTO QUIT
        !            80:     END IF
        !            81:     ExitCode% = EXITSUCCESS
        !            82: 
        !            83: 
        !            84: WELCOME:
        !            85:     sz$ = UIStartDlg(CUIDLL$, WELCOME, "FInfoDlgProc", HELPWELCOME, HELPPROC$)
        !            86:     IF sz$ = "CONTINUE" THEN
        !            87:        UIPop 1
        !            88:     ELSE
        !            89:        GOSUB ASKQUIT
        !            90:        GOTO WELCOME
        !            91:        END IF
        !            92: 
        !            93: 
        !            94: GETWIN32SPATH:
        !            95:     SetSymbolValue "EditTextIn", DESTSYS$
        !            96:     SetSymbolValue "EditFocus", "END"
        !            97: 
        !            98: GETPATHL1:
        !            99:     sz$ = UIStartDlg(CUIDLL$, VERPATH, "FDispDlgProc", HELPWELCOME, HELPPROC$)
        !           100: 
        !           101:     IF sz$ = "CONTINUE" THEN
        !           102:        IF IsDirWritable(DESTSYS$) = 0 THEN
        !           103:            GOSUB BADPATH
        !           104:            GOTO GETPATHL1
        !           105:        END IF
        !           106:        UIPop 1
        !           107:     ELSEIF sz$ = "REACTIVATE" THEN
        !           108:        GOTO GETPATHL1
        !           109:     ELSEIF sz$ = "BACK" THEN
        !           110:        UIPop 1
        !           111:        GOTO WELCOME
        !           112:     ELSE
        !           113:        GOSUB ASKQUIT
        !           114:        GOTO GETPATHL1
        !           115:     END IF
        !           116: 
        !           117: COPYFILES:
        !           118: 
        !           119:     CreateDir DEST32S$, cmoNone
        !           120:     OpenLogFile MakePath(DEST32S$, "W32SSET.LOG"), 0
        !           121: 
        !           122:     Install
        !           123:     UpdateSystemIni
        !           124: 
        !           125:     CloseLogFile
        !           126: 
        !           127: FREECELL:
        !           128:     sz$ = UIStartDlg(CUIDLL$, FREECELLINST, "FInfoDlgProc",0, "")
        !           129:     IF sz$ = "CONTINUE" THEN
        !           130:        UIPop 1
        !           131:     ELSE
        !           132:        GOTO QUIT
        !           133:     END IF
        !           134: 
        !           135: GETFREEPATH:
        !           136:     DESTFREE$ = MID$(DESTSYS$,1,3) + "WIN32APP\FREECELL\"
        !           137:     SetSymbolValue "EditTextIn", DESTFREE$
        !           138:     SetSymbolValue "EditFocus", "END"
        !           139: 
        !           140: GETFREEPATHL1:
        !           141:     sz$ = UIStartDlg(CUIDLL$, FREECELLPATH, "FEditDlgProc", HELPFREECELL, HELPPROC$)
        !           142: 
        !           143:     IF sz$ = "CONTINUE" THEN
        !           144:        DESTFREE$ = GetSymbolValue("EditTextOut")
        !           145: 
        !           146:     ''Validate new path.
        !           147:        IF IsDirWritable(DESTFREE$) = 0 THEN
        !           148:                GOSUB BADPATH
        !           149:                GOTO GETFREEPATHL1
        !           150:        END IF
        !           151:        UIPop 1
        !           152: 
        !           153:        GOTO COPYFREECELL
        !           154:     ELSEIF sz$ = "REACTIVATE" THEN
        !           155:        GOTO GETFREEPATHL1
        !           156:     ELSEIF sz$ = "EXIT" THEN
        !           157:        UIPop 1
        !           158:        GOTO QUIT
        !           159:     END IF
        !           160: 
        !           161: COPYFREECELL:
        !           162:     ClearCopyList
        !           163:     CreateDir DESTFREE$, cmoNone
        !           164: 
        !           165:     OpenLogFile MakePath(DEST32S$, "SETUP.LOG"), 0
        !           166: 
        !           167:     SrcDir$ = GetSymbolValue("STF_SRCDIR")
        !           168:     WriteToLogFile ""
        !           169:     WriteToLogFile "  User chose as destination directory: '" + DESTFREE$ + "'"
        !           170:     WriteToLogFile ""
        !           171:     WriteToLogFile "May have had to create the directory: " + DESTFREE$
        !           172:     WriteToLogFile ""
        !           173: 
        !           174:     AddSectionFilesToCopyList "Win32appFreecell", SrcDir$, DESTFREE$
        !           175:     CopyFilesInCopyList
        !           176: 
        !           177:     CreateProgmanGroup "Win32 Applications", "", cmoNone
        !           178:     ShowProgmanGroup   "Win32 Applications", 1, cmoNone
        !           179:     CreateProgmanItem  "Win32 Applications", "Freecell", DESTFREE$ + "FREECELL.EXE", "", cmoOverwrite
        !           180: 
        !           181:     CloseLogFile
        !           182: 
        !           183: 
        !           184: 
        !           185: QUIT:
        !           186:     ON ERROR GOTO ERRQUIT
        !           187:     IF ERR = 0 THEN
        !           188:        dlg% = ExitCode%
        !           189:     ELSEIF ERR = STFQUIT THEN
        !           190:        dlg% = EXITQUIT
        !           191:     ELSE
        !           192:        dlg% = EXITFAILURE
        !           193:     END IF
        !           194: 
        !           195: QUITL1:
        !           196:     sz$ = UIStartDlg(CUIDLL$, dlg%, "FInfo0DlgProc", 0, "")
        !           197:     IF sz$ = "REACTIVATE" THEN
        !           198:        GOTO QUITL1
        !           199:     END IF
        !           200:     UIPop 1
        !           201: 
        !           202:     RebootSystem
        !           203: 
        !           204:     END
        !           205: 
        !           206: ERRQUIT:
        !           207:     i% = DoMsgBox("Setup sources were corrupted!", "Setup Message", MB_OK+MB_TASKMODAL+MB_ICONHAND)
        !           208:     END
        !           209: 
        !           210: 
        !           211: 
        !           212: BADPATH:
        !           213:     sz$ = UIStartDlg(CUIDLL$, BADPATH, "FInfo0DlgProc", 0, "")
        !           214:     IF sz$ = "REACTIVATE" THEN
        !           215:        GOTO BADPATH
        !           216:     END IF
        !           217:     UIPop 1
        !           218:     RETURN
        !           219: 
        !           220: 
        !           221: 
        !           222:   ASKQUIT:
        !           223:     sz$ = UIStartDlg(CUIDLL$, ASKQUIT, "FQuitDlgProc", 0, "")
        !           224: 
        !           225:     IF sz$ = "EXIT" THEN
        !           226:        UIPopAll
        !           227:        ERROR STFQUIT
        !           228:     ELSEIF sz$ = "REACTIVATE" THEN
        !           229:        GOTO ASKQUIT
        !           230:     ELSE
        !           231:        UIPop 1
        !           232:     END IF
        !           233:     RETURN
        !           234: 
        !           235: 
        !           236: 
        !           237: '**
        !           238: '** Purpose:
        !           239: '**     Builds the copy list and performs all installation operations.
        !           240: '** Arguments:
        !           241: '**     none.
        !           242: '** Returns:
        !           243: '**     none.
        !           244: '*************************************************************************
        !           245: SUB Install STATIC
        !           246: 
        !           247:     SrcDir$ = GetSymbolValue("STF_SRCDIR")
        !           248: 
        !           249:     WriteToLogFile ""
        !           250:     WriteToLogFile "  User chose as destination directory: '" + DESTSYS$ + "'"
        !           251:     WriteToLogFile ""
        !           252:     WriteToLogFile "May have had to create the directory: " + DESTSYS$
        !           253:     WriteToLogFile ""
        !           254: 
        !           255:     AddSectionFilesToCopyList "WindowsSystem", SrcDir$, DESTSYS$
        !           256:     AddSectionFilesToCopyList "WindowsSystemWin32s", SrcDir$, DESTSYS$ + "WIN32S\"
        !           257: 
        !           258:     t% = RestartWindows( GetWindowsSysDir() + "OLECLI.DLL" )
        !           259:     SetRestartDir GetWindowsDir()
        !           260:     CopyFilesInCopyList
        !           261: 
        !           262: END SUB
        !           263: 
        !           264: SUB UpdateSystemIni STATIC
        !           265: 
        !           266:     VxDPath$ = DEST32S$ + "W32S.386"
        !           267:     SystemIniPath$ = GetWindowsDir()
        !           268: 
        !           269:     t% = MakeSystemIni(SystemIniPath$, VxdPath$)
        !           270: 
        !           271: END SUB
        !           272: 
        !           273: SUB RebootSystem STATIC
        !           274: 
        !           275:     i% = RestartListEmpty()
        !           276:     i% = ExitExecRestart()
        !           277: 
        !           278: END SUB
        !           279: 
        !           280: 
        !           281: '**
        !           282: '** Purpose:
        !           283: '**     Appends a file name to the end of a directory path,
        !           284: '**     inserting a backslash character as needed.
        !           285: '** Arguments:
        !           286: '**     szDir$  - full directory path (with optional ending "\")
        !           287: '**     szFile$ - filename to append to directory
        !           288: '** Returns:
        !           289: '**     Resulting fully qualified path name.
        !           290: '*************************************************************************
        !           291: FUNCTION MakePath (szDir$, szFile$) STATIC AS STRING
        !           292:     IF szDir$ = "" THEN
        !           293:        MakePath = szFile$
        !           294:     ELSEIF szFile$ = "" THEN
        !           295:        MakePath = szDir$
        !           296:     ELSEIF MID$(szDir$, LEN(szDir$), 1) = "\" THEN
        !           297:        MakePath = szDir$ + szFile$
        !           298:     ELSE
        !           299:        MakePath = szDir$ + "\" + szFile$
        !           300:     END IF
        !           301: END FUNCTION

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.