示例#1
0
 private static void Start(string identifier, bool waitForExit)
 {
     RepoManagement.GetReposFromDisk();
     App[] apps = AppExtras.FindApps(identifier);
     if (apps.Length == 0)
     {
         Console.WriteLine("Package not found.");
     }
     else
     {
         App tmp = apps.First();
         if (tmp.Runnable)
         {
             Console.WriteLine($"Starting {tmp.Name}");
             Process tmp1 = AppExtras.RunApp(tmp);
             if (waitForExit)
             {
                 tmp1.WaitForExit();
             }
         }
         else
         {
             Console.WriteLine($"{tmp.Name} is not runnable");
         }
     }
     Console.WriteLine("Done!");
 }
示例#2
0
        // Constructor
        public MainPage()
        {
            InitializeComponent();

            // Sample code to localize the ApplicationBar
            //BuildLocalizedApplicationBar();

            appLink = string.Format("http://www.windowsphone.com/s?appid={0}", AppExtras.GetId());
        }
示例#3
0
 private static void Show(string identifier)
 {
     RepoManagement.GetReposFromDisk();
     App[] apps = AppExtras.FindApps(identifier);
     if (apps.Length == 0)
     {
         Console.WriteLine("Package not found.");
     }
     else
     {
         Console.WriteLine(apps.First());
     }
 }
示例#4
0
 private static void Search(string identifier)
 {
     RepoManagement.GetReposFromDisk();
     App[] apps = AppExtras.FindApps(identifier);
     Console.WriteLine($"Found {apps.Length} app(s)");
     if (apps.Length > 0)
     {
         Console.WriteLine(apps.ToStringTable(new[]
         {
             "Name", "Guid"
         },
                                              u => u.Name,
                                              u => u.Id));
     }
 }
示例#5
0
 private static void Reinstall(string identifier, bool force)
 {
     RepoManagement.GetReposFromDisk();
     App[] apps = AppExtras.FindApps(identifier);
     if (apps.Length == 0)
     {
         Console.WriteLine("Package not found.");
     }
     else
     {
         App tmp = apps.First();
         Console.WriteLine($"Reinstalling {tmp.Name}");
         AppExtras.Update(tmp, force);
     }
     Console.WriteLine("Done!");
 }
示例#6
0
        public override void Run()
        {
#if !DEBUG
            try
            {
#endif
            AppExtras.Update(App, false);
            _postInstall?.Invoke();
#if !DEBUG
        }

        catch (Exception e1)
        {
            MessageBox.Show(e1.ToString(), "Install failed");
        }
#endif
        }
示例#7
0
        private static void DistUpgrade()
        {
            RepoManagement.GetReposFromDisk();
            foreach (KeyValuePair <Guid, App> app in GlobalVariables.Apps.Where(s =>
                                                                                (s.Value.Status & Status.Updatable) == Status.Updatable))
            {
                Console.WriteLine($"Updating {app.Value.Name}");
                AppExtras.Update(app.Value, false);
            }
#if !DEBUG
            if (Assembly.GetExecutingAssembly().GetName().Version < UpdateCheck.OnlineVersion)
            {
                Console.WriteLine("Updating self");
                Other.UpgradeSelf(false);
            }
#endif
            Console.WriteLine("Done!");
        }
示例#8
0
 private static void Upgrade(string identifier, bool force)
 {
     RepoManagement.GetReposFromDisk();
     App[] apps = AppExtras.FindApps(identifier);
     if (apps.Length == 0)
     {
         Console.WriteLine("Package not found.");
     }
     else
     {
         App tmp = apps.First();
         if ((tmp.Status & Status.Updatable) == Status.Updatable)
         {
             Console.WriteLine($"Upgrading {tmp.Name}");
             AppExtras.Update(tmp, force);
         }
         else
         {
             Console.WriteLine("Package is up-to-date");
         }
     }
     Console.WriteLine("Done!");
 }
示例#9
0
 private static void Purge(string identifier)
 {
     RepoManagement.GetReposFromDisk();
     App[] apps = AppExtras.FindApps(identifier);
     if (apps.Length == 0)
     {
         Console.WriteLine("Package not found.");
     }
     else
     {
         App tmp = apps.First();
         if ((tmp.Status & Status.Installed) == Status.Installed)
         {
             Console.WriteLine($"Purging {tmp.Name}");
             AppExtras.Remove(tmp, true);
         }
         else
         {
             Console.WriteLine("Package is not installed");
         }
     }
     Console.WriteLine("Done!");
 }
示例#10
0
 private static void Install(string identifier, bool force)
 {
     RepoManagement.GetReposFromDisk();
     App[] apps = AppExtras.FindApps(identifier);
     if (apps.Length == 0)
     {
         if (File.Exists(identifier))
         {
             Console.WriteLine("Name:");
             string name = Console.ReadLine();
             AppInstall.InstallZip(identifier, new App(name, "Locally installed package, removal only",
                                                       GlobalVariables.MinimumVer, "", true, "",
                                                       Guid.NewGuid(), Color.Red, "", false, ""), force);
             Console.WriteLine($"Successfully installed \"{name}\"");
         }
         else
         {
             Console.WriteLine("Package not found.");
             Console.WriteLine(identifier);
         }
     }
     else
     {
         App tmp = apps.First();
         if ((tmp.Status & Status.Installed) == Status.Installed)
         {
             Console.WriteLine("Package is already installed");
         }
         else
         {
             Console.WriteLine($"Installing {tmp.Name}");
             AppInstall.Install(tmp, true);
         }
     }
     Console.WriteLine("Done!");
 }
示例#11
0
 private void btnRateMe_Click(object sender, System.Windows.RoutedEventArgs e)
 {
     AppExtras.RateApp();
 }
示例#12
0
 private void menuSMS_Click(object sender, EventArgs e)
 {
     AppExtras.SendSMS("", composeBody(false));
 }
示例#13
0
 private void menuEmail_Click(object sender, EventArgs e)
 {
     AppExtras.SendEmail("", messageTitle, composeBody(true));
 }
示例#14
0
 private void menuRate_Click(object sender, EventArgs e)
 {
     AppExtras.RateApp();
 }
示例#15
0
 private void menuShare_Click(object sender, EventArgs e)
 {
     AppExtras.ShareSocial(messageTitle, leadinLine, searchLink, appLink);
 }
示例#16
0
 private void menuFind_Click(object sender, EventArgs e)
 {
     AppExtras.FindInStore(companyname);
 }
示例#17
0
 private void btnFindApps_Click(object sender, System.Windows.RoutedEventArgs e)
 {
     AppExtras.FindInStore(companyname);
 }
示例#18
0
 private void btnShareMe_Click(object sender, System.Windows.RoutedEventArgs e)
 {
     //NavigationService.Navigate(new Uri("/SharePage.xaml", UriKind.Relative));
     AppExtras.ShareSocial(messageTitle, leadinLine, searchLink, appLink);
 }