2
我有一個Visual Studio安裝項目,在卸載步驟上有一個自定義操作。我可以繞過Visual Studio安裝項目中的卸載嗎?
該自定義操作將只顯示一個窗口,用戶可以在其中輸入一些憑證。如果憑據是正確的,我想卸載應用程序。否則,我想保持應用程序安裝(繞過卸載過程)。
我創建了一個定製安裝程序類,如this文章。
適合我的需要的代碼如下:
public override void Uninstall(IDictionary savedState)
{
var window = new CredentialManager();
if(window.ShowDialog() == DialogResult.OK)
{
base.Uninstall(savedState);
}
}
CredentialManager是我的形式,我用它來獲取用戶的憑據,並決定他們是否正確與否。
我期待卸載應用程序只有當條件被驗證,但它仍然卸載應用程序!即使我將Uninstall方法留空,它仍會卸載應用程序。
你知道一種方法來實現我想要的嗎?
謝謝你的尊敬。
我甚至試過base.Uninstall(null);但它沒有完成這項工作 –