/// <summary>
 /// Attach startup entries to uninstaller entries that are automatically detected as related.
 /// </summary>
 public static void AttachStartupEntries(IEnumerable <ApplicationUninstallerEntry> uninstallers, IEnumerable <StartupEntryBase> startupEntries)
 {
     // Using DoForEach to avoid multiple enumerations
     StartupManager.AssignStartupEntries(uninstallers
                                         .DoForEach(x => { if (x != null)
                                                           {
                                                               x.StartupEntries = null;
                                                           }
                                                    }), startupEntries);
 }
        internal void ReassignStartupEntries(bool refreshListView, IEnumerable <StartupEntryBase> items)
        {
            // Using DoForEach to avoid multiple enumerations
            StartupManager.AssignStartupEntries(AllUninstallers
                                                .DoForEach(x => { if (x != null)
                                                                  {
                                                                      x.StartupEntries = null;
                                                                  }
                                                           }), items);

            if (refreshListView)
            {
                RefreshList();
            }
        }