Io uso VS 2012 e poiché i progetti di installazione sono stati rimossi da esso, devo usare InstallUtil.exe.Impossibile installare il servizio Windows con l'aiuto dello strumento InstallUtil
Non ho classe projectInstaller nell'app di Windows. Corro in prompt dei comandi:
installutil FilesMonitoringService.exe
ottengo:
C: \ Programmi \ Microsoft Visual Studio 8 \ VC#> installutil "C: \ Program Files \ Mic Rosoft Visual Studio 8 \ VC# \ CSharpProjects \ MyService \ MyService \ bin \ Release \ MyServ ice.exe " Utilità di installazione Microsoft (R) .NET Framework Versione 2.0.50727.42 Copyright (c) Microsoft Corporation. Tutti i diritti riservati.
Esecuzione di un'installazione transazionale.
Inizio della fase di installazione dell'installazione. Vedere il contenuto del file di registro per C: \ Programmi \ Microsoft Visual Studio o 8 \ VC# \ CSharpProjects \ MyService \ MyService \ bin \ Release \ MyService.exe dello stato dell'assieme. Il file si trova in C: \ Programmi \ Microsoft Visual Studio 8 \ VC# \ CSharpProj ects \ MyService \ MyService \ bin \ Release \ MyService.InstallLog. Installazione dell'assembly 'C: \ Programmi \ Microsoft Visual Studio 8 \ VC# \ CSharpProjec ts \ MyService \ MyService \ bin \ Release \ MyService.exe'. parametri interessati sono: logtoconsole = assemblypath = C: \ Programmi \ Microsoft Visual Studio 8 \ VC# \ CSharpProjects \ MyService \ MyService \ bin \ Release \ Servizio.exe logfile = C: \ Program Files \ Microsoft Visual Studio 8 \ VC# \ CSharpProjects \ MySer vice \ MyService \ bin \ Release \ MyService.InstallLog Nessun installatore pubblico con l'attributo RunInstallerAttribute.Yes è stato trovato in C: \ Programmi \ Microsoft Visual Studio 8 \ VC# \ CSharpProjects \ MyService \ Assembly MyService \ bin \ Release \ MyService.exe.
La fase di installazione è stata completata correttamente e la fase di commit è iniziata. Vedere il contenuto del file di registro per C: \ Programmi \ Microsoft Visual Studio o 8 \ VC# \ CSharpProjects \ MyService \ MyService \ bin \ Release \ MyService.exe dello stato dell'assieme. Il file si trova in C: \ Programmi \ Microsoft Visual Studio 8 \ VC# \ CSharpProj ects \ MyService \ MyService \ bin \ Release \ MyService.InstallLog. Committing assembly 'C: \ Programmi \ Microsoft Visual Studio 8 \ VC# \ CSharpProjec ts \ MyService \ MyService \ bin \ Release \ MyService.exe'. parametri interessati sono: logtoconsole = assemblypath = C: \ Programmi \ Microsoft Visual Studio 8 \ VC# \ CSharpProjects \ MyService \ MyService \ bin \ Release \ Servizio.exe logfile = C: \ Program Files \ Microsoft Visual Studio 8 \ VC# \ CSharpProjects \ MySer vice \ MyService \ bin \ Release \ MyService.InstallLog Nessun installatore pubblico con l'attributo RunInstallerAttribute.Yes è stato trovato in C: \ Programmi \ Microsoft Visual Studio 8 \ VC# \ CSharpProjects \ MyService \ Assembly MyService \ bin \ Release \ MyService.exe. Rimuovi il file InstallState perché non ci sono programmi di installazione.
La fase di conferma è stata completata correttamente.
L'installazione transazionale è stata completata.
C: \ Programmi \ Microsoft Visual Studio 8 \ VC#>
OK, sembra che tutto sia stato installato. Ma! Quando vado al task manager nella pagina dei servizi non riesco a trovare il mio servizio.
Quale potrebbe essere il motivo?
Grazie in anticipo!
Modifiche: ho fatto notare che non ho classe ProjectInstaller perché se lo aggiungo (in Designer -> Aggiungi programma di installazione) ed eseguire il comando installutil ottengo: (traduzione approssimativa)
Installazione di FilesMonitoringService ... Creazione di EventLog FilesMonitoringService in un registro applicazione jornal ...
in questa fase di installazione è verificata l'eccezione.
System.Security.SecurityException: la fonte non è stata trovata, ma non è riuscita a trovare alcuna o tutte le log jornals. Non disponibili jornals: sicurezza.
Inizia la fase di rinculo.
// molto testo
La fase di rinculo è riuscita
funzionamento gruppo Imposta eseguiti. L'installazione non è riuscita e il rinculo è stato eseguito.
Quindi, se aggiungo projectInstller al mio servizio Windows, sicuramente non riesce a installare con installUtil.
Ecco il codice generato:
[RunInstaller(true)]
public partial class ProjectInstaller : Installer
{
public ProjectInstaller()
{
InitializeComponent();
}
private void serviceInstaller1_AfterInstall(object sender, InstallEventArgs e)
{}
private void serviceProcessInstaller1_AfterInstall(object sender, InstallEventArgs e)
{}
}
Mabby ho bisogno di mettere un po 'di codice in AfterInstall metodi? Ho anche impostare questo properies in una finestra properties
:
serviceInstaller1: ServiceName -> FileMonitoringService, StartType -> automatico
ServiceProcessInstaller1: Account -> LocalSystem
o può essere attuato senza ProjectInstaller?
2017 Commento: questo argomento contiene diverse risposte e commenti utili a questo post SO simile. http://stackoverflow.com/questions/7922105/install-windows-service-created-in-visual-studio –