Ho un app.configCome ottenere il nome del servizio Windows da app.config
<appSettings>
<add key="ServiceName" value="HasService"/>
<add key="ServiceDisplayName" value="HasService"/>
</appSettings>
mia classe di servizio di installazione
[RunInstaller(true)]
public class MyServiceInstaller : System.Configuration.Install.Installer
{
public MyServiceInstaller()
{
var process = new ServiceProcessInstaller {Account = ServiceAccount.LocalSystem};
var serviceAdmin = new ServiceInstaller
{
StartType = ServiceStartMode.Manual,
ServiceName = "HasService",
DisplayName = "HasService"
};
Installers.Add(process);
Installers.Add(serviceAdmin);
}
}
voglio ottenere il nome del servizio da app.config.
var serviceAdmin = new ServiceInstaller
{
StartType = ServiceStartMode.Manual,
ServiceName = GetServiceNameAppConfig("ServiceName"),
DisplayName = GetServiceNameAppConfig("ServiceDisplayName")
};
public string GetServiceNameAppConfig(string serviceName)
{
//what should i write here?
}
Come ottenere il nome del servizio e la visualizzazione del servizio di denominazione da app.config file in classe MyServiceInstaller.
perché si vuole fare questo? Posso vedere un argomento per inserire "cose che potrebbero cambiare un giorno" nel file di configurazione, ma metteresti seriamente il nome di un servizio in questa categoria? Inoltre è possibile modificare il file di configurazione quanto si desidera, ma a meno che non si reinstalli il servizio (ad esempio, a meno che MsServiceInstaller non faccia il proprio), in realtà non si cambierà il nome del servizio. Ciò potrebbe potenzialmente creare confusione per qualcuno da mantenere. – PeteH
@Pete voglio eseguire il servizio con due nomi diversi. – sinanakyazici
@sinanakyazici Ha funzionato per me! Grazie mille –