BeforeUninstall event + Process bøvl
HejSidder og prøver at auto-uninstalle en COM service fra komponenttjenester v.h.a. Regsvcs /u, men kan ikke få min kode til at virke.
Jeg har et deployment project, der i CustomAction/Uninstall bruger en CustomInstall klasse, til bl.a. at afinstallere servicen.
Jeg har tjekket at min assemblypath(se kode) er korrekt, og har prøvet at køre Regsvcs /u fra en kommadoprompt, og der virker det!
Det skal lige siges, at jeg under install gør det samme bare med /fc parameteren, og det virker fint - den lægger sig pænt ind i komponenttjenester.
Det eneste mystiske jeg ser under afinstallationen er, at beforeinstall eventet først bliver fyret af sent under afinstallationen.
Hvorfor vil den ikke slette min service fra komponenttjenesterne?
[code]
private string regsvcsPath = Environment.GetEnvironmentVariable("windir") + @"\Microsoft.NET\Framework\v2.0.50727\regsvcs.exe";
public CustomInstaller()
{
InitializeComponent();
this.BeforeUninstall += new InstallEventHandler(CustomInstaller_BeforeUninstall);
}
void CustomInstaller_BeforeUninstall(object sender, InstallEventArgs e)
{
try
{
string parameters = @" /u " + this.Context.Parameters["assemblypath"];
ProcessStartInfo psi = new ProcessStartInfo(this.regsvcsPath, parameters);
Process.Start(psi);
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString(), "Uninstall error");
}
}
[/code]
