#pragma autorecover
#pragma namespace("\\\\.\\root\\Microsoft\\SqlServer\\ComputerManagement")
instance of __namespace{ name="ms_409";};
#pragma namespace("\\\\.\\root\\Microsoft\\SqlServer\\ComputerManagement\\ms_409")

[AMENDMENT, LOCALE(0x409)] 
class SqlService
{
  [Description("The PathName property contains the fully qualified path to the service binary file that implements the service.\nExample: \\SystemRoot\\System32\\drivers\\afd.sys") : Amended] string BinaryPath;
  [Description("Name of the system that hosts this service.") : Amended] string HostName;
  [Description("The StartMode property indicates the start mode of the Win32 base service. \"Boot\" specifies a device driver started by the operating system loader. This value is valid only for driver services. \"System\" specifies a device driver started by the IoInitSystem function. This value is valid only for driver services. \"Automatic\" specifies a service to be started automatically by the service control manager during system startup. \"Manual\" specifies a service to be started by the service control manager when a process calls the StartService function. \"Disabled\" specifies a service that can no longer be started.") : Amended] uint32 StartMode;
  [Description("The AcceptPause property indicates whether the service can be paused.\nValues: TRUE or FALSE. A value of TRUE indicates the service can be paused.") : Amended] boolean AcceptPause;
  [Description("The AcceptStop property indicates whether the service can be stopped.\nValues: TRUE or FALSE. A value of TRUE indicates the service can be stopped.") : Amended] boolean AcceptStop;
  [Description("The DisplayName property indicates the display name of the service. This string has a maximum length of 256 characters. The name is case-preserved in the Service Control Manager. DisplayName comparisons are always case-insensitive. \nConstraints: Accepts the same value as the Name property.\nExample: Atdisk.") : Amended] string DisplayName;
  [Description("If this service fails to start during startup, the ErrorControl property specifies the severity of the error. The value indicates the action taken by the startup program if failure occurs. All errors are logged by the computer system. The computer system does not notify the user of \"Ignore\" errors. With \"Normal\" errors the user is notified. With \"Severe\" errors, the system is restarted with the last-known-good configuration. Finally, on\"Critical\" errors the system attempts to restart with a good configuration.") : Amended] uint32 ErrorControl;
  [Description("The StartName property indicates the account name under which the service runs. Depending on the service type, the account name may be in the form of \"DomainName\\Username\".The service process will be logged using one of these two forms when it runs. If the account belongs to the built-in domain, \".\\Username\" can be specified. If NULL is specified, the service will be logged on as the LocalSystem account. For kernel or system level drivers, StartName contains the driver object name (that is, \\FileSystem\\Rdr or \\Driver\\Xns) which the input and output (I/O) system uses to load the device driver. Additionally, if NULL is specified, the driver runs with a default object name created by the I/O system based on the service name.\nExample: DWDOM\\Admin.") : Amended] string StartName;
  [Description("The State property indicates the current state of the base service.") : Amended] uint32 State;
  [Description("The ProcessId property specifies the process identifier of the service.\nExample: 324") : Amended] uint32 ProcessId;
  [Description("The ExitCode property specifies a Win32 error code defining any problems encountered in starting or stopping the service. This property is set to ERROR_SERVICE_SPECIFIC_ERROR (1066) when the error is unique to the service represented by this class, and information about the error is available in the ServiceSpecificExitCode member. The service sets this value to NO_ERROR when running, and again upon normal termination.") : Amended] uint32 ExitCode;
  [Description("") : Amended] string Description;
  [Description("Dependent services.") : Amended] string Dependencies[];
  [Description("The StopService method places the service in the stopped state. It returns an integer value of 0 if the service was successfully stopped, 1 if the request is not supported, and any other number to indicate an error.") : Amended] uint32 StopService();
  [Description("The StartService method attempts to place the service into its startup state. It returns one of the following integer values:\n0 - The request was accepted.\n1 - The request is not supported.\n2 - The user did not have the necessary access.\n3 - The service cannot be stopped because other services that are running are dependent on it.\n4 - The requested control code is not valid, or it is unacceptable to the service.\n5 - The requested control code cannot be sent to the service because the state of the service (Win32_BaseService:State) is equal to 0, 1, or 2.\n6 - The service has not been started.\n7 - The service did not respond to the start request in a timely fashion.\n8 - Unknown failure when starting the service.\n9 - The directory path to the service executable was not found.\n10 - The service is already running.\n11 - The database to add a new service is locked.\n12 - A dependency for which this service relies on has been removed from the system.\n13 - The service failed to find the service needed from a dependent service.\n14 - The service has been disabled from the system.\n15 - The service does not have the correct authentication to run on the system.\n16 - This service is being removed from the system.\n17 - There is no execution thread for the service.\n18 - There are circular dependencies when starting the service.\n19 - There is a service running under the same name.\n20 - There are invalid characters in the name of the service.\n21 - Invalid parameters have been passed to the service.\n22 - The account which this service is to run under is either invalid or lacks the permissions to run the service.\n23 - The service exists in the database of services available from the system.\n24 - The service is currently paused in the system.\n") : Amended] uint32 StartService();
  [Description("The PauseService method attempts to place the service in the paused state. It returns an integer value of 0 if the PauseService request was accepted, 1 if the request is not supported, and any other number to indicate an error.") : Amended] uint32 PauseService();
  [Description("The ResumeService method attempts to place the service in the resumed state. It returns an integer value of 0 if the ResumeService request was accepted, 1 if the request is not supported, and any other number to indicate an error.") : Amended] uint32 ResumeService();
  [Description("") : Amended] uint32 SetServiceAccount([in] string ServiceStartName,[in] string ServiceStartPassword);
  [Description("") : Amended] uint32 SetServiceAccountPassword([in] string AccountOldPassword,[in] string AccountNewPassword);
  [Description("") : Amended] uint32 SetStartMode([in] uint32 StartMode);
};

