Compartir a través de


Función ResUtilGetResourceDependencyByClass (resapi.h)

Enumera las dependencias de un recurso especificado en un clúster especificado y devuelve un identificador a una dependencia que coincide con una clase de recurso especificada. El tipo PRESUTIL_GET_RESOURCE_DEPENDENCY_BY_CLASS define un puntero a esta función.

Sintaxis

HRESOURCE ResUtilGetResourceDependencyByClass(
  [in] HCLUSTER                  hCluster,
  [in] HANDLE                    hSelf,
  [in] PCLUS_RESOURCE_CLASS_INFO prci,
  [in] BOOL                      bRecurse
);

Parámetros

[in] hCluster

Identificador del clúster al que pertenece el recurso.

[in] hSelf

Identificador del recurso dependiente. Este recurso depende de uno o varios recursos.

[in] prci

Puntero a una estructura de CLUS_RESOURCE_CLASS_INFO que describe la clase de recurso de la dependencia que se va a devolver.

[in] bRecurse

Determina el ámbito de la búsqueda. Si es TRUE, la función comprueba todo el árbol de dependencias en el recurso dependiente. Si es FALSE, la función comprueba solo los recursos en los que depende directamente el recurso dependiente.

Valor devuelto

Si la operación se realiza correctamente, la función devuelve un identificador a uno de los recursos en los que depende el recurso especificado por hSelf . El autor de la llamada es responsable de cerrar el identificador mediante una llamada a CloseClusterResource.

Si se produce un error en la operación, la función devuelve NULL. Para obtener más información, llame a la función GetLastError .

Comentarios

No llame a ResUtilGetResourceDependencyByClass desde cualquier función de punto de entrada dll de recursos. ResUtilGetResourceDependencyByClass se puede llamar de forma segura desde un subproceso de trabajo. Para obtener más información, consulte Llamadas de función para evitar en archivos DLL de recursos.

Ejemplos

Como se muestra en el ejemplo siguiente, si sabe que el recurso A depende de un recurso de clase de almacenamiento, puede usar ResUtilGetResourceDependencyByClass para obtener un identificador para el recurso de clase de almacenamiento sin conocer nada más sobre él.

// String initialization and error checking omitted.

HCLUSTER hCluster = OpenCluster( lpszClusterName );

//
// Resource A depends on a storage class resource.
// Get a handle to that resource.
//
HRESOURCE hResA = OpenClusterResource( hCluster, lpszResName );

PCLUS_RESOURCE_CLASS_INFO pClassInfo;

pClassInfo->rc = CLUS_RESCLASS_STORAGE;

//
// Returns a handle to the storage class resource on which resource A depends.
// Can now perform a variety of operations on the dependency.
//
HRESOURCE hResD = ResUtilGetResourceDependencyByClass(
                        hCluster,
                        hResA,
                        pClassInfo,
                        TRUE );

// Close handles and free memory.

Requisitos

Requisito Value
Cliente mínimo compatible No se admite ninguno
Servidor mínimo compatible Windows Server 2008 Enterprise, Windows Server 2008 Datacenter
Plataforma de destino Windows
Encabezado resapi.h
Library ResUtils.lib
Archivo DLL ResUtils.dll

Consulte también

CloseClusterResource

ResUtilFindDependentDiskResourceDriveLetter

ResUtilGetResourceDependency

ResUtilGetResourceDependencyByName

ResUtilGetResourceDependentIPAddressProps

ResUtilGetResourceNameDependency