Compartilhar via


Função MsiAdvertiseScriptA (msi.h)

A função MsiAdvertiseScript copia um arquivo de script anunciado para os locais especificados.

Sintaxe

UINT MsiAdvertiseScriptA(
  [in] LPCSTR szScriptFile,
  [in] DWORD  dwFlags,
  [in] PHKEY  phRegData,
  [in] BOOL   fRemoveItems
);

Parâmetros

[in] szScriptFile

O caminho completo para um arquivo de script gerado por MsiAdvertiseProduct ou MsiAdvertiseProductEx.

[in] dwFlags

Os sinalizadores de bit a seguir do anúncio de controle SCRIPTFLAGS. O valor de dwFlags pode ser uma combinação dos valores a seguir.

Bandeira Significado
SCRIPTFLAGS_CACHEINFO
0x001
Inclua esse sinalizador se os ícones precisarem ser criados ou removidos.
SCRIPTFLAGS_SHORTCUTS
0x004
Inclua esse sinalizador se os atalhos precisarem ser criados ou removidos.
SCRIPTFLAGS_MACHINEASSIGN
0x008
Inclua esse sinalizador se o produto a ser atribuído a um computador.
SCRIPTFLAGS_REGDATA_CNFGINFO
0x020
Inclua esse sinalizador se as informações de configuração e gerenciamento nos dados do Registro precisarem ser gravadas ou removidas.
SCRIPTFLAGS_VALIDATE_TRANSFORMS_LIST
0x040
Inclua esse sinalizador para forçar a validação das transformações listadas no script em relação às transformações registradas anteriormente para este produto. Observe que conflitos de transformação são detectados usando uma comparação de cadeia de caracteres que não diferencia maiúsculas de minúsculas e são avaliadas entre instalações por usuário e por computador em todos os contextos. Se a lista de transformações no script não corresponder às transformações registradas para o produto, a função retornará ERROR_INSTALL_TRANSFORM_FAILURE.
SCRIPTFLAGS_REGDATA_CLASSINFO
0x080
Inclua esse sinalizador se as informações de anúncio no registro relacionadas às classes COM precisarem ser gravadas ou removidas.
SCRIPTFLAGS_REGDATA_EXTENSIONINFO
0x100
Inclua esse sinalizador se as informações de anúncio no registro relacionadas a uma extensão precisarem ser gravadas ou removidas.
SCRIPTFLAGS_REGDATA_APPINFO
0x180
Inclua esse sinalizador se as informações de anúncio no registro precisarem ser gravadas ou removidas.
SCRIPTFLAGS_REGDATA
0x1A0
Inclua esse sinalizador se as informações de anúncio no registro precisarem ser gravadas ou removidas.

[in] phRegData

Uma chave do Registro na qual as informações temporárias sobre os dados do Registro devem ser gravadas. Se esse parâmetro for nulo, os dados do Registro serão colocados sob a chave apropriada, com base em se o anúncio é por usuário ou por computador. Se esse parâmetro não for nulo, o script gravará os dados do Registro na chave do Registro especificada em vez do local normal. Nesse caso, o aplicativo não será anunciado para o usuário.

Observe que essa chave do Registro não pode ser usada ao gerar um anúncio de um produto para um usuário ou um computador porque o provedor da chave do Registro geralmente exclui a chave. A chave do Registro está localizada fora dos locais normais do Registro para informações de configuração de shell, classe e .msi e não está sob HKEY_CLASSES_ROOT. Essa chave do Registro destina-se apenas a obter informações temporárias sobre dados do Registro em um script.

[in] fRemoveItems

TRUE se os itens especificados devem ser removidos em vez de serem criados.

Valor de retorno

Valor Significado
ERROR_SUCCESS
A função foi concluída com êxito.
ERROR_ACCESS_DENIED
O processo de chamada não estava em execução na conta localsystem.
Um erro relacionado a uma ação
Consulte códigos de erro.
de erro de inicialização
Ocorreu um erro relacionado à inicialização.
ERROR_CALL_NOT_IMPLEMENTED
Essa função só está disponível no Windows 2000 e no Windows XP.
 
 

Observações

O processo que chama essa função deve estar em execução na conta LocalSystem. Para anunciar um aplicativo para instalação por usuário para um usuário de destino, o thread que chama essa função deve representar o usuário de destino. Se o thread que chama essa função não estiver representando um usuário de destino, o aplicativo será anunciado a todos os usuários para instalação com privilégios elevados.

Nota

O cabeçalho msi.h define MsiAdvertiseScript como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante de pré-processador UNICODE. A combinação do uso do alias neutro de codificação com código que não é neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Conventions for Function Prototypes.

Requisitos

Requisito Valor
de cliente com suporte mínimo Windows Installer 5.0 no Windows Server 2012, Windows 8, Windows Server 2008 R2 ou Windows 7. Windows Installer 4.0 ou Windows Installer 4.5 no Windows Server 2008 ou Windows Vista. Windows Installer no Windows Server 2003 ou Windows XP. Consulte os Requisitos de Run-Time do Windows Installer para obter informações sobre o service pack mínimo do Windows exigido por uma versão do Windows Installer.
da Plataforma de Destino Windows
cabeçalho msi.h
biblioteca Msi.lib
de DLL Msi.dll

Consulte também

de contexto de instalação