Почему мой метод удаления не вызывается? - PullRequest
3 голосов
/ 29 октября 2010

Мой установщик VS 2008 не вызывает метод переопределения Uninstall в моем классе установщика. Зачем? Был вызван метод Install. Мой класс установщика выглядит так:

[RunInstaller(true)]
    public partial class InstallerClass : Installer
    {
        public InstallerClass()
        {
            InitializeComponent();
        }
        public override void Install(IDictionary stateSaver)
        {
            base.Install(stateSaver);

            //encrypt connection string
            encryptConntStr();

            //create database
            createDatabase();
        }

        public override void Commit(IDictionary savedState)
        {
            base.Commit(savedState);
        }

        public override void Rollback(IDictionary savedState)
        {
            base.Rollback(savedState);
        } 

        public override void Uninstall(IDictionary savedState)
        {
            base.Uninstall(savedState);
            System.Diagnostics.Debugger.Break();
            MessageBox.Show("I am in Uninstall now.");
            string exePathStr = Context.Parameters["targetdir"];
           ...           

        }
}

EDIT: alt text

1 Ответ

3 голосов
/ 01 ноября 2010

убедитесь, что свойство CustomActionData не является пустым. Некоторые, как он был пуст в моем случае и вызвать эту проблему. alt text

...