2016-07-01 16 views
0

Kann jemand WiX (Windows Installer XML) verwenden, um einen Knotenserver zu installieren und als Windows-Dienst zu starten?Mit WiX einen Knotenserver als Windows-Dienst installieren

Im Moment hat die Anwendung keine .exe-Datei, nur eine Fledermausdatei, die 'node app.js' ausführt, die den Server startet. Ich habe mich gefragt, ob es möglich ist, dies als einen Dienst mit Wix zu installieren, oder muss es zuerst in eine .exe-Datei konvertiert werden?

+0

Hallo Christopher Painter ,, Ich möchte Sie erreichen, können Sie mir bitte für die unten aushelfen http://stackoverflow.com/questions/38352117/msi-user- interface-wizard-session-with-wix – SrilakshmiCh

Antwort

0

Sie können srvany.exe verwenden, um jede Art von Skript/ausführbare Datei zu nehmen und als Dienst zu hosten. Die WiX sieht dann so etwas wie:

<Component Id="c1" Guid="someguid"> 
    <File Id="f1" Source="$(var.SourceDir)\srvany.exe" KeyPath="yes" /> 
    <ServiceInstall Id="si1" DisplayName="servicedisplay" Description="servicedesc" Name="servicename" Start="auto" Type="ownProcess" Vital="no" ErrorControl="normal" Account="NT AUTHORITY\NetworkService" /> 
    <ServiceControl Id="sc1S" Name="servicename" Remove="both" Stop="both" Start="install" Wait="yes" /> 
    <RegistryValue Id="reg1" Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\ExpertChatPeerServer\Parameters" Name="Application" Type="string" Value="node &quot;[#f2]&quot;" Action="write" /> 
</Component> 
<Component Id="c2" Guid="someguid" KeyPath="yes"> 
    <File Id="f2" Source="$(var.SourceDir)\somenodescript.js" /> 
</Component> 
+0

Dies scheint den Dienst zu installieren, aber das Installationsprogramm hängt beim Starten des Dienstes und gibt schließlich einen Fehler bezüglich der erforderlichen Berechtigungen? Liegt das daran, dass der Knoten-Server-Code kein gültiger Windows-Dienst ist? – Vanita

+0

Es sollte funktionieren, vorausgesetzt, Sie haben keine anderen Probleme mit Ihrem (Service-) Skript. Die falsche Berechtigungsmeldung für 1920 ist immer falsch. Sie müssen Ihr Programm ausführen und sehen, ob es einen Fehler wirft oder nicht mehr startet. –