【发布时间】:2014-03-12 06:48:11
【问题描述】:
是否可以从自定义操作中退出 msi installar 而不会出错?
我正在使用 Visual Studio 安装项目来创建 msi,并且我添加了一个自定义操作 exe 来安装。如果我从 exe 返回 0 以外的值,它将终止安装。但它显示一个错误。我需要退出安装而不显示错误。
谢谢。
【问题讨论】:
标签: visual-studio setup-deployment custom-action
是否可以从自定义操作中退出 msi installar 而不会出错?
我正在使用 Visual Studio 安装项目来创建 msi,并且我添加了一个自定义操作 exe 来安装。如果我从 exe 返回 0 以外的值,它将终止安装。但它显示一个错误。我需要退出安装而不显示错误。
谢谢。
【问题讨论】:
标签: visual-studio setup-deployment custom-action
最后我找到了一种方法来使用来自http://chensuping.blogspot.com/2013/05/windows-setup-project-vbs-custom-action.html 的 vbscript 自定义操作。
【讨论】:
在您的安装程序类中尝试此代码。我希望它能解决你的问题。
protected override void OnBeforeInstall(IDictionary savedState)
{
if (LaunchOnBeforeInstall())
{
base.OnBeforeInstall(savedState);
}
else
{
throw new Exception("You cancelled installation");
}
}
public bool LaunchOnBeforeInstall()
{
Form2 frm2 = new Form2();
DialogResult result = frm2.ShowDialog();
if (result == DialogResult.Cancel)
{
return false;
}
else
{
return true;
}
}
并且还放了“NOTPREVIOUSVERSIONSINSTALLED”
【讨论】: