Tengo un app.config¿Cómo obtener el nombre del servicio de Windows desde app.config
<appSettings>
<add key="ServiceName" value="HasService"/>
<add key="ServiceDisplayName" value="HasService"/>
</appSettings>
mi clase de servicio instalador
[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);
}
}
quiero obtener el nombre del servicio de 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?
}
cómo obtener el nombre del servicio y el nombre de visualización del archivo app.config en la clase MyServiceInstaller.
¿Por qué quieres hacer esto? Puedo ver un argumento para poner "cosas que podrían cambiar un día" en el archivo de configuración, pero ¿pondría seriamente el nombre de un servicio en esta categoría? También puede cambiar el archivo de configuración tanto como desee, pero a menos que reinstale el servicio (es decir, a menos que MsServiceInstaller haga sus cosas), no cambiará realmente el nombre del servicio. Esto podría ser potencialmente confuso para alguien tener que mantener. – PeteH
@Pete Quiero ejecutar el servicio con dos nombres diferentes. – sinanakyazici
@sinanakyazici ¡Funcionó para mí! Muchas gracias –