Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

202 lines
6.5 KiB

@Echo Off
Rem #########################################################################
Rem
Rem 验证 CMD 扩展名是否已启用
Rem
if "A%cmdextversion%A" == "AA" (
call cmd /e:on /c netcom40.cmd
) else (
goto ExtOK
)
goto Done
:ExtOK
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
Rem #########################################################################
Rem
Rem 获取 NetScape 版本(4.5x 跟 4.0x 的不一样)
Rem
..\ACRegL "%Temp%\NS4VER.Cmd" NS4VER "HKLM\Software\Netscape\Netscape Navigator" "CurrentVersion" "STRIPCHAR(1"
If Not ErrorLevel 1 Goto Cont0
Echo.
Echo 无法从注册表检索 Netscape Communicator 4 版本。
Echo 请验证 Communicator 是否已经安装,并再次
Echo 运行这个脚本。
Echo.
Pause
Goto Done
:Cont0
Call "%Temp%\NS4VER.Cmd"
Del "%Temp%\NS4VER.Cmd" >Nul: 2>&1
if /i "%NS4VER%" LSS "4.5 " goto NS40x
Rem #########################################################################
Rem Netscape 4.5x
Rem
Rem 从注册表获取 Netscape Communicator 4.5 的安装位置。
Rem 如果找不到,则假定 Communicator 没有安装并
Rem 显示错误消息。
Rem
..\ACRegL "%Temp%\NS45.Cmd" NS40INST "HKCU\Software\Netscape\Netscape Navigator\Main" "Install Directory" "Stripchar\1"
If Not ErrorLevel 1 Goto Cont1
Echo.
Echo 无法从注册表检索 Netscape Communicator 4.5 安装位置。
Echo 请验证 Communicator 是否已经安装,并再次运行
Echo 这个脚本。
Echo.
Pause
Goto Done
:Cont1
Call "%Temp%\NS45.Cmd"
Del "%Temp%\NS45.Cmd" >Nul: 2>&1
Rem #########################################################################
Rem
Rem 更新 Com40Usr.Cmd 来反映默认 NetScape 用户目录并
Rem 将其添加到 UsrLogn2.Cmd 脚本
Rem
..\acsr "#NSUSERDIR#" "%ProgramFiles%\Netscape\Users" ..\Logon\Template\Com40Usr.Cmd ..\Logon\Com40Usr.tmp
..\acsr "#NS40INST#" "%NS40INST%" ..\Logon\Com40Usr.tmp ..\Logon\Com40Usr.tm2
..\acsr "#NS4VER#" "4.5x" ..\Logon\Com40Usr.tm2 ..\Logon\Com40Usr.Cmd
Rem #########################################################################
Rem
Rem 复制 "quick launch" 图标到 Netscape 安装目录以便
Rem 将它们复制到每个用户的配置文件目录中
Rem
If Exist "%UserProfile%\%App_Data%\Microsoft\Internet Explorer\Quick Launch\Netscape Composer.lnk" copy "%UserProfile%\%App_Data%\Microsoft\Internet Explorer\Quick Launch\Netscape Composer.lnk" "%NS40INST%"
If Exist "%UserProfile%\%App_Data%\Microsoft\Internet Explorer\Quick Launch\Netscape Messenger.lnk" copy "%UserProfile%\%App_Data%\Microsoft\Internet Explorer\Quick Launch\Netscape Messenger.lnk" "%NS40INST%"
If Exist "%UserProfile%\%App_Data%\Microsoft\Internet Explorer\Quick Launch\Netscape Navigator.lnk" copy "%UserProfile%\%App_Data%\Microsoft\Internet Explorer\Quick Launch\Netscape Navigator.lnk" "%NS40INST%"
goto DoUsrLogn
:NS40x
Rem #########################################################################
Rem Netscape 4.0x
Rem
Rem 从注册表获取 Netscape Communicator 4.5 的安装位置。
Rem 如果找不到,则假定 Communicator 没有安装并
Rem 显示错误消息。
Rem
..\ACRegL "%Temp%\NS40.Cmd" NS40INST "HKCU\Software\Netscape\Netscape Navigator\Main" "Install Directory" ""
If Not ErrorLevel 1 Goto Cont2
Echo.
Echo 无法从注册表检索 Netscape Communicator 4 安装位置。
Echo 请验证 Communicator 已经安装,并重新运行
Echo 这个脚本。
Echo.
Pause
Goto Done
:Cont2
Call "%Temp%\NS40.Cmd"
Del "%Temp%\NS40.Cmd" >Nul: 2>&1
Rem #########################################################################
Rem
Rem 将默认配置文件从管理员的主目录复制到一个
Rem 已知位置。在登录期间,这个配置文件会被复制
Rem 到每个用户的目录。如果全局默认配置文件已存在,不要将
Rem 其改写。否则,管理员可能会在以后运行这个脚本时
Rem 将所有个人信息移到全局默认配置文件。
Rem
If Exist %RootDrive%\NS40 Goto Cont3
Echo.
Echo%RootDrive%\NS40 中找不到默认配置文件。请运行
Echo 用户配置文件管理器并创建一个名为 "Default" 的配置文件。
Echo 出现输入配置文件路径的提示时,请用上面显示的路径。
Echo 不要填写名称和电子邮件名称项目。如果存在别的配置文件,
Echo 则将它们删除。完成这些步骤后,重新运行
Echo 这个脚本。
Echo.
Pause
Goto Done
:Cont3
If Exist "%NS40INST%\DfltProf" Goto Cont4
Xcopy "%RootDrive%\NS40" "%NS40INST%\DfltProf" /E /I /K >NUL: 2>&1
:Cont4
Rem #########################################################################
Rem
Rem 从用户配置文件管理器的“开始”菜单快捷方式
Rem 删除用户的读取权。这防止普通用户添加新的用户
Rem 配置文件。但管理员依旧可以运行用户配置文件管理器。
Rem
If Not Exist "%COMMON_PROGRAMS%\Netscape Communicator\Utilities\User Profile Manager.Lnk" Goto Cont5
Cacls "%COMMON_PROGRAMS%\Netscape Communicator\Utilities\User Profile Manager.Lnk" /E /R "Authenticated Users" >Nul: 2>&1
Cacls "%COMMON_PROGRAMS%\Netscape Communicator\Utilities\User Profile Manager.Lnk" /E /R "Users" >Nul: 2>&1
Cacls "%COMMON_PROGRAMS%\Netscape Communicator\Utilities\User Profile Manager.Lnk" /E /R "Everyone" >Nul: 2>&1
:Cont5
If Not Exist "%COMMON_PROGRAMS%\Netscape Communicator Professional Edition\Utilities\User Profile Manager.Lnk" Goto Cont6
Cacls "%COMMON_PROGRAMS%\Netscape Communicator Professional Edition\Utilities\User Profile Manager.Lnk" /E /R "Authenticated Users" >Nul: 2>&1
Cacls "%COMMON_PROGRAMS%\Netscape Communicator Professional Edition\Utilities\User Profile Manager.Lnk" /E /R "Users" >Nul: 2>&1
Cacls "%COMMON_PROGRAMS%\Netscape Communicator Professional Edition\Utilities\User Profile Manager.Lnk" /E /R "Everyone" >Nul: 2>&1
:Cont6
Rem #########################################################################
Rem
Rem 更新 Com40Usr.Cmd 来反映实际安装目录并
Rem 将其添加到 UsrLogn2.Cmd 脚本
Rem
..\acsr "#PROFDIR#" "%NS40INST%\DfltProf" ..\Logon\Template\Com40Usr.Cmd ..\Logon\Com40Usr.tmp
..\acsr "#NS4VER#" "4.0x" ..\Logon\Com40Usr.tmp ..\Logon\Com40Usr.Cmd
:DoUsrLogn
del ..\Logon\Com40Usr.tmp >Nul: 2>&1
del ..\Logon\Com40Usr.tm2 >Nul: 2>&1
FindStr /I Com40Usr %SystemRoot%\System32\UsrLogn2.Cmd >Nul: 2>&1
If Not ErrorLevel 1 Goto Skip1
Echo Call Com40Usr.Cmd >> %SystemRoot%\System32\UsrLogn2.Cmd
:Skip1
Echo.
Echo 要保证 Netscape Communicator 的正常运行,在运行任何
Echo 应用程序之前,目前登录的用户必须先注销,再
Echo 重新登录
Echo.
Echo Netscape Communicator 4 多用户应用程序调整已结束
Pause
:done