Tentando detectar pelo registro após a instalação através do SCCM falhar

2

isso é simples, eu envio um programa, um arquivo exe. E para que o SCCM saiba que o programa foi instalado posteriormente, ele precisa 'detectar' o programa, já que é um arquivo exe. Isso significa que eu preciso aplicar uma forma manual de detecção. Neste exemplo, não consigo usar nenhum arquivo, pois as versões não diferenciam os arquivos, e eu preciso ser capaz de distinguir diferentes versões.

Eu tentei fazer isso através do registro. Aqui está o que eu faço - >

Confirmo que o registro existe após a instalação, mas ele falha na detecção do programa. Então, basicamente, a implantação funciona, mas não pode ver esse registro.

Por quê ?, o caminho está correto .. Eu tentei usar a bandeira em '32'bit e sem.

    
por NoobCoder 03.09.2014 / 14:16

1 resposta

1
Em primeiro lugar, há uma grande coisa que grita comigo olhando para essa captura de tela, e esse é o texto Wow6432Node no meio do caminho da sua chave de registro.

De MSDN: 32-bit e 64- bit Dados da Aplicação no Registro

On 64-bit Windows, portions of the registry entries are stored separately for 32-bit application and 64-bit applications and mapped into separate logical registry views using the registry redirector and registry reflection, because the 64-bit version of an application may use different registry keys and values than the 32-bit version.

...

Redirection subnodes in the registry tree are created automatically by the WOW64 component using the name Wow6432Node. As a result, it is essential not to name any registry key you create Wow6432Node.

Em uma máquina que executa o Windows de 64 bits, a Wow6432Node é a parte do registro para a qual os aplicativos de 32 bits são redirecionados silenciosamente (sem o reconhecimento do aplicativo).

A maneira de acessar esse redirecionamento na detecção de registro do SCCM é permitir que o SCCM seja redirecionado da mesma maneira que o aplicativo, marcando o " Esta chave de registro está associada a um aplicativo de 32 bits em sistemas de 64 bits "caixa que você pode ver perto do meio da captura de tela, e excluindo \Wow6432Node do caminho da sua chave de registro. Isso significa que o SCCM agora sabe que essa chave de registro é encontrada na seção de registro de 32 bits e examinará se está em uma máquina de 32 ou 64 bits.

Em segundo lugar, não conheço seu aplicativo, mas é muito possível que haja uma maneira mais fácil de fazer essa detecção.

Embora o aplicativo seja um EXE, é perfeitamente possível (e muito, muito comum) que o EXE seja apenas um wrapper em torno de um MSI do Windows Installer, caso em que você pode usar o método de detecção de código de produto "Windows Installer" facilmente.

Existem algumas maneiras de encontrar o código do produto MSI de um EXE apenas verificando na máquina de teste em que você já instalou o aplicativo. Uma maneira é usar a interface de linha de comando do WMI para listar os aplicativos instalados e seus códigos de instalação, a partir de uma execução do prompt do DOS:

wmic product get Name, IdentifyingNumber

Se o seu aplicativo aparecer nessa lista com um "Número de identificação", você poderá colocá-lo no método de detecção do Windows Installer.

    
por 09.09.2014 / 15:43