2009-12-24 19 views

Odpowiedz

9

Potrzebujesz Certificate element. Jest to część rozszerzenia IIS dla wix, ale może być również używane w instalacjach niezwiązanych z IIS.

Trzeba

  1. zadeklarować prefiks obszaru nazw IIS dla przykład jak to w elemencie Wix root:

    <Wix xmlns='http://schemas.microsoft.com/wix/2006/wi' 
        xmlns:iis='http://schemas.microsoft.com/wix/IIsExtension'> 
    
  2. osadzić plik PFX postaci binarnej strumieniu w pakiecie instalacyjnym. Dodać element Binary pod elementem produktu tak:

    <Binary Id="MyCertificateBinaryStream" 
        SourceFile="c:/path/to/mycertificate.pfx" /> 
    
  3. stwierdzenie składową z elementem <iis:Certificate> na przykład takiego. Spójrz na numer documentation, musisz podać więcej atrybutów: . Pamiętaj, że nie potrzebujesz CertficatePath, jeśli używasz atrybutu BinaryKey.

    <Component Id="MyCertificateComponent" Guid="MY-GUID-HERE"> 
        <iis:Certificate Id="MyCertificate" 
         BinaryKey="MyCertificateBinaryStream" 
         ... some more attributes ...     
        /> 
    </Component> 
    
  4. Aktywuj rozszerzenie IIS dodając opcja opcja -ext WixIISExtension podczas wywoływania narzędzia wiersza poleceń Wix. Jeśli używasz visual studio, jest to tylko kwestia dodania odniesienia w twoim projekcie wix do WixIISExtension.

+0

Zajrzę do tej odpowiedzi i spróbuję. Dziękuję za odpowiedź jeszcze raz. Naprawdę doceniam twoje wyjaśnienie. Wesołych świąt dla ciebie! – abmv

4

Aby rozwinąć na odpowiedź trochę następujący zestaw atrybutów pracował dla mnie:

<iis:Certificate 
    Id="My.Certificate" 
    StoreName="root" 
    Overwrite="yes" 
    Name="My Friendly Certificate Name" 
    Request="no" 
    BinaryKey="MyCertificate.Binary" 
    StoreLocation="localMachine" /> 

Gdzie element <Product> zawierał <Binary> dziecko następująco:

<Binary 
    Id="MyCertificate.Binary" 
    SourceFile="$(var.ProjectDir)MyCertificate.pfx" /> 

(Zawarłem plik PFX w ramach mojego projektu WiX).

Powiązane problemy