Поделиться через


Функция ResUtilGetResourceDependency (resapi.h)

Перечисляет зависимости указанного ресурса и возвращает дескриптор зависимости указанного типа. Тип PRESUTIL_GET_RESOURCE_DEPENDENCY определяет указатель на эту функцию.

Синтаксис

HRESOURCE ResUtilGetResourceDependency(
  [in] HANDLE  hSelf,
  [in] LPCWSTR lpszResourceType
);

Параметры

[in] hSelf

Дескриптор для зависимого ресурса. Этот ресурс зависит от одного или нескольких ресурсов.

[in] lpszResourceType

Строка Юникода со значением NULL, указывающая тип ресурса возвращаемой зависимости.

Возвращаемое значение

Если операция выполнена успешно, функция возвращает дескриптор одному из ресурсов, от которых зависит ресурс, заданный параметром hSelf . Вызывающий объект отвечает за закрытие дескриптора путем вызова CloseClusterResource.

Если операция завершается сбоем, функция возвращает значение NULL. Для получения дополнительных сведений вызовите функцию GetLastError .

Комментарии

Функции ResUtilGetResourceDependency, ResUtilGetResourceDependencyByName и ResUtilGetResourceNameDependency очень похожи тем, что все они предоставляют доступ к зависимостям определенного типа ресурса. В следующей таблице перечислены различия между функциями.

Функция Указание зависимого ресурса Требуется дескриптор кластера
ResUtilGetResourceDependency Дескриптор ресурса Нет
ResUtilGetResourceDependencyByName Дескриптор ресурса Да
ResUtilGetResourceNameDependency Имя ресурса Нет
 

Не вызывайте ResUtilGetResourceDependency из любой функции точки входа библиотеки DLL ресурсов. 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 Корпоративная, Windows Server 2008 Datacenter
Целевая платформа Windows
Header resapi.h
Библиотека ResUtils.lib
DLL ResUtils.dll

См. также раздел

CloseClusterResource

ResUtilFindDependentDiskResourceDriveLetter

ResUtilGetResourceDependencyByClass

ResUtilGetResourceDependencyByName

ResUtilGetResourceDependentIPAddressProps

ResUtilGetResourceNameDependency