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
ResUtilFindDependentDiskResourceDriveLetter
ResUtilGetResourceDependencyByName