Функция ResUtilGetResourceNameDependency (resapi.h)
Перечисляет зависимости указанного ресурса в локальном кластере и возвращает дескриптор зависимости указанного типа ресурса. Тип PRESUTIL_GET_RESOURCE_NAME_DEPENDENCY определяет указатель на эту функцию.
Синтаксис
HRESOURCE ResUtilGetResourceNameDependency(
[in] LPCWSTR lpszResourceName,
[in] LPCWSTR lpszResourceType
);
Параметры
[in] lpszResourceName
Строка Юникода, завершающаяся null, указывающая имя зависимого ресурса. Этот ресурс зависит от одного или нескольких ресурсов.
[in] lpszResourceType
Строка Юникода, заканчивающаяся значением NULL, указывающая тип ресурса возвращаемой зависимости.
Возвращаемое значение
Если операция выполнена успешно, функция возвращает дескриптор одному из ресурсов, от которых зависит ресурс, заданный параметром lpszResourceName . Вызывающий объект отвечает за закрытие дескриптора путем вызова CloseClusterResource.
Если операция завершается сбоем, функция возвращает значение NULL. Для получения дополнительных сведений вызовите функцию GetLastError.
Комментарии
Функции ResUtilGetResourceNameDependency, ResUtilGetResourceDependency и ResUtilGetResourceDependencyByName очень похожи тем, что все они предоставляют доступ к зависимостям определенного типа ресурса. В следующей таблице перечислены различия между функциями.
Функция | Указание зависимого ресурса | Требуется дескриптор кластера |
---|---|---|
ResUtilGetResourceDependency | Дескриптор ресурса | Нет |
ResUtilGetResourceDependencyByName | Дескриптор ресурса | Да |
ResUtilGetResourceNameDependency | Имя ресурса | Нет |
Не вызывайте ResUtilGetResourceNameDependency из любой функции точки входа DLL ресурса. ResUtilGetResourceNameDependency можно безопасно вызывать из рабочего потока. Дополнительные сведения см. в разделе Вызовы функций, которые следует избегать в библиотеках DLL ресурсов.
Примеры
Как показано в следующем примере, если известно, что ресурс A зависит от ресурса физического диска , можно использовать ResUtilGetResourceNameDependency для получения дескриптора зависимости.
// String initialization and error checking omitted.
HRESOURCE hResD = ResUtilGetResourceNameDependency(
L"Resource_A_Name",
L"Physical Disk" );
// Close handles and free memory.
Требования
Минимальная версия клиента | Ни одна версия не поддерживается |
Минимальная версия сервера | Windows Server 2008 Корпоративная, Windows Server 2008 Datacenter |
Целевая платформа | Windows |
Header | resapi.h |
Библиотека | ResUtils.lib |
DLL | ResUtils.dll |
См. также раздел
ResUtilFindDependentDiskResourceDriveLetter
ResUtilGetResourceDependencyByClass