Tengo una clase de instalador que usa ServiceProcessInstaller
. En la clase de instalación en el constructor lo añado a los instaladores:ServiceProcessInstaller falla con "No se realizó la asignación entre los nombres de cuenta y los ID de seguridad"
serviceProcessInstaller = new ServiceProcessInstaller();
serviceInstaller = new ServiceInstaller();
// Add Both Installers to Project Installers Collection to be Run
Installers.AddRange(new Installer[]
{
serviceProcessInstaller,
serviceInstaller
});
y en el método de instalación puse el nombre de usuario y contraseña:
public override void Install(IDictionary stateSaver)
{
.... open the form, bla bla bla
serviceProcessInstaller.Password = accountForm.txtPassword.Text;
serviceProcessInstaller.Username = accountForm.txtServiceAccount.Text;
serviceProcessInstaller.Account = ServiceAccount.User;
}
cuando intento ejecutarlo sin embargo, tengo la muy mensaje de error descriptivo: "No se realizó la asignación entre los nombres de cuenta y las identificaciones de seguridad". ¿Qué estoy haciendo mal?
EDIT: Comprobé que este error solo ocurre cuando instalo este componente usando el paquete msi. Funciona muy bien cuando ejecuto InstallUtil contra él.
Esto es interesante. Tengo exactamente el mismo problema, pero el enfoque anterior no me importa. Estoy usando VS2010/NET4 y me pregunto si MS ha cambiado algo aquí. Estoy trabajando con código que funcionaba con versiones anteriores de .NET. – PeteH
¿No hay ningún error aquí, mezclando los parámetros USERNAME y PASSWORD? ¿O es un capricho? –
@NiklasRingdahl, aplausos - corregidos. – Grzenio