[AMENDMENT, LOCALE(0x409)] 
class SqlServiceAdvancedProperty
{
  [Description("") : Amended] uint32 SetNumericalValue([IN] uint32 NumValue);
  [Description("") : Amended] uint32 SetStringValue([IN] string StrValue);
  [Description("") : Amended] uint32 SetBoolValue([IN] uint32 BoolValue);
};

[AMENDMENT, LOCALE(0x409)] 
class ClientSettings
{
  [Description("") : Amended] uint32 SetDefaults([IN] boolean OverwriteAll);
};

[AMENDMENT, LOCALE(0x409)] 
class ClientNetworkProtocol
{
  [Description("") : Amended] uint32 GetNextOrderValue();
  [Description("") : Amended] uint32 SetOrderValue([IN] uint32 OrderValue);
  [Description("") : Amended] uint32 SetEnable();
  [Description("") : Amended] uint32 SetDisable();
  [Description("") : Amended] uint32 SetProtocolsOrder([IN] string ProtocolOrderList[]);
};

[AMENDMENT, LOCALE(0x409)] 
class ClientNetworkProtocolProperty
{
  [Description("") : Amended] uint32 SetNumericalValue([IN] uint32 NumValue);
  [Description("") : Amended] uint32 SetStringValue([IN] string StrValue);
  [Description("") : Amended] uint32 SetFlag([IN] boolean BoolValue);
};

[AMENDMENT, LOCALE(0x409)] 
class ServerNetworkProtocol
{
  [Description("") : Amended] uint32 SetEnable();
  [Description("") : Amended] uint32 SetDisable();
};

[AMENDMENT, LOCALE(0x409)] 
class ServerNetworkProtocolIPAddress
{
  [Description("") : Amended] uint32 SetEnable();
  [Description("") : Amended] uint32 SetDisable();
};

[AMENDMENT, LOCALE(0x409)] 
class ServerNetworkProtocolProperty
{
  [Description("") : Amended] uint32 SetNumericalValue([IN] uint32 NumValue);
  [Description("") : Amended] uint32 SetStringValue([IN] string StrValue);
  [Description("") : Amended] uint32 SetFlag([IN] boolean BoolValue);
};

[AMENDMENT, LOCALE(0x409)] 
class ServerSettings
{
  [Description("") : Amended] uint32 SetDefaults([IN] boolean OverwriteAll);
  [Description("") : Amended] uint32 GetCurrentCertificate([OUT] string SHA);
  [Description("") : Amended] uint32 SetCurrentCertificate([IN] string SHA);
  [Description("") : Amended] uint32 RemoveCertificate();
  [Description("Gets the current value of the TCP portassociated with the dedicated administrative connection") : Amended] uint32 GetDacTcpPort([OUT] string Port);
  [Description("Sets the current value of the TCP portassociated with the dedicated administrative connection") : Amended] uint32 SetDacTcpPort([IN] string Port);
};

[AMENDMENT, LOCALE(0x409)] 
class ServerSettingsGeneralFlag
{
  [Description("") : Amended] uint32 SetValue([IN] boolean Value);
};

[AMENDMENT, LOCALE(0x409)] 
class ClientSettingsGeneralFlag
{
  [Description("") : Amended] uint32 SetValue([IN] boolean Value);
};
