Fonction ResUtilGetResourceDependency (resapi.h)
Énumère les dépendances d’une ressource spécifiée et retourne un handle à une dépendance d’un type spécifié. Le type PRESUTIL_GET_RESOURCE_DEPENDENCY définit un pointeur vers cette fonction.
Syntaxe
HRESOURCE ResUtilGetResourceDependency(
[in] HANDLE hSelf,
[in] LPCWSTR lpszResourceType
);
Paramètres
[in] hSelf
Gérez la ressource dépendante. Cette ressource dépend d’une ou plusieurs ressources.
[in] lpszResourceType
Chaîne Unicode terminée par null spécifiant le type de ressource de la dépendance à retourner.
Valeur retournée
Si l’opération réussit, la fonction retourne un handle à l’une des ressources dont dépend la ressource spécifiée par hSelf . L’appelant est responsable de la fermeture du handle en appelant CloseClusterResource.
Si l’opération échoue, la fonction retourne NULL. Pour plus d’informations, appelez la fonction GetLastError .
Remarques
Les fonctions ResUtilGetResourceDependency, ResUtilGetResourceDependencyByName et ResUtilGetResourceNameDependency sont très similaires en ce qu’elles fournissent toutes l’accès aux dépendances d’un type de ressource particulier. Le tableau suivant récapitule les différences entre les fonctions.
Fonction | Comment la ressource dépendante est spécifiée | Nécessite un handle de cluster |
---|---|---|
ResUtilGetResourceDependency | Handle de ressource | No |
ResUtilGetResourceDependencyByName | Handle de ressource | Yes |
ResUtilGetResourceNameDependency | Nom de la ressource | No |
N’appelez pas ResUtilGetResourceDependency à partir d’une fonction de point d’entrée dll de ressource. ResUtilGetResourceDependency peut être appelé en toute sécurité à partir d’un thread de travail. Pour plus d’informations, consultez Appels de fonction à éviter dans les DLL de ressources.
Exemples
Comme l’illustre l’exemple suivant, si vous savez que la ressource A dépend d’une ressource de disque physique, vous pouvez utiliser ResUtilGetResourceDependency pour obtenir un handle de la dépendance.
// String initialization and error checking omitted.
HCLUSTER hCluster = OpenCluster( lpszClusterName );
//
// Resource A depends on a Physical Disk resource.
// Get a handle to that resource.
//
HRESOURCE hResA = OpenClusterResource( hCluster, lpszResName );
HRESOURCE hResD = ResUtilGetResourceDependency(
hResA,
L"Physical Disk" );
// Close handles and free memory.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Aucun pris en charge |
Serveur minimal pris en charge | Windows Server 2008 Entreprise, Windows Server 2008 Datacenter |
Plateforme cible | Windows |
En-tête | resapi.h |
Bibliothèque | ResUtils.lib |
DLL | ResUtils.dll |
Voir aussi
ResUtilFindDependentDiskResourceDriveLetter
ResUtilGetResourceDependencyByClass
ResUtilGetResourceDependencyByName