@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