public UwpFunc.AppInfo GetAppInfoByID(string appPackageID) { UwpFunc.AppInfo info = null; IEnumerable <Windows.ApplicationModel.Package> packages; try { packages = packageManager.FindPackages(appPackageID); } catch { return(null); } foreach (var package in packages) { info = GetInfo(package); if (info != null) { break; } } return(info); }
public UwpFunc.AppInfo GetAppInfoBySid(string sid) { UwpFunc.AppInfo info = null; AppInfosBySidLock.EnterReadLock(); AppInfosBySid.TryGetValue(sid, out info); AppInfosBySidLock.ExitReadLock(); if (info != null) { return(info); } string appPackageID = SidToAppPackage(sid); if (appPackageID == null || appPackageID.Length == 0) { return(null); } IEnumerable <Windows.ApplicationModel.Package> packages; try { packages = packageManager.FindPackages(appPackageID); } catch { return(null); } foreach (var package in packages) { info = GetInfo(package, sid); if (info != null) { AppInfosBySidLock.EnterWriteLock(); if (!AppInfosBySid.ContainsKey(sid)) { AppInfosBySid.Add(sid, info); } AppInfosBySidLock.ExitWriteLock(); break; } } return(info); }
public static void GetPackages() { Windows.Management.Deployment.PackageManager packageManager = new Windows.Management.Deployment.PackageManager(); try { IEnumerable <Windows.ApplicationModel.Package> packages = (IEnumerable <Windows.ApplicationModel.Package>)packageManager.FindPackages(); int packageCount = 0; foreach (var package in packages) { DisplayPackageInfo(package); //DisplayPackageUsers(packageManager, package); Console.WriteLine(); packageCount += 1; } if (packageCount < 1) { Console.WriteLine("No packages were found."); } } catch (UnauthorizedAccessException) { Console.WriteLine("packageManager.FindPackages() failed because access was denied. This program must be run from an elevated command prompt."); return; } //catch (Exception ex) //{ // Console.WriteLine("packageManager.FindPackages() failed, error message: {0}", ex.Message); // Console.WriteLine("Full Stacktrace: {0}", ex.ToString()); // return; //} }