|
|
1.1 ! root 1: '************************************************************************** ! 2: '* MSSetup Toolkit Sample 3 -- Shared Application Installation ! 3: '************************************************************************** ! 4: ! 5: '$DEFINE DEBUG ''Define for script development/debugging ! 6: ! 7: '$INCLUDE 'setupapi.inc' ! 8: '$INCLUDE 'msdetect.inc' ! 9: '$INCLUDE 'msregdb.inc' ! 10: '$INCLUDE 'msshared.inc' ! 11: ! 12: ! 13: SetTitle "Shared App Example" ! 14: SetBitmap "mscuistf.dll", 1 ! 15: ! 16: szInf$ = GetSymbolValue("STF_SRCINFPATH") ! 17: IF szInf$ = "" THEN ! 18: szInf$ = GetSymbolValue("STF_CWDDIR") + "SAMPLE3.INF" ! 19: END IF ! 20: ! 21: ReadInfFile szInf$ ! 22: ! 23: ! 24: ! 25: szSrcDir$ = GetSymbolValue("STF_SRCDIR") ! 26: ! 27: szShareDir$ = GetWindowsDir() ! 28: IF GetSymbolValue("STF_MODE") = "ADMIN" THEN ! 29: IF IsWindowsShared = 1 THEN ! 30: szShareDir$ = GetWindowsSysDir() ! 31: END IF ! 32: END IF ! 33: ! 34: ! 35: szVer$ = GetSectionKeyVersion("Spell Files", "SpellDll") ! 36: SpellDllPath$ = SearchForLocationForSharedFile("", "MS Proofing Tools", "Spelling 1033,0", 1, szShareDir$ + "msapps\proof\msspell.dll", szVer$) ! 37: ! 38: IF SharedFileNeedsCopying <> 0 THEN ! 39: SpellDatPath$ = SearchForLocationForSharedFile("", "MS Proofing Tools", "Spelling 1033,0", 2, szShareDir$ + "msapps\proof\mssp_am.lex", "99.99.99.99") ! 40: ! 41: AddSpecialFileToCopyList "Spell Files", "SpellDll", szSrcDir$, SpellDllPath$ ! 42: AddSpecialFileToCopyList "Spell Files", "SpellDat", szSrcDir$, SpellDatPath$ ! 43: ELSE ! 44: SpellDatPath$ = SearchForLocationForSharedFile("", "MS Proofing Tools", "Spelling 1033,0", 2, szShareDir$ + "msapps\proof\mssp_am.lex", "0.0.0.0") ! 45: END IF ! 46: ! 47: ! 48: szVer$ = GetSectionKeyVersion("Spell Files", "SpellDll") ! 49: CustDictPath$ = SearchForLocationForSharedFile("", "MS Proofing Tools", "Custom Dict 1", 1, szShareDir$ + "msapps\proof\custom.dic", szVer$) ! 50: ! 51: IF SharedFileNeedsCopying <> 0 THEN ! 52: AddSpecialFileToCopyList "Dict Files", "CustDict", szSrcDir$, CustDictPath$ ! 53: END IF ! 54: ! 55: ! 56: szVer$ = GetSectionKeyVersion("Converter Files", "WorksTC") ! 57: WorksTCPath$ = SearchForLocationForSharedFile("", "MS Text Converters", "MSWorksWin", 2, szShareDir$ + "msapps\textconv\wrkswin.cnv", szVer$) ! 58: ! 59: IF SharedFileNeedsCopying <> 0 THEN ! 60: AddSpecialFileToCopyList "Converter Files", "WorksTC", szSrcDir$, WorksTCPath$ ! 61: END IF ! 62: ! 63: ! 64: szVer$ = GetSectionKeyVersion("Draw Files", "MSDraw") ! 65: MSDrawPath$ = SearchForLocationForSharedFile("MSDraw\protocol\StdFileEditing\Server", "Embedding", "MSDraw", 3, szShareDir$ + "msapps\msdraw\msdraw.exe", szVer$) ! 66: ! 67: IF SharedFileNeedsCopying <> 0 THEN ! 68: AddSpecialFileToCopyList "Draw Files", "MSDraw", szSrcDir$, MSDrawPath$ ! 69: END IF ! 70: ! 71: ! 72: szShareDir$ = "" ! 73: szSrcDir$ = "" ! 74: ! 75: ! 76: DumpCopyList("SAMPLE3.LOG") ! 77: '' CopyFilesInCopyList '''' commented out ! 78: ! 79: ! 80: ! 81: sz$ = SpellDllPath$ + "," + SpellDatPath$ ! 82: CreateIniKeyValue "WIN.INI", "MS Proofing Tools", "Spelling 1033,0", sz$, cmoOverwrite ! 83: ! 84: sz$ = CustDictPath$ ! 85: CreateIniKeyValue "WIN.INI", "MS Proofing Tools", "Custom Dict 1", sz$, cmoOverwrite ! 86: ! 87: sz$ = "Works for Windows 2.0," + WorksTCPath$ + ",doc" ! 88: CreateIniKeyValue "WIN.INI", "MS Text Converters", "MSWorksWin", sz$, cmoOverwrite ! 89: ! 90: ! 91: '$IFDEF REG_DB_ENABLED ! 92: CreateRegKeyValue "MSDraw", "Microsoft Drawing" ! 93: CreateRegKeyValue "MSDraw\protocol\StdFileEditing\Server", MSDrawPath$ ! 94: CreateRegKeyValue "MSDraw\protocol\StdFileEditing\SetDataFormats", "CF_METAFILEPICT" ! 95: CreateRegKeyValue "MSDraw\protocol\StdFileEditing\RequestDataFormats", "CF_METAFILEPICT" ! 96: '$ENDIF '' REG_DB_ENABLED ! 97: ! 98: sz$ = "Drawings from Microsoft Draw, Microsoft Drawing," + MSDrawPath$ + ",picture" ! 99: CreateIniKeyValue "WIN.INI", "Embedding", "MSDraw", sz$, cmoOverwrite ! 100: ! 101: ! 102: QUIT: ! 103: END ! 104:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.