455 lines
15 KiB
INI
455 lines
15 KiB
INI
;/////////////////////////////////////////////////////////////////////////////
|
|
;// !!! READ THIS BEFORE YOU CHANGE THIS FILE !!!
|
|
;// ---------------------------------------------
|
|
;//
|
|
;// This file is used by BaseCluster in Whistler to form, join or cleanup
|
|
;// a cluster.
|
|
;//
|
|
;// Changing anything in the form or join path will most probably also affect the
|
|
;// upgrade path, so IF YOU CHANGE THIS FILE, CHECK IF YOU NEED TO CHANGE CLUSOCM
|
|
;// AS WELL. Too many bugs have been caused by this not being done.
|
|
;//
|
|
;// Also, if you add anything to the form or join path, do not forget to add the
|
|
;// converse action to the cleanup path. For example, if you create the cluster service
|
|
;// in the ClusSvc_Create section, do not forget to delete the service in the
|
|
;// ClusSvc_Cleanup section. This is needed so the system is left in good
|
|
;// state if we need to roll back the install. It will also be used to clean
|
|
;// up the node after it has been evicted from a cluster.
|
|
;//
|
|
;/////////////////////////////////////////////////////////////////////////////
|
|
|
|
[Version]
|
|
Signature="$Windows NT$"
|
|
|
|
|
|
|
|
;/////////////////////////////////////////////////////////////////////////////
|
|
;// !README!
|
|
;//
|
|
;// 1. 32768 maps to the cluster installation directory.
|
|
;// 2. 32769 maps to the localquorum directory
|
|
;//
|
|
;/////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
;/////////////////////////////////////////////////////////////////////////////
|
|
;// Destination directories
|
|
;/////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
[DestinationDirs]
|
|
ClusDB_Cleanup_DelFiles=32768
|
|
|
|
|
|
;/////////////////////////////////////////////////////////////////////////////
|
|
;// ClusSvc Section
|
|
;/////////////////////////////////////////////////////////////////////////////
|
|
|
|
[ClusSvc_Create]
|
|
AddService=ClusSvc,,ClusSvc_Install,ClusSvc_EventLog_Install
|
|
AddReg=ClusSvc_Install_Reg
|
|
DelReg=NodeEvictedFlag_Reg
|
|
|
|
|
|
[ClusSvc_Install]
|
|
DisplayName = %ClusSvc.DisplayName%
|
|
ServiceType = 0x10 ; SERVICE_WIN32_OWN_PROCESS
|
|
StartType = 2 ; SERVICE_AUTO_START
|
|
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
|
|
ServiceBinary = %32768%\clussvc.exe
|
|
Dependencies = ClusNet,RpcSs,W32Time,NetMan
|
|
|
|
|
|
[ClusSvc_Install_Reg]
|
|
HKLM,System\CurrentControlSet\Services\ClusSvc,Description,0x0,"%ClusSvc.Description%"
|
|
|
|
|
|
[ClusSvc_EventLog_Install]
|
|
AddReg=ClusSvc_EventLog_AddReg
|
|
|
|
|
|
[ClusSvc_EventLog_AddReg]
|
|
; 0x10001 maps to FLG_ADDREG_TYPE_DWORD.
|
|
; 0x20000 maps to FLG_ADDREG_TYPE_EXPAND_SZ.
|
|
HKR,,CategoryMessageFile,0x20000,%32768%\ClusSvc.exe
|
|
HKR,,CategoryCount,0x10001,29
|
|
HKR,,EventMessageFile,0x20000,%32768%\ClusSvc.exe
|
|
HKR,,TypesSupported,0x10001,7
|
|
|
|
|
|
|
|
[ClusSvc_Cleanup]
|
|
DelService=ClusSvc
|
|
DelReg=ClusSvc_DelReg, NodeEvictedFlag_Reg
|
|
|
|
|
|
|
|
[NodeEvictedFlag_Reg]
|
|
HKLM,"Software\Microsoft\Windows NT\CurrentVersion\Cluster Server",NodeHasBeenEvicted
|
|
|
|
|
|
[ClusSvc_DelReg]
|
|
HKLM,System\CurrentControlSet\Services\ClusSvc
|
|
HKLM,"Software\Microsoft\Windows NT\CurrentVersion\Cluster Server",ClusterFirstRun
|
|
HKLM,"Software\Microsoft\Windows NT\CurrentVersion\Cluster Server",ClusterDatabaseCopyInProgress
|
|
|
|
|
|
[ClusSvc_EventLog_DelReg]
|
|
;
|
|
; this section isn't enabled for uninstall. This allows admins to continue to view
|
|
; clussvc entries in the system event log. Necessary to validate that evict processing
|
|
; occurred correctly
|
|
;
|
|
HKLM,System\CurrentControlSet\Services\EventLog\System\ClusSvc
|
|
|
|
|
|
|
|
;/////////////////////////////////////////////////////////////////////////////
|
|
;// ClusNet Section
|
|
;/////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
[ClusNet_Create]
|
|
AddService=ClusNet,,ClusNet_Install,ClusNet_EventLog_Install
|
|
AddReg=ClusNet_Winsock_Registration
|
|
|
|
|
|
[ClusNet_Install]
|
|
DisplayName = %ClusNet.DisplayName%
|
|
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
|
|
StartType = 3 ; SERVICE_DEMAND_START
|
|
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
|
|
ServiceBinary = %12%\clusnet.sys
|
|
LoadOrderGroup = Tdi
|
|
Dependencies = Tcpip
|
|
|
|
|
|
[ClusNet_EventLog_Install]
|
|
AddReg=ClusNet_EventLog_AddReg
|
|
|
|
|
|
[ClusNet_EventLog_AddReg]
|
|
; 0x20000 maps to FLG_ADDREG_TYPE_EXPAND_SZ.
|
|
HKR,,EventMessageFile,0x20000,"%32768%\ClusSvc.exe;%systemroot%\system32\iologmsg.dll"
|
|
HKR,,TypesSupported,0x10001,7
|
|
|
|
|
|
; Part of the ClusNet WinSock registration is done using SetupAPI. The rest is done
|
|
; in the code using the registry API.
|
|
[ClusNet_Winsock_Registration]
|
|
HKLM,System\CurrentControlSet\Services\ClusNet\Parameters\Winsock,HelperDllName,0x20000,%32768%\WSHClus.DLL
|
|
|
|
; The flag 0x00010008 maps to ( FLG_ADDREG_TYPE_MULTI_SZ | FLG_ADDREG_APPEND )
|
|
HKLM,System\CurrentControlSet\Services\WinSock\Parameters,Transports,0x00010008,ClusNet
|
|
|
|
|
|
|
|
; Part of the cleanup is also done by the code.
|
|
[ClusNet_Cleanup]
|
|
DelService=ClusNet
|
|
DelReg=ClusNet_DelReg,ClusNet_EventLog_DelReg
|
|
|
|
|
|
[ClusNet_EventLog_DelReg]
|
|
; 0x20000 maps to FLG_ADDREG_TYPE_EXPAND_SZ.
|
|
HKLM,System\CurrentControlSet\Services\EventLog\System\ClusNet
|
|
|
|
|
|
[ClusNet_DelReg]
|
|
HKLM,System\CurrentControlSet\Services\ClusNet
|
|
|
|
|
|
|
|
;/////////////////////////////////////////////////////////////////////////////
|
|
;// ClusDisk Section
|
|
;/////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
[ClusDisk_Create]
|
|
AddReg=ClusDisk_Reg,ClusDisk_Reg_LargeIrp
|
|
|
|
|
|
|
|
[ClusDisk_Cleanup]
|
|
DelReg=ClusDisk_Reg
|
|
; GorN says that it is not necessary to delete the LargeIrpStackLocations value.
|
|
|
|
|
|
|
|
[ClusDisk_Reg]
|
|
HKLM,System\CurrentControlSet\Services\ClusDisk\Parameters\Signatures
|
|
|
|
|
|
[ClusDisk_Reg_LargeIrp]
|
|
; Generate 1 extra IRP stack location for ClusDisk
|
|
HKLM,System\CurrentControlSet\Control\Session Manager\I/O System,LargeIrpStackLocations,0x10001,9
|
|
|
|
|
|
|
|
;/////////////////////////////////////////////////////////////////////////////
|
|
;// Miscellaneous Section
|
|
;/////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
[Node_Create]
|
|
AddReg=ExtensionSnapin_Reg,DebuggerRetries_Reg
|
|
|
|
|
|
[Node_Cleanup]
|
|
DelReg=ExtensionSnapin_Reg
|
|
; Ian Service says that it is ok to not delete the DebuggerRetries_Reg entries.
|
|
|
|
|
|
|
|
[ExtensionSnapin_Reg]
|
|
; Enable Computer Management SnapIn extension
|
|
HKLM,System\CurrentControlSet\Control\Server Applications,{12E7ED01-5540-11D1-9AA4-00C04FB93A80},,%ExtSnapInName%
|
|
|
|
|
|
[DebuggerRetries_Reg]
|
|
; Set system debugger retries down to 1
|
|
HKLM,System\CurrentControlSet\Control\Session Manager,Debugger Retries,0x10001,1
|
|
|
|
|
|
;/////////////////////////////////////////////////////////////////////////////
|
|
;// ClusDB Section
|
|
;/////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
[ClusDB_Form]
|
|
AddReg=ClusDB_Form_Template_AddReg
|
|
|
|
|
|
[ClusDB_Form_Template_AddReg]
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
; Tree under HKLM\Cluster ;
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
|
|
|
|
HKR,Nodes
|
|
HKR,Groups
|
|
HKR,Resources
|
|
HKR,ResourceTypes
|
|
HKR,Quorum
|
|
HKR,Networks
|
|
HKR,NetworkInterfaces
|
|
|
|
|
|
;Cluster object admin extension
|
|
HKR,,AdminExtensions,0x10000,"{4EC90FB0-D0BB-11CF-B5EF-00A0C90AB505}"
|
|
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
; Tree under HKLM\Cluster\Groups ;
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
HKR,Groups\ClusterGroupGUIDPlaceholder,Name,0x0,%ClusterGroupName%
|
|
HKR,Groups\ClusterGroupGUIDPlaceholder,PersistentState,0x00010001,1
|
|
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
; Tree under HKLM\Cluster\Resources ;
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
;
|
|
; Cluster Name Resource
|
|
;
|
|
HKR,Resources\ClusterNameResGUIDPlaceHolder,Name,0x0,%ClusterNameResName%
|
|
HKR,Resources\ClusterNameResGUIDPlaceHolder,Type,0x0,%NetName.TypeName%
|
|
HKR,Resources\ClusterNameResGUIDPlaceHolder,Flags,0x00010001,1
|
|
HKR,Resources\ClusterNameResGUIDPlaceHolder,IsAlivePollInterval,0x00010001,60000
|
|
HKR,Resources\ClusterNameResGUIDPlaceHolder,LooksAlivePollInterval,0x00010001,5000
|
|
|
|
;
|
|
; Cluster IP Address Resource
|
|
;
|
|
HKR,Resources\ClusterIPAddrResGUIDPlaceHolder,Name,0x0,%ClusterIPAddrResName%
|
|
HKR,Resources\ClusterIPAddrResGUIDPlaceHolder,Type,0x0,%IpAddr.TypeName%
|
|
HKR,Resources\ClusterIPAddrResGUIDPlaceHolder,Flags,0x00010001,1
|
|
HKR,Resources\ClusterIPAddrResGUIDPlaceHolder,IsAlivePollInterval,0x00010001,60000
|
|
HKR,Resources\ClusterIPAddrResGUIDPlaceHolder,LooksAlivePollInterval,0x00010001,5000
|
|
|
|
;
|
|
; LocalQuorum Resource
|
|
;
|
|
HKR,Resources\LocalQuorumResGUIDPlaceHolder,Name,0x0,%LocalQuorumResName%
|
|
HKR,Resources\LocalQuorumResGUIDPlaceHolder,Type,0x0,%LocalQuorum.TypeName%
|
|
HKR,Resources\LocalQuorumResGUIDPlaceHolder,Flags,0x00010001,1
|
|
HKR,Resources\LocalQuorumResGUIDPlaceHolder,IsAlivePollInterval,0x00010001,60000
|
|
HKR,Resources\LocalQuorumResGUIDPlaceHolder,LooksAlivePollInterval,0x00010001,5000
|
|
HKR,Resources\LocalQuorumResGUIDPlaceHolder\Parameters,Path,0x0,"%32769%\"
|
|
|
|
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
; Tree under HKLM\Cluster\ResourceTypes ;
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
|
|
HKR,ResourceTypes\%GenApp.TypeName%,DllName,,"clusres.dll"
|
|
HKR,ResourceTypes\%GenApp.TypeName%,Name,,%GenApp.DisplayName%
|
|
HKR,ResourceTypes\%GenApp.TypeName%,IsAlivePollInterval,0x10001,60000
|
|
HKR,ResourceTypes\%GenApp.TypeName%,LooksAlivePollInterval,0x10001,5000
|
|
HKR,ResourceTypes\%GenApp.TypeName%,AdminExtensions,0x10000,"{4EC90FB0-D0BB-11CF-B5EF-00A0C90AB505}"
|
|
|
|
HKR,ResourceTypes\%GenSvc.TypeName%,DllName,,"clusres.dll"
|
|
HKR,ResourceTypes\%GenSvc.TypeName%,Name,,%GenSvc.DisplayName%
|
|
HKR,ResourceTypes\%GenSvc.TypeName%,IsAlivePollInterval,0x10001,60000
|
|
HKR,ResourceTypes\%GenSvc.TypeName%,LooksAlivePollInterval,0x10001,5000
|
|
HKR,ResourceTypes\%GenSvc.TypeName%,AdminExtensions,0x10000,"{4EC90FB0-D0BB-11CF-B5EF-00A0C90AB505}"
|
|
|
|
HKR,ResourceTypes\%NetName.TypeName%,DllName,,"clusres.dll"
|
|
HKR,ResourceTypes\%NetName.TypeName%,Name,,%NetName.DisplayName%
|
|
HKR,ResourceTypes\%NetName.TypeName%,IsAlivePollInterval,0x10001,60000
|
|
HKR,ResourceTypes\%NetName.TypeName%,LooksAlivePollInterval,0x10001,5000
|
|
HKR,ResourceTypes\%NetName.TypeName%,AdminExtensions,0x10000,"{4EC90FB0-D0BB-11CF-B5EF-00A0C90AB505}"
|
|
|
|
HKR,ResourceTypes\%PhysDisk.TypeName%,DllName,,"clusres.dll"
|
|
HKR,ResourceTypes\%PhysDisk.TypeName%,Name,,%PhysDisk.DisplayName%
|
|
HKR,ResourceTypes\%PhysDisk.TypeName%,IsAlivePollInterval,0x10001,60000
|
|
HKR,ResourceTypes\%PhysDisk.TypeName%,LooksAlivePollInterval,0x10001,5000
|
|
HKR,ResourceTypes\%PhysDisk.TypeName%,AdminExtensions,0x10000,"{4EC90FB0-D0BB-11CF-B5EF-00A0C90AB505}"
|
|
|
|
HKR,ResourceTypes\%PrtSplSvc.TypeName%,DllName,,"clusres.dll"
|
|
HKR,ResourceTypes\%PrtSplSvc.TypeName%,Name,,%PrtSplSvc.DisplayName%
|
|
HKR,ResourceTypes\%PrtSplSvc.TypeName%,IsAlivePollInterval,0x10001,60000
|
|
HKR,ResourceTypes\%PrtSplSvc.TypeName%,LooksAlivePollInterval,0x10001,5000
|
|
HKR,ResourceTypes\%PrtSplSvc.TypeName%,AdminExtensions,0x10000,"{4EC90FB0-D0BB-11CF-B5EF-00A0C90AB505}"
|
|
|
|
HKR,ResourceTypes\%FileShr.TypeName%,DllName,,"clusres.dll"
|
|
HKR,ResourceTypes\%FileShr.TypeName%,Name,,%FileShr.DisplayName%
|
|
HKR,ResourceTypes\%FileShr.TypeName%,IsAlivePollInterval,0x10001,60000
|
|
HKR,ResourceTypes\%FileShr.TypeName%,LooksAlivePollInterval,0x10001,5000
|
|
HKR,ResourceTypes\%FileShr.TypeName%,AdminExtensions,0x10000,"{4EC90FB0-D0BB-11CF-B5EF-00A0C90AB505}"
|
|
|
|
HKR,ResourceTypes\%IpAddr.TypeName%,DllName,,"clusres.dll"
|
|
HKR,ResourceTypes\%IpAddr.TypeName%,Name,,%IpAddr.DisplayName%
|
|
HKR,ResourceTypes\%IpAddr.TypeName%,IsAlivePollInterval,0x10001,60000
|
|
HKR,ResourceTypes\%IpAddr.TypeName%,LooksAlivePollInterval,0x10001,5000
|
|
HKR,ResourceTypes\%IpAddr.TypeName%,AdminExtensions,0x10000,"{4EC90FB0-D0BB-11CF-B5EF-00A0C90AB505}"
|
|
|
|
HKR,ResourceTypes\%WinsSvc.TypeName%,DllName,,"clnetres.dll"
|
|
HKR,ResourceTypes\%WinsSvc.TypeName%,Name,,%WinsSvc.DisplayName%
|
|
HKR,ResourceTypes\%WinsSvc.TypeName%,IsAlivePollInterval,0x10001,120000
|
|
HKR,ResourceTypes\%WinsSvc.TypeName%,LooksAlivePollInterval,0x10001,60000
|
|
HKR,ResourceTypes\%WinsSvc.TypeName%,AdminExtensions,0x10000,"{AB4B1105-DCD6-11D2-84B7-009027239464}"
|
|
|
|
HKR,ResourceTypes\%DhcpSvc.TypeName%,DllName,,"clnetres.dll"
|
|
HKR,ResourceTypes\%DhcpSvc.TypeName%,Name,,%DhcpSvc.DisplayName%
|
|
HKR,ResourceTypes\%DhcpSvc.TypeName%,IsAlivePollInterval,0x10001,60000
|
|
HKR,ResourceTypes\%DhcpSvc.TypeName%,LooksAlivePollInterval,0x10001,5000
|
|
HKR,ResourceTypes\%DhcpSvc.TypeName%,AdminExtensions,0x10000,"{AB4B1105-DCD6-11D2-84B7-009027239464}"
|
|
|
|
HKR,ResourceTypes\%MSMQ.TypeName%,DllName,,"mqclus.dll"
|
|
HKR,ResourceTypes\%MSMQ.TypeName%,Name,,%MSMQ.DisplayName%
|
|
HKR,ResourceTypes\%MSMQ.TypeName%,IsAlivePollInterval,0x10001,120000
|
|
HKR,ResourceTypes\%MSMQ.TypeName%,LooksAlivePollInterval,0x10001,60000
|
|
|
|
HKR,ResourceTypes\%MSDTC.TypeName%,DllName,,"mtxclu.dll"
|
|
HKR,ResourceTypes\%MSDTC.TypeName%,Name,,%MSDTC.DisplayName%
|
|
HKR,ResourceTypes\%MSDTC.TypeName%,IsAlivePollInterval,0x10001,120000
|
|
HKR,ResourceTypes\%MSDTC.TypeName%,LooksAlivePollInterval,0x10001,60000
|
|
|
|
HKR,ResourceTypes\%LocalQuorum.TypeName%,DllName,,"clusres.dll"
|
|
HKR,ResourceTypes\%LocalQuorum.TypeName%,Name,,%LocalQuorum.DisplayName%
|
|
HKR,ResourceTypes\%LocalQuorum.TypeName%,IsAlivePollInterval,0x10001,60000
|
|
HKR,ResourceTypes\%LocalQuorum.TypeName%,LooksAlivePollInterval,0x10001,5000
|
|
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
; Tree under HKLM\Cluster\Resources ;
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
HKR,Quorum,Path,0x0,"%32769%\"
|
|
|
|
|
|
|
|
[ClusDB_Cleanup]
|
|
DelFiles=ClusDB_Cleanup_DelFiles
|
|
|
|
|
|
[ClusDB_Cleanup_DelFiles]
|
|
ClusDB
|
|
ClusDB.log
|
|
|
|
|
|
;/////////////////////////////////////////////////////////////////////////////
|
|
;// Strings
|
|
;/////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
[Strings]
|
|
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
; Cluster Registry Keys And Values (Non-localizable) ;
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
|
|
;
|
|
; Resource Type Names (Non-localizable)
|
|
;
|
|
GenApp.TypeName="Generic Application"
|
|
GenSvc.TypeName="Generic Service"
|
|
NetName.TypeName="Network Name"
|
|
PhysDisk.TypeName="Physical Disk"
|
|
PrtSplSvc.TypeName="Print Spooler"
|
|
FileShr.TypeName="File Share"
|
|
IpAddr.TypeName="IP Address"
|
|
LocalQuorum.TypeName="Local Quorum"
|
|
DhcpSvc.TypeName="DHCP Service"
|
|
WinsSvc.TypeName="WINS Service"
|
|
MSMQ.TypeName="MSMQ"
|
|
MSDTC.TypeName="Distributed Transaction Coordinator"
|
|
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
; Other Non-localizable Strings ;
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;
|
|
; Localizable Strings ;
|
|
;;;;;;;;;;;;;;;;;;;;;;;
|
|
|
|
;
|
|
; ClusSvc Strings
|
|
;
|
|
ClusSvc.DisplayName="Cluster Service"
|
|
ClusSvc.Description="Enables servers to work together as a cluster to keep server-based applications highly available, regardless of individual component failures."
|
|
|
|
|
|
;
|
|
; ClusNet Strings
|
|
;
|
|
ClusNet.DisplayName="Cluster Network Driver"
|
|
|
|
|
|
;
|
|
; Cluster Database Strings
|
|
;
|
|
ClusterGroupName="Cluster Group"
|
|
ClusterNameResName="Cluster Name"
|
|
ClusterIPAddrResName="Cluster IP Address"
|
|
LocalQuorumResName="Local Quorum"
|
|
|
|
|
|
;
|
|
; Resource Type Display Names
|
|
;
|
|
GenApp.DisplayName="Generic Application"
|
|
GenSvc.DisplayName="Generic Service"
|
|
NetName.DisplayName="Network Name"
|
|
PhysDisk.DisplayName="Physical Disk"
|
|
PrtSplSvc.DisplayName="Print Spooler"
|
|
FileShr.DisplayName="File Share"
|
|
IpAddr.DisplayName="IP Address"
|
|
LocalQuorum.DisplayName="Local Quorum"
|
|
DhcpSvc.DisplayName="DHCP Service"
|
|
WinsSvc.DisplayName="WINS Service"
|
|
MSMQ.DisplayName="Message Queuing"
|
|
MSDTC.DisplayName="Distributed Transaction Coordinator"
|
|
|
|
|
|
;
|
|
; Miscellaneous Strings
|
|
;
|
|
ExtSnapInName="Cluster Service"
|