INTRODUÇÃO
O Windows Installer fornece APIs que permitem que um usuário consulte o banco de dados do Windows Installer para a presença de um determinado produto. Cada produto é identificado exclusivamente pelo código do produto, que é um GUID. Este artigo fornece exemplos de código que mostram como verificar programaticamente a presença de um produto baseado no Windows Installer usando o código do produto.
Informações adicionais
Chamar a API do Visual C++
Veja a seguir um exemplo de como você pode chamar o método MsiGetProductInfoExW () no Visual C++ para detectar a presença de um produto específico. O produto é especificado por seu GUID de código de produto exclusivo.
TCHAR szVersion[20];DWORD cchVersion = 20;BOOL fInstalled = (ERROR_SUCCESS == MsiGetProductInfoEx (TEXT("{ProductCode}"), NULL, MSIINSTALLCONTEXT_MACHINE, INSTALLPROPERTY_VERSIONSTRING, szVersion, &cchVersion));
Neste fragmento de exemplo de código, a variável Boolean fInstalled conterá um valor TRUE ou FALSE, dependendo se o produto especificado está instalado ou não está instalado.
Chamar a API do VBScript
Veja a seguir um exemplo de como você pode chamar o método ProductInfo () no objeto WindowsInstaller. Installer no script do Microsoft Visual Basic para detectar a presença de um produto específico. O produto é especificado por seu GUID de código de produto exclusivo.
Dim msi : Set msi = CreateObject("WindowsInstaller.Installer")On Error Resume NextDim version : version = msi.ProductInfo("{ProductCode}", "VersionString")Dim installed : installed = ( Err.Number = 0 )
Neste fragmento de exemplo de código, a variável instalada conterá um valor 0 ou 1, dependendo se o produto especificado está instalado ou não instalado.Observação A propriedade ProductCode que é passada para as funções em ambos os exemplos inclui chaves ({}) entre aspas. Para obter mais informações sobre o Windows Installer, acesse a seguinte página da Web do MSDN do Microsoft Windows Installer:
http://msdn.microsoft.com/en-us/library/aa367449(VS.85).aspxPara obter mais informações sobre como obter a versão mais recente do Windows Installer para o seu computador, acesse a seguinte página da Microsoft na Web:
http://www.microsoft.com/download/details.aspx?familyid=5A58B56F-60B6-4412-95B9-54D056D6F9F4&displaylang=en Para obter mais informações, acesse as seguintes páginas da Microsoft na Web:
-
Usando o Windows Installer para inventariar produtos e patcheshttp://msdn.Microsoft.com/en-us/library/aa369558 (versus 85). aspx
-
Determinação do contextode instalação http://msdn.Microsoft.com/en-us/library/aa368279 (versus 85). aspx
-
Listar produtos, propriedades, recursos e componenteshttp://msdn.Microsoft.com/en-us/library/aa369767 (versus 85). aspx
-
Obtendo informaçõesdo aplicativo http://msdn.Microsoft.com/en-us/library/aa368761 (versus 85). aspx
-
Função MsiGetProductInfohttp://msdn.Microsoft.com/en-us/library/aa370131 (versus 85). aspx
-
Installer.ProductInfo Propertyhttp://msdn.microsoft.com/en-us/library/aa369457(VS.85).aspx
-
Função MsiQueryProductState http://msdn.Microsoft.com/en-us/library/aa370363 (versus 85). aspx
-
Método de Propriedade Installer. Productstate http://msdn.Microsoft.com/en-us/library/aa369463 (versus 85). aspx
-
Propriedade ProductCode http://msdn.Microsoft.com/en-us/library/aa370854 (versus 85). aspx
Observação sobre a seção "aplica-se a"Além dos produtos listados na seção "aplica-se a", as informações contidas neste artigo também se aplicam ao produto a seguir:
-
Windows Installer 4,0