Registro de condicional de certos dll (s) durante o processo de instalação. (vago)
-
05-09-2019 - |
Pergunta
Eu tenho um aplicativo que irá usar um dispositivo em alguns casos (impressora ou seja). Basicamente, em um escritório será utilizado nesta impressora, e em outro escritório nunca serão usados ??nesta impressora.
A funcionalidade de usar a impressora está sentado no código do aplicativo, e a DLL que se comunicam com a impressora são referenciados no código. Assim, a DLL são parte do pacote .msi a instalação.
No entanto, estes DLL não pode ser registrado durante a instalação se o pré-requisito (um monte de drivers para a impressora, fornecido pelo fabricante como um único exe instalação) não está instalado. O instalador para os motoristas é sobre o tamanho de 50M.
Eu não querer incluir um arquivo 50M extra no pacote de instalação para o escritório que nunca vai usar a impressora. Quais são as possíveis soluções para o problema?
Finalmente, eu iria querer uma opção para pular de alguma forma de registro desses dll durante a instalação. Mas eu não sei como abordar isso.
Eu acho que eu poderia ter uma compilação condicional no código. Mas isso envolveria uma quantidade significativa de trabalho para separar completamente o código que fala com esse tipo de impressora a partir do resto do código do aplicativo.
Qualquer possíveis soluções?
Solução
Grupo as DLLs que estão a ser condicionalmente instalado / registado um componente. Então em seu Component da MSI, use a coluna condição de depender propriedade a ser definida. Em localizador tabelas do seu MSI , linhas Configurar para olhar para os pré-requisitos e defina a propriedade.
Você pode aprender mais sobre isso lendo:
http://msdn.microsoft.com/ en-us / library / aa371564 (VS.85) .aspx