2017-02-16 4 views
0

Ich muss ein Windows-Installationsprogramm machen, das IIS auf Windows aktiviert (installiert). Wenn ich die MSI-Datei ausführen, läuft es ohne irgendwelche geben, aber IIS wird nicht aktiviert (installiert), wenn ich auf Programm und Funktionen/Windows Feature ausschalten auf, es wird nicht installiertEnabing IIS mit CAQuietExec64 in Wix Installer funktioniert nicht

Hier ist mein wxs Datei:

<?xml version="1.0" encoding="UTF-8"?> 
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"> 
    <Product Id="*" Name="IISInstaller" Language="1033" Version="1.0.0.0" Manufacturer="Company" UpgradeCode="21ece05f-bf5c-4f97-850e-cb7cef2bf65e"> 
     <Package InstallerVersion="200" Compressed="yes" InstallScope="perMachine" /> 

     <MajorUpgrade DowngradeErrorMessage="A newer version of [ProductName] is already installed." /> 
     <MediaTemplate /> 

    <Property Id="QtExec64CmdLine" Value='"[WindowsFolder]Sysnative\dism.exe" /Online /Enable-Feature /FeatureName:IIS-ApplicationDevelopment /FeatureName:IIS-WebServer 
       /FeatureName:IIS-WebServerRole /FeatureName:IIS-RequestFiltering /FeatureName:IIS-Security 
       /FeatureName:IIS-NetFxExtensibility /FeatureName:IIS-ASPNET /FeatureName:IIS-ISAPIExtensions 
       /FeatureName:IIS-ISAPIFilter /FeatureName:IIS-DefaultDocument /FeatureName:IIS-HttpErrors /FeatureName:IIS-StaticContent 
       /FeatureName:IIS-HttpLogging /FeatureName:IIS-RequestMonitor /FeatureName:IIS-HttpCompressionStatic 
       /FeatureName:IIS-HttpCompressionDynamic /FeatureName:IIS-RequestFiltering /FeatureName:IIS-WindowsAuthentication'/> 

    <CustomAction Id="SilentLaunch" BinaryKey="WixCA" DllEntry="CAQuietExec64" Execute="immediate" Return="check" />   
    </Product> 
</Wix> 

, auch wenn ich den Wert in der Eigenschaft ändern, um einen einfachen Befehl auszuführen Verzeichnis zu machen

mkdir test 

es funktioniert auch nicht.

Könnten Sie mir bitte helfen, was ist das Problem? Dank

Antwort

1

Zwei mögliche Probleme:

  1. Sie die benutzerdefinierte Aktion erklärt haben, aber sie haben es nicht in einer Reihenfolge gebracht, indem er erklärt, wohin es geht zu laufen und welche Bedingungen gelten. So lief es nicht.

Schritt 2 fehlt: http://wixtoolset.org/documentation/manual/v3/wixdev/extensions/authoring_custom_actions.html

  1. Nachdem Sie das getan haben, die benutzerdefinierte Aktion sofort markiert wird, das ist in der Regel ein Fehler, weil Änderungen an dem System sein sollte, im verzögerten Modus ausgeführt, und sofortige benutzerdefinierte Aktionen werden nicht erhöht ausgeführt.
+0

Danke für Ihre Antwort. Ich habe die InstallExecuteSequence wie erwähnt hinzugefügt. Setzen Sie customAction auch im verzögerten Modus und implizieren Sie als "Nein". Ich führe es auch in der Kommandozeile msiexec/i installer.msi/L * V "package.log" aus. es funktioniert auch nicht. Der einzige Fehler im Protokoll war "Installationserfolg oder Fehlerstatus: 1603". Ein Link auf Microsoft Support besagt, dass die Systemrolle keine vollständige Kontrolle hat, was nicht der Fall ist. –

+1

Ich würde eine neue Frage dafür - 1603 ist fast immer eine benutzerdefinierte Aktion Fehler, und das Protokoll sollte sagen, wenn es die mit IIS oder etwas anderes ist. – PhilDW

Verwandte Themen