windows-nt/Source/XPSP1/NT/termsrv/admtools/appcmpt/cht/msproj98.cmd
2020-09-26 16:20:57 +08:00

282 lines
8.6 KiB
Batchfile
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

@Echo Off
Rem #########################################################################
Rem
Rem 檢查 %RootDrive% 是否已設定,並將它設定給這個指令檔。
Rem
Call "%SystemRoot%\Application Compatibility Scripts\ChkRoot.Cmd"
If "%_CHKROOT%" == "FAIL" Goto Done
Call "%SystemRoot%\Application Compatibility Scripts\SetPaths.Cmd"
If "%_SETPATHS%" == "FAIL" Goto Done
Set __SharedTools=Shared Tools
If Not "%PROCESSOR_ARCHITECTURE%"=="ALPHA" goto Start0
If Not Exist "%ProgramFiles(x86)%" goto Start0
Set __SharedTools=Shared Tools (x86)
:Start0
Rem #########################################################################
Rem 設定 app VendorName
SET VendorName=Microsoft
Rem #########################################################################
Rem 將校對工具路徑設定到 MS Office 2000 使用的路徑
SET ProofingPath=Proof
Rem #########################################################################
Rem 設定用來存放應用程式安裝根目錄的登錄機碼及其值
SET AppRegKey=HKLM\Software\Microsoft\Office\8.0\Common\InstallRoot
SET AppRegValue=OfficeBin
Rem #########################################################################
Rem 設定用來存放應用程式範本目錄的登錄機碼及其值
SET AppTemplatesRegKey=HKCU\Software\Microsoft\Office\8.0\Common\FileNew\LocalTemplates
SET AppTemplatesRegValue=
Rem #########################################################################
Rem 設定用來存放應用程式自訂目錄路徑名稱的登錄機碼及其值
SET AppCustomDicRegKey=HKLM\Software\Microsoft\%__SharedTools%\Proofing Tools\Custom Dictionaries
SET AppCustomDicRegValue=1
Rem #########################################################################
Rem 設定指定相關的應用程式檔案名稱及路徑名稱
SET CustomDicFile=Custom.Dic
SET AppPathName=Microsoft Project
SET AppWebPathName=Microsoft Project Web
Rem #########################################################################
Rem 設定 MS Office 2000 所使用的預設路徑
SET AppData=%RootDrive%\%APP_DATA%
SET UserTemplatesPath=%AppData%\%VendorName%\%TEMPLATES%
SET UserCustomDicPath=%AppData%\%VendorName%\%ProofingPath%
Rem #########################################################################
Rem 從登錄中取得 Project 98 安裝位置。
Rem 如果找不到,假設這個應用程式並未安裝,並顯示錯誤訊息。
Rem
..\ACRegL %Temp%\Proj98.Cmd PROJINST "%AppRegKey%" "%AppRegValue%" ""
If Not ErrorLevel 1 Goto Cont0
Echo.
Echo 無法從登錄中抓取 Project 98 的安裝位置。
Echo 請確認 Project 98 是否已安裝,然後重新
Echo 執行這個指令檔。
Echo.
Pause
Goto Done
:Cont0
Call %Temp%\Proj98.Cmd
Del %Temp%\Proj98.Cmd >Nul: 2>&1
..\ACRegL %Temp%\Proj98.Cmd PROJROOT "%AppRegKey%" "%AppRegValue%" "STRIPCHAR\1"
If Not ErrorLevel 1 Goto Cont01
Echo.
Echo 無法從登錄中抓取 Project 98 的安裝位置。
Echo 請確認 Project 98 是否已安裝,然後重新
Echo 執行這個指令檔。
Echo.
Pause
Goto Done
:Cont01
Call %Temp%\Proj98.Cmd
Del %Temp%\Proj98.Cmd >Nul: 2>&1
Rem #########################################################################
Rem 從登錄中取得範本路徑名稱
Rem
..\ACRegL %Temp%\Proj98.Cmd TemplatesPathName "%AppTemplatesRegKey%" "%AppTemplatesRegValue%" "STRIPPATH"
If Not ErrorLevel 1 Goto Cont02
SET TemplatesPathName=%TEMPLATES%
Goto Cont03
:Cont02
Call %Temp%\Proj98.Cmd
Del %Temp%\Proj98.Cmd >Nul: 2>&1
:Cont03
Rem #########################################################################
Rem 如果並未安裝 MS Office 97就使用預設路徑
If Not Exist "%RootDrive%\Office97" Goto SetPathNames
Rem #########################################################################
Rem 如果已安裝 MS Office 97就使用 MS Office 97 路徑。
Rem #########################################################################
Rem 從登錄中取得自訂字典的路徑名稱
Rem
..\ACRegL %Temp%\Proj98.Cmd AppData "%AppCustomDicRegKey%" "%AppCustomDicRegValue%" "STRIPCHAR\1"
If Not ErrorLevel 1 Goto Cont04
SET AppData=%RootDrive%\Office97
Goto Cont05
:Cont04
Call %Temp%\Proj98.Cmd
Del %Temp%\Proj98.Cmd >Nul: 2>&1
:Cont05
Rem #########################################################################
Rem 從登錄中取得範本路徑名稱
Rem
..\ACRegL %Temp%\Proj98.Cmd UserTemplatesPath "%AppTemplatesRegKey%" "%AppTemplatesRegValue%" ""
If Not ErrorLevel 1 Goto Cont06
SET UserTemplatesPath=%AppData%\%TemplatesPathName%
Goto Cont07
:Cont06
Call %Temp%\Proj98.Cmd
Del %Temp%\Proj98.Cmd >Nul: 2>&1
:Cont07
SET UserCustomDicPath=%AppData%
:SetPathNames
Rem #########################################################################
Rem 設定使用者及公用路徑名稱
SET CommonCustomDicPath=%PROJINST%
SET CommonTemplatesPath=%PROJROOT%\%TemplatesPathName%
SET UserCustomDicFileName=%UserCustomDicPath%\%CustomDicFile%
SET UserAppTemplatesPath=%UserTemplatesPath%\%AppPathName%
SET UserAppWebTemplatesPath=%UserTemplatesPath%\%AppWebPAthName%
SET CommonAppTemplatesPath=%CommonTemplatesPath%\%AppPathName%
SET CommonAppWebTemplatesPath=%CommonTemplatesPath%\%AppWebPAthName%
Rem #########################################################################
Rem
Rem 如果 Office 97 已安裝Project 98 安裝指令檔
Rem 會將範本移動目前的使用者目錄。
Rem 將它們放在通用區域。Proj98Usr.cmd 可以將範本移回原處。
Rem
If NOT Exist "%UserAppTemplatesPath%" goto skip10
If Exist "%CommonAppTemplatesPath%" goto skip10
xcopy "%UserAppTemplatesPath%" "%CommonAppTemplatesPath%" /E /I /K > Nul: 2>&1
:skip10
If NOT Exist "%UserAppWebTemplatesPath%" goto skip11
If Exist "%CommonAppWebTemplatesPath%" goto skip11
xcopy "%UserAppWebTemplatesPath%" "%CommonAppWebTemplatesPath%" /E /I /K > Nul: 2>&1
:skip11
Rem #########################################################################
Rem
Rem 將 Global.mpt 檔案設成唯讀。
Rem 否則第一個啟動 Project 的使用者會變更 ACLs。
Rem
if Exist "%PROJINST%\Global.mpt" attrib +r "%PROJINST%\Global.mpt"
Rem #########################################################################
Rem
Rem 允許任何人讀取被 Office 97 更新過的系統 DLL。
Rem
If Exist %SystemRoot%\System32\OleAut32.Dll cacls %SystemRoot%\System32\OleAut32.Dll /E /T /G "Authenticated Users":R > NUL: 2>&1
Rem #########################################################################
Rem
Rem 建立 MsForms.Twd 檔案,它是
Rem Powerpoint 及 Excel Add-ins ([檔案] [儲存成 HTML] 等等) 的必需檔案。
Rem 執行這兩種應用程式時,它們將會用適當的檔案來取代含有必要資料的檔案。
Rem
If Exist %systemroot%\system32\MsForms.Twd Goto Cont2
Copy Nul: %systemroot%\system32\MsForms.Twd >Nul:
Cacls %systemroot%\system32\MsForms.Twd /E /P "Authenticated Users":F > Nul: 2>&1
:Cont2
Rem #########################################################################
Rem
Rem 從 [啟動] 功能表中移除 [快速尋找]。
Rem [快速尋找] 會使用大量資源並降低系統效能。
Rem
If Exist "%COMMON_STARTUP%\Microsoft Find Fast.lnk" Del "%COMMON_STARTUP%\Microsoft Find Fast.lnk"
Rem #########################################################################
Rem
Rem 變更登錄機碼,將路徑指向使用者所指定的
Rem 目錄。
Rem
Rem 如果目前不是安裝模式,就變更成安裝模式。
Set __OrigMode=Install
ChgUsr /query > Nul:
if Not ErrorLevel 101 Goto Begin
Set __OrigMode=Exec
Change User /Install > Nul:
:Begin
..\acsr "#ROOTDRIVE#" "%RootDrive%" Template\msproj98.Key msproj98.tm1
..\acsr "#__SharedTools#" "%__SharedTools%" msproj98.tm1 msproj98.tm2
Del msproj98.tm1 >Nul: 2>&1
..\acsr "#USERCUSTOMDICFILE#" "%UserCustomDicFileName%" msproj98.tm2 msproj98.Key
Del msproj98.tm2 >Nul: 2>&1
regini msproj98.key > Nul:
Rem If original mode was execute, change back to Execute Mode.
If "%__OrigMode%" == "Exec" Change User /Execute > Nul:
Set __OrigMode=
Rem #########################################################################
Rem
Rem 更新 proj97Usr.Cmd 來反映實際的安裝目錄,
Rem 並將其加入 UsrLogn2.Cmd 指令檔。
Rem
..\acsr "#USERTEMPLATESPATH#" "%UserTemplatesPath%" ..\Logon\Template\prj98Usr.Cmd prj98Usr.tm1
..\acsr "#USERCUSTOMDICPATH#" "%UserCustomDicPath%" prj98Usr.tm1 prj98Usr.tm2
Del prj98Usr.tm1 >Nul: 2>&1
..\acsr "#COMMONTEMPLATESPATH#" "%CommonTemplatesPath%" prj98Usr.tm2 prj98Usr.tm1
Del prj98Usr.tm2 >Nul: 2>&1
..\acsr "#COMMONCUSTOMDICPATH#" "%CommonCustomDicPath%" prj98Usr.tm1 prj98Usr.tm2
Del prj98Usr.tm1 >Nul: 2>&1
..\acsr "#CUSTOMDICNAME#" "%CustomDicFile%" prj98Usr.tm2 prj98Usr.tm1
Del prj98Usr.tm2 >Nul: 2>&1
..\acsr "#APPPATHNAME#" "%AppPathName%" prj98Usr.tm1 prj98Usr.tm2
Del prj98Usr.tm1 >Nul: 2>&1
..\acsr "#APPWEBPATHNAME#" "%AppWebPathName%" prj98Usr.tm2 ..\Logon\prj98Usr.Cmd
Del prj98Usr.tm2 >Nul: 2>&1
FindStr /I prj98Usr %SystemRoot%\System32\UsrLogn2.Cmd >Nul: 2>&1
If Not ErrorLevel 1 Goto Skip1
Echo Call prj98Usr.Cmd >> %SystemRoot%\System32\UsrLogn2.Cmd
:Skip1
Rem #########################################################################
Echo.
Echo 為了能讓 Project 98 正確操作,目前已登
Echo 入的使用者必須先登出,再重新登入,才能
Echo 執行應用程式。
Echo.
Echo Microsoft Project 98 多使用者應用程式調整處理完成
Pause
:done