; ; CLUSOCM.INF - This file is used by Optional Components Manager and clusocm.dll ; which it calls to install and uninstall the Cluster service ; component(s). ; ; Note that the following cluster files are installed by text mode setup because ; they are required by NT Workstation and Server as well as Enterprise: ; ; clusapi.dll ; resutils.dll ; cluster.exe ; msclus.dll ; ; In addition, the following files get installed by text mode setup because they ; must be available in the %windir%\system32 directory (along with sysocmgr.exe) ; during GUI mode setup: ; ; clusocm.dll ; clusocm.inf ; [Version] Signature= "$Windows NT$" LayoutFile=layout.inf ; ; At this time, 2/27/98, there is a single Cluster service component. ; [Optional Components] Cluster ;-[ main install section ]------------------------------------------------------ [cluster] OptionDesc = %ClusterComponentDesc% Tip = %ClusterComponentTip% CopyFiles = ClusterSystemFiles, ClusterDriverFiles, ClusterFiles, ClusterAdminFiles DelFiles = NT4.files.root, NT4.files.private AddReg = ClusterInstallState.reg, RegisterCLUSIIS4withEvenLog.reg, MMCSnapin.Add.Reg, ClusterLog.Add.Reg Uninstall = Cluster.uninstall Needs = iis_common ; IconIndex = 10 ;-[ main uninstall section ]---------------------------------------------------- ; ; This section gets used when the functions that process OC_QUEUE_FILE_OPS and ; OC_COMPLETE_INSTALLATION detect that Cluster is to be uninstalled. ; [Cluster.uninstall] DelFiles = ClusterSystemFiles, ClusterDriverFiles, ClusterFiles, ClusterAdminFiles, ClusterUninstallFiles DelFiles = ClusterUpgradeFiles, ClusterUpgradeReplaceOnlyFiles DelFiles = NT4.files.root, NT4.files.private ; ; This DelReg entry is used to remove the registry entries that were explicitly ; created by clusocm.dll. ; DelReg = WelcomeUI.Uninstall.reg, ClusterInstallState.Uninstall.reg, RegisterCLUSIIS4withEvenLog.Uninstall.reg, MMCSnapin.Del.Reg, ClusterLog.Del.Reg ; ; This DelReg entry is used to remove the registry entries that were created ; by cluscfg.exe. Note that the entries in the Cluster hive are not explicitly ; deleted. My theory is that it is adequate to unload the Cluster hive and ; remove the Cluster hive file. ; DelReg = ClusCfg.reg ; ; This DelReg entry exists solely to remove the "Uninstall" reg key on systems that ; were perviously upgraded from NT4. Note that this key should have been removed ; during the upgrade process, but may not have been. DelReg = NT4.reg ; ; Delete the services ; DelService = ClusSvc DelService = ClusDisk DelService = ClusNet DelService = TimeServ ;-[ special section to add Cluster configuration to the Welcome UI task list ]-- ; ; This AddReg entry is not included in the [cluster] section because the registry ; entries are created conditionally in function QueueAddRegistryOperations when ; OC_COMPLETE_INSTALLATION message are processed. [WelcomeUI] AddReg = WelcomeUI.reg ;-[ The next two sections are special sections for operations to be performed on UPGRADE ]--------- ; This section performs the file copy operations on files like iisclus3.dll ; which need to be copied during an upgrade only if they already existed before ; the upgrade. Note, only the [CopyFiles] subsection of this section will be ; processed and files that do not already exist are not copied. (Vvasu 7/15/1999) [UpgradeReplaceOnly] CopyFiles = ClusterUpgradeReplaceOnlyFiles [Upgrade] ; This section is processed only during an upgrade. Note, a RenFiles subsection under this ; section is currently not being processed in CClusocmApp::QueueInstallFileOperations. (Vvasu 7/15/1999) CopyFiles = ClusterUpgradeFiles DelFiles = NT4.files.Startup, NT4.files.AdminTools, NT4.files.HelpFiles AddReg = Upgrade.Add.reg, MMCSnapin.Add.Reg DelReg = NT4.reg, Upgrade.Del.reg ;-[ special section for operations to be performed on UPGRADE when the Cluster service ]--------- ;-[ is registered with the service control manager. ]--------- ; ; This will remove the registry keys that add "Configure Cluster service" to the ; Welcome UI "to do" list. [Upgrade.ClusSvc.Registered] DelReg = WelcomeUI.Uninstall.reg ;-[ destination directories ]--------------------------------------------------- ; ; Note that the Directory Ids 33001 through 33006 were chosen to be larger than ; DIRID_USER as defined in setupapi.h. Those Directory Ids will be associated ; with particular directories when OC_QUEUE_FILE_OPS is processed. [DestinationDirs] ClusterSystemFiles = 11 ;\Windows\System32 ClusterDriverFiles = 12 ;\Windows\System32\drivers NT4.files.Startup = 10,%DestinationDirNT4Startup% NT4.files.AdminTools = 10,%DestinationDirNT4AdminTools% ClusterFiles = 33001 NT4.files.HelpFiles = 33001 ClusterUpgradeFiles = 33002 ClusterUpgradeReplaceOnlyFiles = 33002 ClusterAdminFiles = 33003 ClusterUninstallFiles = 33004 NT4.files.root = 33005 NT4.files.private = 33006 ;-[ file copy sections ]-------------------------------------------------------- [ClusterSystemFiles] clussprt.dll,,,1 [ClusterSystemFiles.Security] "D:P(A;;GRGX;;;BU)(A;;GA;;;BA)(A;;GA;;;SY)(A;;GRGX;;;WD)" [ClusterDriverFiles] clusdisk.sys,,,1 clusnet.sys,,,1 [ClusterFiles] clussvc.exe,,,1 timeserv.exe,,,1 clusres.dll,,,1 resrcmon.exe,,,1 wshclus.dll,,,1 cluscfg.exe,,,1 cluster.inf,,,1 clusiis4.dll,,,1 clnetres.dll,,,1 [ClusterAdminFiles] cladmwiz.dll,,,1 cluadmin.exe,,,1 cluadmex.dll,,,1 cluadmmc.dll,,,1 debugex.dll,,,1 iisclex3.dll,,,1 clnetrex.dll,,,1 mqclus.dll,,,1 [ClusterUpgradeReplaceOnlyFiles] iisclus3.dll,,,1 [ClusterUpgradeFiles] mqclus.dll,,,1 [ClusterUninstallFiles] ; ; These files are created when cluscfg.exe runs. ; ; cluadmin.cnt may be left from some old installation. ; ;setup.hlp clusdb,,,1 clusdb.log,,,1 cluster.log,,,1 cluadmin.cnt,,,1 ; ; These files are part of an NT 4 Cluster Server installation. Cluadmin.cnt ; may also remain from a previous Windows 2000 installation. ; [NT4.files.root] clusprxy.exe,,,1 rpcltccl.dll,,,1 rpcltscl.dll,,,1 setup.exe,,,1 setup.hlp,,,1 cluadmin.cnt,,,1 [NT4.files.private] security.dll,,,1 [NT4.files.Startup] %NT4StartupFileToRemove%,,,1 [NT4.files.AdminTools] %NT4AdminToolsFileToRemove%,,,1 [NT4.files.HelpFiles] ; This file is in the %windir%\cluster directory in NT4 but in the %windir%\help ; directory in Win2000. So, the old file should be deleted during an upgrade. cluadmin.hlp,,,1 cluscfg.hlp,,,1 ;-[ registry alterations ]---------------------------------------------------------- [WelcomeUI.reg] ; The following two registry keys are used to add the Cluster configuration program ; to the Welcome UI task list. As per Sharon Montgomery on 12/18/98 Server Solutions ; uses those same reg keys. ; Note that the value in the fourth field, 0x0, maps to FLG_ADDREG_TYPE_SZ. HKLM,"Software\Microsoft\Windows NT\CurrentVersion\Setup\OCManager\ToDoList\Cluster","Title",0x0,%ToDoListTitle% ; Note that the value in the fourth field, 0x00020000, maps to FLG_ADDREG_TYPE_EXPAND_SZ. HKLM,"Software\Microsoft\Windows NT\CurrentVersion\Setup\OCManager\ToDoList\Cluster","ConfigCommand",0x00020000,"%windir%\cluster\cluscfg.exe" ; These are additional keys required by Server Solutions. HKLM,"Software\Microsoft\Windows NT\CurrentVersion\SrvWiz","Home",0x10001,3 HKCU,"Software\Microsoft\Windows NT\CurrentVersion\Setup\Welcome","SrvWiz",0x10001,1 HKCU,"Software\Microsoft\Windows NT\CurrentVersion\Explorer\tips","Show",0x10001,1 [WelcomeUI.Uninstall.reg] HKLM,"Software\Microsoft\Windows NT\CurrentVersion\Setup\OCManager\ToDoList\Cluster" [ClusterInstallState.reg] ; The following registry key is used to indicate that the Cluster Setup OCM DLL ; believes that it has completed successfully. Note that the value of eInstallStateFilesCopied ; maps to (DWORD) 1. ; Note that the value in the fourth field, 0x10001, maps to FLG_ADDREG_TYPE_DWORD. HKLM,"Software\Microsoft\Windows NT\CurrentVersion\Cluster Server","ClusterInstallationState",0x10001,1 [ClusterLog.Add.Reg] ; Enable cluster logging by setting the appropriate environment variables. ; Note, a WM_SETTINGCHANGE message has to be broadcast to all top level windows in the system ; during a standalone installation to allow applications to see this change. See Knowledge Base article Q104011. HKLM,System\CurrentControlSet\Control\Session Manager\Environment,ClusterLog,0x20000,%SystemRoot%\cluster\cluster.log [ClusterLog.Del.Reg] ; Disable cluster logging. HKLM,System\CurrentControlSet\Control\Session Manager\Environment,ClusterLog [ClusterInstallState.Uninstall.reg] HKLM,"Software\Microsoft\Windows NT\CurrentVersion\Cluster Server" [RegisterCLUSIIS4withEvenLog.reg] ; The following registry keys are used to register ClusIIS4.dll with the eventlog. HKLM,System\CurrentControlSet\Services\EventLog\Application\CLUSIIS4,"EventMessageFile",0x00020000,"%SystemRoot%\cluster\clusiis4.dll" HKLM,System\CurrentControlSet\Services\EventLog\Application\CLUSIIS4,"TypesSupported",0x00010001,0x7 [RegisterCLUSIIS4withEvenLog.Uninstall.reg] HKLM,System\CurrentControlSet\Services\EventLog\Application\CLUSIIS4 [ClusCfg.reg] ; The registry keys listed in this section are created when cluscfg.exe runs. ; Additional registry keys that are created inthe Cluster hive are not explicitly ; listed here. My theory is that it is sufficient to unload the Cluster hive and ; delete the Cluster hive file. ; ; Cluster rpc transport ; HKLM,Software\Microsoft\Rpc\ClientProtocols,ncadg_cluster HKLM,Software\Microsoft\Rpc\ServerProtocols,ncadg_cluster ; ; Cluster Service ; HKLM,System\CurrentControlSet\Services\ClusSvc ; ; Time Service ; HKLM,System\CurrentControlSet\Services\TimeServ ; ; ClusDisk ; HKLM,System\CurrentControlSet\Services\ClusDisk ; ; ClusNet ; HKLM,System\CurrentControlSet\Services\ClusNet HKLM,Software\Microsoft\Windows\CurrentVersion\App Paths\CluAdmin.exe HKCU,Software\Microsoft\Cluster Administrator [NT4.reg] ; This section exists to facilitate removal of registry keys that remain from ; previous NT 4 Cluster Server installations. HKLM,"Software\Microsoft\Windows\CurrentVersion\Uninstall\Microsoft Cluster Server" [Upgrade.Add.reg] ; The registry keys in this section must be revised when upgrading from NT 4.0 to ; NT 5.0. Failure to update these registry keys will result in the inability of ; the cluster service to start. ; ; Note that additional registry operations requiring run time information may be ; performed programatically in OnOcCompleteInstallation. At this time, on upgrade, ; HKLM\System\CurrentControlSet\Services\ClusSvc\ImagePath gets set to the path ; to the cluster service queried from the Service Control Manager. This is done in ; order to handle upgrading a version of Cluster service that was previously ; installed somewhere other than the default location. ; Note that 0x10000 maps to FLG_ADDREG_TYPE_MULTI_SZ. ; For Whistler (5.1), the WMI service dependency is no longer required, hence it was ; removed from the list below. (charlie wickham - 4-17-00) ; Replace the existing key. HKLM,"System\CurrentControlSet\Services\ClusSvc","DependOnService",0x10000,"ClusNet" ; Append to the existing key. Note that 0x10008 maps to FLG_ADDREG_APPEND for REG_MULTI_SZ. HKLM,"System\CurrentControlSet\Services\ClusSvc","DependOnService",0x10008,"RpcSs" HKLM,"System\CurrentControlSet\Services\ClusSvc","DependOnService",0x10008,"W32Time" HKLM,"System\CurrentControlSet\Services\ClusSvc","DependOnService",0x10008,"NetMan" ;Since Beta 2 of NT 5 Clustering disabled version checking by default, we need to enable ;it now. This is done by setting the service parameter NoVersionCheck to 0. HKLM,"System\CurrentControlSet\Services\ClusSvc\Parameters","NoVersionCheck",0x10000,0 [Upgrade.Del.reg] ; The following two keys are not needed in Windows 2000. HKLM,"Software\Microsoft\Rpc\ClientProtocols\ncadg_cluster" HKLM,"Software\Microsoft\Rpc\ServerProtocols\ncadg_cluster" [MMCSnapin.Add.Reg] ; ; This registry entry makes the MMC snap-in appear on remote machine administering this cluster node ; CluAdMMC.DLL also has to be registered to enable the snap-in on this node. ; HKLM,System\CurrentControlSet\Control\Server Applications,{12E7ED01-5540-11D1-9AA4-00C04FB93A80},,%ExtSnapInName% ; Unregister the MMC extension snap-in. [MMCSnapin.Del.Reg] HKLM,System\CurrentControlSet\Control\Server Applications,{12E7ED01-5540-11D1-9AA4-00C04FB93A80} [Strings] ClusterComponentDesc = "Cluster Service" ClusterComponentTip = "Enables servers to work together as a cluster to keep server-based applications highly available, regardless of individual component failures." DestinationDirNT4Startup = "profiles\all users\start menu\programs\startup" DestinationDirNT4AdminTools = "profiles\all users\start menu\programs\administrative tools" NT4StartupFileToRemove = "Windows NT Server, Enterprise Edition Installer.cmd" NT4AdminToolsFileToRemove = "Enterprise Edition Installer.lnk" ExtSnapInName="Cluster Service" ToDoListTitle = "Configure Cluster service" MSMQ.LTypeName="Message Queuing" ; ; Resource Type Names (Non-Localizable) ; MSMQ.TypeName="MSMQ" MSDTC.TypeName="Distributed Transaction Coordinator"