如何手动清除畸形的wix-burn包?

Ale*_*lex 9 customization wix burn

我正在学习如何为wix-burn开发自定义托管引导程序.根据我的知识,没有正式的教程,非官方的教程总是充满了我不感兴趣的WPF内容,论坛上的大多数人做的不仅仅是说你必须创建一个继承自BootstrapperApplication的类并覆盖Run()方法.

我这样做了,创建了配置文件,将有效负载添加到xml标记中.由此产生的安装程序什么也没做,实际上它永远运行,只有杀死它才能阻止它 我真诚地期望调用base.Run()会给我一些基本的默认的无GUI行为.但这只是一种抽象的方法.最后我了解到我必须调用一些Engine.functions()来实际做一些工作.所以我写这个测试:

protected override void Run()
{
    Engine.Detect();
    Engine.Plan(LaunchAction.Install);
    Engine.Apply(IntPtr.Zero);
    Engine.Quit(0);
}
Run Code Online (Sandbox Code Playgroud)

我成功编译了一个实际安装的软件包,问题是它无法卸载.我的问题是,我该怎样做才能从我的系统中清除它?我必须删除哪些注册表项,必须删除哪些缓存包,以及我还必须做些什么来摆脱它?

jjj*_*jjj 1

首先,注册表项将位于下面列出的两个位置之一 - 它可能是第一个位置,因为第二个位置适用于安装在 64 位操作系统上的 32 位应用程序。

\n\n
    \n
  • HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall
  • \n
  • HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninst\xe2\x80\x8c\xe2\x80\x8ball
  • \n
\n\n

其次,您可以使用注册表项来确定可执行文件的缓存位置以供卸载,该位置可能位于类似于 的文件夹中C:\\ProgramData\\Package Cache

\n\n

如果这是 .msi 安装,则存在另一个注册表项,并且该文件缓存在此处提到的不同位置。

\n\n

其他链接:

\n\n\n