枚举指定资源的依赖项,并返回指定类型的依赖项的句柄。 PRESUTIL_GET_RESOURCE_DEPENDENCY类型定义指向此函数的指针。
语法
HRESOURCE ResUtilGetResourceDependency(
  [in] HANDLE  hSelf,
  [in] LPCWSTR lpszResourceType
);
参数
[in] hSelf
依赖资源的句柄。 此资源依赖于一个或多个资源。
[in] lpszResourceType
以 Null 结尾的 Unicode 字符串,指定要返回的依赖项的资源类型。
返回值
如果操作成功,该函数将返回 hSelf 所指定的资源所依赖的资源之一的句柄。 调用方负责通过调用 CloseClusterResource 来关闭句柄。
如果操作失败,该函数将返回 NULL。 有关详细信息,请调用 GetLastError 函数。
注解
ResUtilGetResourceDependency、ResUtilGetResourceDependencyByName 和 ResUtilGetResourceNameDependency 函数非常相似,因为它们都提供对特定资源类型的依赖项的访问权限。 下表总结了函数之间的差异。
| 函数 | 如何指定依赖资源 | 需要群集句柄 | 
|---|---|---|
| ResUtilGetResourceDependency | 资源句柄 | 否 | 
| ResUtilGetResourceDependencyByName | 资源句柄 | 是 | 
| ResUtilGetResourceNameDependency | 资源名称 | 否 | 
不要从任何资源 DLL 入口点函数调用 ResUtilGetResourceDependency 。 可以从工作线程安全地调用 ResUtilGetResourceDependency。 有关详细信息,请参阅 在资源 DLL 中对避免的函数调用。
示例
如以下示例所示,如果知道资源 A 依赖于物理磁盘资源,则可以使用 ResUtilGetResourceDependency 获取依赖项的句柄。
// 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.
要求
| 要求 | 值 | 
|---|---|
| 最低受支持的客户端 | 无受支持的版本 | 
| 最低受支持的服务器 | Windows Server 2008 Enterprise、Windows Server 2008 Datacenter | 
| 目标平台 | Windows | 
| 标头 | resapi.h | 
| Library | ResUtils.lib | 
| DLL | ResUtils.dll | 
另请参阅
ResUtilFindDependentDiskResourceDriveLetter
ResUtilGetResourceDependencyByClass
ResUtilGetResourceDependencyByName