Como criar um MSI para instalar e registrar um controle ActiveX?

6

Eu tenho um controle ActiveX de terceiros que quero empacotar em um msi para que ele possa ser implantado e registrado por meio da Diretiva de Grupo. O objetivo é que eu não quero que o usuário final tenha que clicar e instalar o controle ActiveX no IE. Eu tenho o arquivo Cab que contém (2) arquivos ocx, (1) arquivo inf e (1) dll. Como faço para obter esses instalados e registrados como um ActiveX no IE?

    
por etoisarobot 12.02.2010 / 16:36

3 respostas

5

O que você está pedindo é completamente viável. O "como" você faz isso, basicamente, é aprender a usar uma ferramenta de criação de MSI, determinar onde os arquivos precisam ir no disco rígido, determinar o que precisa entrar no registro e criar um arquivo MSI que faça o que você quer.

Pessoalmente, uso o kit de ferramentas XML (WiX) do Windows Installer para criar arquivos MSI.

  • Existe um tutorial maravilhoso sobre WiX mantido por Gábor DEÁK JAHN. Se você quer construir um instalador silencioso sem interface do usuário, há muito deste tutorial que você realmente não precisa aprender, mas ainda é ótimo.

  • Embora se aplique ao WiX 2.0 (que não é a versão atual, mas ainda está disponível e funciona bem), este WiX tutoial faz um bom trabalho.

Também existem muitos construtores MSI gráficos de terceiros. Eles se dividem em baseados em instantâneos e não em instantâneos.

Os criadores de pacotes baseados em captura instantânea sofrem com o problema de detectar alterações não relacionadas ao computador de instantâneo durante a instalação do software e podem criar pacotes realmente confusos. Às vezes, usarei uma ferramenta de instantâneo para obter uma "sensação" do que um instalador faz, mas sempre construo meus pacotes de produção manualmente.

Os sistemas não baseados em snapshots são geralmente apenas IDEs gráficos para o esquema MSI (e alguns arquivos de origem WiX XML que são "compilados" com o WiX), permitindo que você arraste e solte, etc., para criar pacotes. / p>

Seja o que for, obter algum conhecimento sobre como o Windows Installer funciona lhe dará a melhor chance de criar bons pacotes. A documentação da Microsoft é um pouco densa, mas há muitas coisas boas em lá. No final, descobri que a tentativa e erro foi a melhor maneira de se familiarizar com as nuances do Windows Installer.

    
por 12.02.2010 / 20:42
1

Eu fiz isso com sucesso algumas vezes usando as seguintes etapas:

  1. Extraia todos os arquivos da cabina para uma nova pasta
  2. Abra um prompt de comando e vá para o diretório
  3. Execute o aquecimento da seguinte forma:

    "c: \ Arquivos de programas (x86) \ Wix Toolset v3.9 \ bin \ heat.exe" dir. -cg CoreCmpGroup -gg -template fragmento out.wxs

  4. Em seguida, use o out.wxs no seu projeto. Todos os registros de COM, etc., serão feitos magicamente para você. :)

por 04.06.2015 / 15:10
-1

Eu não tentei isso, mas eu teria preocupações sobre como uma implantação automatizada de um controle ActiveX iria interagir com a segurança do Internet Explorer. Meu sentimento é "não muito bem". Eu estaria mais inclinado a configurar políticas para confiar no site usando o controle (se você está convencido de que é seguro fazê-lo) ou o próprio controle (que pode ser um pouco complicado) e deixar o controle cair no maneira normal.

    
por 12.02.2010 / 20:52

Tags