微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何使用C#代码中的产品代码或通过命令行卸载程序

如何解决如何使用C#代码中的产品代码或通过命令行卸载程序

我有一个适用于VS 2019的安装程序项目,并且有可用的产品代码+更新代码,因此在我的应用程序中,我正在使用它以编程方式卸载应用程序。在我所看到的所有地方,这似乎都是调用msiexec并提供产品代码的正确方法,但我所得到的只是一个弹出窗口,其中包含针对msiexec和错误代码1603的信息样式输出。即使自己通过powershell运行它,也可以完成相同的操作这不再是通过命令行卸载某些东西的正确方法吗?我很乐意在命令行中使用它,并且可以轻松地更新代码,但目前没有任何操作。

参考了其他一些论坛帖子,codeproject网站解决方案,也许此信息只是过时或不再准确?最近在这里检查过How to uninstall MSI using its Product Code in c#

        Process process = new Process();
        process.StartInfo.FileName = "MsiExec.exe";
        process.StartInfo.Arguments = " /x " + productCode + " /Qn";
        process.StartInfo.RedirectStandardOutput = true;
        process.StartInfo.RedirectStandardError = true;
        process.StartInfo.UseShellExecute = false;
        process.Start();

        string output = process.StandardOutput.ReadToEnd();
        string err = process.StandardError.ReadToEnd();

        Debug.WriteLine(output);
        Debug.WriteLine(err);

        process.WaitForExit();
        return (process.ExitCode == 0) ? true : false; //exit code 1603,popup appears from Start()

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。