public void PerformTreatment() { int packageCount = 0; try { using (DismSession session = DismApi.OpenOnlineSession()) { DismAppxPackageCollection dismAppxPackages = DismApi.GetProvisionedAppxPackages(session); foreach (var package in dismAppxPackages) { try { if (StoreApps.shouldRemove(package.DisplayName)) { DismApi.RemoveProvisionedAppxPackage(session, package.PackageName); logger.Log("Successfully deprovisioned {0}", package.DisplayName); } else { logger.Log("Not deprovisioning {0}", package.DisplayName); } } catch (DismRebootRequiredException ex) { logger.Log("Successfully deprovisioned {0}: {1}", package.DisplayName, ex.Message); } packageCount += 1; } } } catch (Exception ex) { logger.Log("An error occurred while deprovisioning packages: {0}", ex.Message); } if (packageCount <= 0) { logger.Log("No Windows Store packages were deprovisioned."); } }
public void PerformTreatment() { int packageCount = 0; IEnumerable <Package> packages = packageManager.FindPackages(); foreach (var package in packages) { // Don't remove frameworks if (package.IsFramework) { continue; } // Don't remove system packages if (package.SignatureKind == PackageSignatureKind.System) { continue; } if (StoreApps.shouldRemove(package.Id.Name)) { RemovePackage(package); packageCount += 1; } else { logger.Log("Not removing {0}", package.Id.Name); } } if (packageCount <= 0) { logger.Log("No Windows Store applications were uninstalled."); } logger.Log(""); }