installer - descargar - instalar certificados windows 10
Instale un certificado pfx en una tienda de usuarios en Windows usando WiX (2)
Por favor, ¿alguien puede proporcionarme un fragmento de WiX o una solución para el escenario mencionado? Necesito incluir el archivo pfx en el msi de WiX y el usuario descargará mi msi a su máquina a través del explorador de Internet y haga clic en instalar y también necesito que se instale el certificado en su máquina.
Necesita el elemento Certificado . Es parte de la extensión de IIS para wix, pero también se puede usar para instalaciones no relacionadas con IIS.
Necesitas
declarar un prefijo para el espacio de nombres iis, por ejemplo, como este en el elemento raíz Wix:
<Wix xmlns=''http://schemas.microsoft.com/wix/2006/wi'' xmlns:iis=''http://schemas.microsoft.com/wix/IIsExtension''>
Incruste el archivo PFX como una secuencia binaria en su paquete de instalación. Agregue un elemento binario debajo del elemento del producto como este:
<Binary Id="MyCertificateBinaryStream" SourceFile="c:/path/to/mycertificate.pfx" />
Declare un componente con un elemento
<iis:Certificate>
, por ejemplo, como este. Mira la documentación , necesitas completar algunos atributos más. Tenga en cuenta que no necesitaCertficatePath
si usa el atributoBinaryKey
.<Component Id="MyCertificateComponent" Guid="MY-GUID-HERE"> <iis:Certificate Id="MyCertificate" BinaryKey="MyCertificateBinaryStream" ... some more attributes ... /> </Component>
Active la extensión IIS agregando la opción
-ext WixIISExtension
Opción-ext WixIISExtension
cuando invoca las herramientas de la línea de comando wix. Si usa Visual Studio, esto solo es una cuestión de agregar una referencia en su proyecto wix aWixIISExtension
.
Para ampliar un poco la respuesta, el siguiente conjunto de atributos funcionó para mí:
<iis:Certificate
Id="My.Certificate"
StoreName="root"
Overwrite="yes"
Name="My Friendly Certificate Name"
Request="no"
BinaryKey="MyCertificate.Binary"
StoreLocation="localMachine" />
Donde el elemento <Product>
contenía un elemento secundario <Binary>
la siguiente manera:
<Binary
Id="MyCertificate.Binary"
SourceFile="$(var.ProjectDir)MyCertificate.pfx" />
(Incluí el archivo PFX dentro de mi proyecto WiX).