Ejemplo n.º 1
0
        public override void Install(System.Collections.IDictionary stateSaver)
        {
            base.Install(stateSaver);

            string strParameter = this.Context.Parameters["rootdir"];
            if (string.IsNullOrEmpty(strParameter) == true)
                return;

#if NO
            string strRootDir = UnQuote(this.Context.Parameters["rootdir"]);

            InstanceDialog dlg = new InstanceDialog();
            GuiUtil.AutoSetDefaultFont(dlg);

            dlg.SourceDir = strRootDir;
            dlg.StartPosition = FormStartPosition.CenterScreen;
            dlg.ShowDialog(ForegroundWindow.Instance);

            if (dlg.DialogResult == DialogResult.Cancel)
                throw new InstallException("用户取消安装。");

            if (dlg.Changed == true)
            {
                // 兑现修改

            }
#endif
        }
Ejemplo n.º 2
0
        public override void Uninstall(System.Collections.IDictionary savedState)
        {
            // Debug.Assert(false, "");

            base.Uninstall(savedState);

            string strParameter = this.Context.Parameters["rootdir"];
            if (string.IsNullOrEmpty(strParameter) == true)
                return;

#if NO
            String strRootDir = UnQuote(strParameter);

            DialogResult result;

            string strText = "是否完全卸载?\r\n\r\n"
                + "单击'是',则把全部实例的数据目录删除,所有的库配置信息丢失,所有的实例信息丢失。以后安装时需要重新安装数据目录和数据库。\r\n\r\n"
                + "单击'否',不删除数据目录,仅卸载执行程序,下次安装时可以继续使用已存在的库配置信息。升级安装前的卸载应选此项。";
            result = MessageBox.Show(ForegroundWindow.Instance,
                strText,
                "卸载 dp2Library",
                MessageBoxButtons.YesNo,
                MessageBoxIcon.Question,
                MessageBoxDefaultButton.Button2);
            if (result == DialogResult.Yes)
            {
                InstanceDialog dlg = new InstanceDialog();
                GuiUtil.AutoSetDefaultFont(dlg);
                dlg.Text = "彻底卸载所有实例和数据目录";
                dlg.Comment = "下列实例将被全部卸载。请仔细确认。一旦卸载,全部数据目录和实例信息将被删除,并且无法恢复。";
                dlg.UninstallMode = true;
                dlg.SourceDir = strRootDir;
                dlg.StartPosition = FormStartPosition.CenterScreen;
                dlg.ShowDialog(ForegroundWindow.Instance);

                if (dlg.DialogResult == DialogResult.Cancel)
                {
                    MessageBox.Show(ForegroundWindow.Instance,
                        "已放弃卸载全部实例和数据目录。仅仅卸载了可执行程序。");
                }
            }
#endif
        }