dependencias de implementación COM
-
22-09-2019 - |
Pregunta
Me han estado funcionando en un problema por el que un COM DLL que estoy distribuyendo con mi solicitud no se registra porque el atl.dll no está registrado en la máquina.
La solución rápida es tener el regsvr32 corrida contra el DLL, pero quiero algo un poco más limpio que eso.
No tengo mucha experiencia con el despliegue y me preguntaba si hay una manera que podría determinar si el atl.dll se ha registrado en la máquina y si no pude registrarlo de código.
Actualmente tengo una acción personalizada C # para mi instalador MSI para que pudiera posiblemente añadir lógica allí para realizar la tarea.
Gracias de antemano.
Solución
Se deberá incluir la Módulo de combinación con su instalador. Estos serán instalados a C:\Program Files\Common Files\Merge Modules
. Si usted no encuentra los archivos necesarios, es probable que no ha instalado la función "Componentes Redistribuibles" ya sea en el Windows SDK y / o Visual Studio (Creo que no seleccionados en tanto por defecto)
-
ATL90.DLL
se puede encontrar enMicrosoft_VC90_ATL_x86.msm
-
ATL80.DLL
se puede encontrar enMicrosoft_VC80_ATL_x86.msm