从Web窗体停止windows安装程序

本文关键字:windows 安装 程序 Web 窗体 | 更新日期: 2023-09-27 18:22:25

我的windows服务有一个windows安装程序,它在安装方法上打开一个窗口窗体。表单有一个隐藏表单的取消按钮。同时单击我想停止安装,并显示一条安装中断的消息。

安装代码为

public override void Install(IDictionary stateSaver)
        {
            base.Install(stateSaver);
                Form databaseSettings = new DatabaseSettings(this,stateSaver);
                databaseSettings.BringToFront();
                databaseSettings.TopMost = true;
                databaseSettings.ShowDialog(); 
        }

取消按钮的代码是

 private void btnDone_Click(object sender, EventArgs e)
        {
 this.Close();
}

请让我知道该怎么做。将提供一个示例代码。

从Web窗体停止windows安装程序

这似乎是Visual Studio自定义操作,因此您向包含错误消息的ctor抛出InstallException,安装将回滚。

http://msdn.microsoft.com/en-us/library/system.configuration.install.installexception(v=vs.110).aspx

安装自定义操作在安装完所有文件后运行,这就是它回滚并卸载所有内容的原因。此外,VS自定义操作在不应该显示UI的执行序列中运行,任何想要静默安装的人都会倒霉。收集用户输入的正确位置是在前面的UI序列中,如果封装的VS对话框不足,您应该考虑使用另一个工具,该工具可以让您在UI序列中创建对话框,并在安装开始前验证它们等。