我试图创建一个示例的WPF应用程序,将执行一些任务时,应用程序被禁用。我找不到任何可以在应用程序被禁用时触发的事件。
我尝试使用这个示例代码,
public App()
{
PackageCatalog pk = PackageCatalog.OpenForCurrentPackage();
pk.PackageUninstalling += PackageUninstalling;
}
private void PackageUninstalling(PackageCatalog sender, PackageUninstallingEventArgs args)
{
// Do something here
}
但这会导致System.InvalidOperationException错误,
System.InvalidOperationException:'进程没有包标识。(HRESULT中的异常:0x80073D54)“
**编辑:**应用程序与Windows应用程序打包项目打包。
Edit2:发现问题,原因是应用未打包。 Package 后,问题就解决了。感谢mm8但是我在卸载过程中找不到任何卸载事件。
1条答案
按热度按时间fbcarpbf1#
您必须运行实际的Windows应用程序打包项目,而不是应用程序项目。未打包的应用没有包标识。
要检测卸载,您可以使用desktop6:UninstallAction包扩展,该扩展需要
customInstallActions
受限功能,并指定用户卸载应用时要运行的安装程序文件。据我所知,没有其他方法可以让一个关闭的应用程序检测到这一点。