Функция GetCurrentPackageInfo3 (appmodel.h)
Извлекает идентификатор текущего поколения графа пакетов.
Сведения о вызове функции см. в разделе Примечания .
Синтаксис
HRESULT GetCurrentPackageInfo3(
_In_ UINT32 flags,
_In_ PackageInfo3Type packageInfoType,
_Inout_ UINT32 *bufferLength,
_Out_writes_bytes_opt_(*bufferLength) void *buffer,
_Out_opt_ UINT32 *count
);
Параметры
flags
Тип: const UINT32
Константы пакета, определяющие способ извлечения сведений о пакете. Поддерживаются флаги PACKAGE_FILTER_* .
packageInfoType
Тип: PackageInfo3Type
enum PackageInfo3Type
{
PackageInfo3Type_PackageInfoGeneration = 16,
} PackageInfoType;
Объявите PackageInfo3Type , как показано выше, и передайте PackageInfo3Type::P ackageInfo3Type_PackageInfoGeneration.
bufferLength
Тип: UINT32*
На входе размер буфера в байтах. В выходных данных размер возвращаемого массива структур в байтах.
buffer
Тип: BYTE*
Идентификатор текущего поколения графа пакета, представленный в виде массива PACKAGE_INFO структур.
count
Тип: UINT32*
Количество структур в буфере.
Возвращаемое значение
Тип: LONG
Если функция выполняется успешно, она возвращает ERROR_SUCCESS. В противном случае функция возвращает код ошибки. Возможные коды ошибок включают следующие.
Код возврата | Описание |
---|---|
APPMODEL_ERROR_NO_PACKAGE | Процесс не имеет удостоверения пакета. |
ERROR_INSUFFICIENT_BUFFER | Буфер недостаточно велик для хранения данных. Требуемый размер задается параметром bufferLength. |
Комментарии
У этой функции нет связанного файла заголовка или файла библиотеки. Приложение может вызвать LoadLibrary с именем DLL (Kernel32.dll
), чтобы получить дескриптор модуля. Затем он может вызвать GetProcAddress с дескриптором модуля и именем этой функции, чтобы получить адрес функции.
Требования
Минимальная версия клиента | Windows 10 [только классические приложения] |
Минимальная версия сервера | Windows Server 2016 [только классические приложения] |
Целевая платформа | Windows |
Header | Нет |
Библиотека | Нет |
DLL | Kernel32.dll |