Função LoadPackagedLibrary (winbase.h)
Carrega o módulo empacotado especificado e suas dependências no espaço de endereço do processo de chamada.
Sintaxe
HMODULE LoadPackagedLibrary(
[in] LPCWSTR lpwLibFileName,
DWORD Reserved
);
Parâmetros
[in] lpwLibFileName
O nome do arquivo do módulo empacotado a ser carregado. O módulo pode ser um módulo de biblioteca (um arquivo .dll) ou um módulo executável (um arquivo .exe).
Se esse parâmetro especificar um nome de módulo sem um caminho e a extensão de nome de arquivo for omitida, a função acrescentará a extensão de biblioteca padrão .dll ao nome do módulo. Para impedir que a função acrescente .dll ao nome do módulo, inclua um caractere de ponto à direita (.) na cadeia de caracteres de nome do módulo.
Se esse parâmetro especificar um caminho, a função pesquisará esse caminho para o módulo. O caminho não pode ser um caminho absoluto ou um caminho relativo que contenha ".." no caminho. Ao especificar um caminho, use barras invertidas (\), não barras (/). Para obter mais informações sobre caminhos, consulte Nomenclatura de arquivos, caminhos e namespaces.
Se o módulo especificado já estiver carregado no processo, a função retornará um identificador para o módulo carregado. O módulo deve ter sido originalmente carregado do grafo de dependência do pacote do processo.
Se o carregamento do módulo especificado fizer com que o sistema carregue outros módulos associados, a função primeiro pesquisa módulos carregados e pesquisa o grafo de dependência do pacote do processo. Para obter mais informações, consulte Comentários.
Reserved
Esse parâmetro é reservado. Deve ser 0.
Retornar valor
Se a função for bem-sucedida, o valor retornado será um identificador para o módulo carregado.
Se a função falhar, o valor retornado será NULL. Para obter informações de erro estendidas, chame GetLastError.
Comentários
A função LoadPackagedLibrary é uma versão simplificada de LoadLibraryEx. Os aplicativos empacotados podem usar LoadPackagedLibrary para carregar módulos empacotados. Aplicativos não empacotados não podem usar LoadPackagedLibrary; se um aplicativo não empacotado chamar essa função, ele falhará com APPMODEL_ERROR_NO_PACKAGE.
LoadPackagedLibrary retorna um identificador para o módulo especificado e incrementa sua contagem de referência. Se o módulo já estiver carregado, a função retornará um identificador para o módulo carregado. O processo de chamada pode usar o identificador retornado por LoadPackagedLibrary para identificar o módulo em chamadas para a função GetProcAddress . Use a função FreeLibrary para liberar um módulo carregado e diminuir sua contagem de referência.
Se a função precisar pesquisar o módulo especificado ou suas dependências, ela pesquisará apenas o grafo de dependência do pacote do processo. Esse é o pacote do aplicativo mais as dependências especificadas como <PackageDependency>
na <Dependencies>
seção do manifesto do pacote do aplicativo. As dependências são pesquisadas na ordem em que aparecem no manifesto. O grafo de dependência do pacote é especificado na <Dependencies>
seção do manifesto do pacote do aplicativo. As dependências são pesquisadas na ordem em que aparecem no manifesto. A pesquisa prossegue da seguinte maneira:
- A função pesquisa primeiro os módulos que já estão carregados. Se o módulo especificado tiver sido originalmente carregado do grafo de dependência do pacote do processo, a função retornará um identificador para o módulo carregado. Se o módulo especificado não tiver sido carregado do grafo de dependência do pacote do processo, a função retornará NULL.
- Se o módulo ainda não estiver carregado, a função pesquisará o grafo de dependência do pacote do processo.
- Se a função não puder encontrar o módulo especificado ou uma de suas dependências, a função falhará.
Observação
No Windows Phone, LoadPackagedLibrary deve ser chamado de PhoneAppModelHost.dll
. Não há suporte para o uso Kernel32.dll
do .
Requisitos
Cliente mínimo com suporte | Windows 8 [aplicativos da área de trabalho | Aplicativos UWP] |
Servidor mínimo com suporte | Windows Server 2012 [aplicativos da área de trabalho | Aplicativos UWP] |
Plataforma de Destino | Windows |
Cabeçalho | winbase.h (inclua Windows.h) |
Biblioteca | Kernel32.lib |
DLL | Kernel32.dll |