Annotation of mstools/win32s/setup/32sinst.mst, revision 1.1.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.