ResUtilGetResourceDependency 函数 (resapi.h)
枚举指定资源的依赖项,并返回指定类型的依赖项的句柄。 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