////////////////////////////////////////////////////////////////////////////// // // Copyright (c) 1999-2001 Microsoft Corporation // // Module Name: // ClusCfgWizard.idl // // Description: // IDL source for Cluster Configuration Wizard. // This file will be processed by the MIDL tool to produce the // type library (ClusCfgWizard.tlb) and marshalling code. // ////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////// // Imported Files ////////////////////////////////////////////////////////////////////////////// import "oaidl.idl"; import "ocidl.idl"; ////////////////////////////////////////////////////////////////////////////// // Forward Declarations ////////////////////////////////////////////////////////////////////////////// interface IClusCfgWizard; ////////////////////////////////////////////////////////////////////////////// // Type Definitions ////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////// // Interface Definitions ////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////// // // interface IClusCfgWizard // // Description: // The IClusCfgWizard interface provides the functions required to launch // the Cluster Configuration Wizard in either Create Cluster or Add // Cluster Nodes mode. // ////////////////////////////////////////////////////////////////////////////// [ object, uuid(2EB57A3B-DA8D-4B56-97CF-A3191BF8FD5B), dual, helpstring("IClusCfgWizard Interface"), pointer_default(unique) ] interface IClusCfgWizard : IDispatch { ////////////////////////////////////////////////////////////////////////// // // STDMETHOD // CreateCluster() // // Description: // Launch the Cluster Wizard in Create Cluster mode. // // Parameters // ParentHwndIn // Handle to the parent window (default NULL). If not NULL, // the wizard will be positionned in the center of this window. // // pfDoneOut // Returns TRUE if committed, FALSE if cancelled. // // Return Values: // S_OK // The call succeeded. // // other HRESULTs // The call failed. // ////////////////////////////////////////////////////////////////////////// [ id( 1 ), helpstring( "method CreateCluster" ) ] HRESULT CreateCluster( [ in, defaultvalue( 0 ) ] HWND ParentHwndIn , [ out, retval ] BOOL * pfDoneOut ); ////////////////////////////////////////////////////////////////////////// // // STDMETHOD // AddClusterNodes() // // Description: // Launch the Cluster Wizard in Add Cluster Nodes mode. // // Parameters // ParentHwndIn // Handle to the parent window (default NULL). If not NULL, the // wizard will be positionned in the center of this window. // // pfDoneOut // Returns TRUE if committed, FALSE if cancelled. // // Return Values: // S_OK // The call succeeded. // // other HRESULTs // The call failed. // ////////////////////////////////////////////////////////////////////////// [ id( 2 ), helpstring( "method AddClusterNodes" ) ] HRESULT AddClusterNodes( [ in, defaultvalue( 0 ) ] HWND ParentHwndIn , [ out, retval ] BOOL * pfDoneOut ); ////////////////////////////////////////////////////////////////////////// // // PROPERTY // ClusterName // // Description: // Set a default value for the cluster name if Create Cluster mode. // Provide the mandatory name of the cluster before calling // AddClusterNodes. Return the cluster name for a newly created // cluster. This must be a Fully-Qualified Domain Name (DNS FQDN) // for the cluster. The "domain" default will be determined from // this string. // // Return Values: // S_OK // The call succeeded. // // other HRESULTs // The call failed. // ////////////////////////////////////////////////////////////////////////// [ propget, id( 5 ), helpstring( "property ClusterName" ) ] HRESULT ClusterName( [ out, retval ] BSTR *pbstrFQDNNameOut ); [ propput, id( 5 ), helpstring( "property ClusterName" ) ] HRESULT ClusterName( [ in ] BSTR bstrFQDNNameIn ); ////////////////////////////////////////////////////////////////////////// // // PROPERTY // ServiceAccountUserName // // Description: // Set a default value for the user name in the cluster service account. // Return the value set by the wizard. // The default property value is NULL. // // Return Values: // S_OK // The call succeeded. // // other HRESULTs // The call failed. // ////////////////////////////////////////////////////////////////////////// [ propget, id( 6 ), helpstring( "property ServiceAccountUserName" ) ] HRESULT ServiceAccountUserName( [ out, retval ] BSTR * pbstrAccountNameOut ); [ propput, id( 6 ), helpstring( "property ServiceAccountUserName" ) ] HRESULT ServiceAccountUserName( [ in ] BSTR bstrAccountNameIn ); ////////////////////////////////////////////////////////////////////////// // // PROPERTY // ServiceAccountPassword // // Description: // Set a default value for the password in the cluster service account. // Return the value set by the wizard. // The default property value is NULL. // // Return Values: // S_OK // The call succeeded. // // other HRESULTs // The call failed. // ////////////////////////////////////////////////////////////////////////// [ propget, id( 7 ), helpstring( "property ServiceAccountPassword" ) ] HRESULT ServiceAccountPassword( [ out, retval ] BSTR * pbstrPasswordOut ); [ propput, id( 7 ), helpstring( "property ServiceAccountPassword" ) ] HRESULT ServiceAccountPassword( [ in ] BSTR bstrPasswordIn ); ////////////////////////////////////////////////////////////////////////// // // PROPERTY // ServiceAccountDomainName // // Description: // Set a default value for the domain name in the cluster service account. // Return the value set by the wizard. // If not initialized, the default property value will be the local domain. // // Return Values: // S_OK - The call succeeded. // other HRESULTs - The call failed. // ////////////////////////////////////////////////////////////////////////// [ propget, id( 8 ), helpstring( "property ServiceAccountDomainName" ) ] HRESULT ServiceAccountDomainName( [ out, retval ] BSTR * pbstrDomainOut ); [ propput, id( 8 ), helpstring( "property ServiceAccountDomainName" ) ] HRESULT ServiceAccountDomainName( [ in ] BSTR bstrDomainIn ); ////////////////////////////////////////////////////////////////////////// // // PROPERTY // ClusterIPAddress // // Description: // Set a default value for the cluster IP address. // Return the value set by the wizard. // There is no default value. // // Return Values: // S_OK - The call succeeded. // other HRESULTs - The call failed. // ////////////////////////////////////////////////////////////////////////// [ propget, id( 9 ), helpstring( "property ClusterIPAddress" ) ] HRESULT ClusterIPAddress( [ out, retval ] BSTR * pbstrIPAddressOut ); [ propput, id( 9 ), helpstring( "property ClusterIPAddress" ) ] HRESULT ClusterIPAddress( [ in ] BSTR bstrIPAddressIn ); ////////////////////////////////////////////////////////////////////////// // // PROPERTY // ClusterIPSubnet // // Description: // Set a default value for the cluster IP subnet mask. // Return the value set by the wizard. // There is no default value. // // Return Values: // S_OK - The call succeeded. // other HRESULTs - The call failed. // ////////////////////////////////////////////////////////////////////////// [ propget, id( 10 ), helpstring( "property ClusterIPSubnet" ) ] HRESULT ClusterIPSubnet( [ out, retval ] BSTR * pbstrIPSubnetOut ); [ propput, id( 10 ), helpstring( "property ClusterIPSubnet" ) ] HRESULT ClusterIPSubnet( [ in ] BSTR bstrSubnetIn ); ////////////////////////////////////////////////////////////////////////// // // PROPERTY // ClusterIPAddressNetwork // // Description: // Set a default value for the network on which the cluster IP address // is to be offered on. // Return the value set by the wizard. // There is no default value. // // Return Values: // S_OK - The call succeeded. // other HRESULTs - The call failed. // ////////////////////////////////////////////////////////////////////////// [ propget, id( 11 ), helpstring( "property ClusterIPAddressNetwork" ) ] HRESULT ClusterIPAddressNetwork( [ out, retval ] BSTR * pbstrNetworkNameOut ); [ propput, id( 11 ), helpstring( "property ClusterIPAddressNetwork" ) ] HRESULT ClusterIPAddressNetwork( [ in ] BSTR bstrNetworkNameIn ); ////////////////////////////////////////////////////////////////////////// // // STDMETHOD // AddComputer( ) // // Description: // Adds a computer to the list of nodes to form/join a cluster. This // string must be the Fully-Qualified Domain Name (DNS FQDN) of the // computer to be added. // // Parameters: // pcszFQDNNameIn // The FQDN hostname of the computer to be added as a node. An // example of a FQDN is hostname.domain.com. // // Return Values: // S_OK // The call succeeded. // // other HRESULTs // The call failed. // ////////////////////////////////////////////////////////////////////////// [ id( 12 ), helpstring( "method AddComputer" ) ] HRESULT AddComputer( [ in, pointer_default( unique ) ] LPCWSTR pcszFQDNNameIn ); ////////////////////////////////////////////////////////////////////////// // // STDMETHOD // RemoveComputer( ) // // Description: // Removes a computer from the list of nodes to form/join a cluster. // This string must be the Fully-Qualified Domain Name (DNS FQDN) of // the computer to be removed. // // Parameters: // pcszFQDNNameIn // The FQDN hostname of the computer to be removed as a node. An // example of a FQDN is hostname.domain.com. // // Return Values: // S_OK // The call succeeded. // // other HRESULTs // The call failed. // ////////////////////////////////////////////////////////////////////////// [ id( 13 ), helpstring( "method RemoveComputer" ) ] HRESULT RemoveComputer( [ in, pointer_default( unique ) ] LPCWSTR pcszFQDNNameIn ); ////////////////////////////////////////////////////////////////////////// // // STDMETHOD // ClearComputerList( ) // // Description: // Removes all computers from the list of nodes to form/join a // cluster. // // Parameters: // None. // // Return Values: // S_OK // The call succeeded. // // other HRESULTs // The call failed. // ////////////////////////////////////////////////////////////////////////// [ id( 14 ), helpstring( "method ClearComputerList" ) ] HRESULT ClearComputerList( void ); }; //*** interface IClusCfgWizard ////////////////////////////////////////////////////////////////////////////// // Library Definitions ////////////////////////////////////////////////////////////////////////////// [ uuid(6D01FEDC-8D34-4728-AD0B-B3A21A103B42), version(1.0), helpstring("Microsoft Cluster Configuration Wizard 2.0") ] library ClusCfgWizard { ////////////////////////////////////////////////////////////////////////////// // Imported Files ////////////////////////////////////////////////////////////////////////////// importlib("stdole2.tlb"); ////////////////////////////////////////////////////////////////////////////// // Component Definitions ////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////// //++ // // coclass ClusCfgWizard // // Description: // The ClusCfgWizard coclass implements the interface required to launch // the Cluster Wizard in either Create Cluster or Add Cluster Nodes mode. //-- ////////////////////////////////////////////////////////////////////////////// [ uuid(1919C4FE-6F46-4027-977D-0EF1C8F26372), helpstring("ClusCfgWizard Class") ] coclass ClusCfgWizard { [default] interface IClusCfgWizard; }; }; //*** library ClusCfgWizard