Ich arbeite an einer Anwendung, die als Dienst gestartet wird, aber nur, wenn ein Befehlszeilenschalter dies angibt (andernfalls wird ein Standardformular geöffnet). Wenn der Dienst beim Starten von Windows gestartet wird, muss er diese Befehlszeilenoption bestehen oder der Dienst kann nicht gestartet werden.Befehlszeilenargumente zu Service-Installer hinzufügen C#
Ich möchte, dass das Installationsprogramm (ServiceProcessInstaller) eine Befehlszeilenoption hinzufügt, damit beim Start des Dienstes die Befehlszeilenoption zum Befehl hinzugefügt wird.
Beispiel: MyService.exe -commandlineoption
Ich dachte, das war es, was die ServiceProcessorInstaller.Context Eigenschaft war, aber das ist für die Argumente, die auf InstallUtil ausgeführt wurden.
Irgendwelche Vorschläge?
Es ist nicht klar aus Ihrer Frage: Ist Ihre Anwendung die Installation des Dienstes, starten Sie es oder beides? – adrianbanks
Ich denke zuerst. –
Sorry für die Mehrdeutigkeit. Die Anwendung ist normalerweise eine Standardanwendung für Windows Forms. In der Main() -Methode wird jedoch nach Befehlszeilenargumenten gesucht. Wenn eine Befehlszeilenoption -service vorhanden ist, wird der Dienst gestartet. Ich habe auch eine Installer-Klasse hinzugefügt, nach der InstallUtil sucht, um den Dienst bei Windows zu registrieren. Wenn der Dienst beim Booten von Windows gestartet wird, sollte der Dienst mit der Befehlszeilenoption aufgerufen werden. – Tim