Exemple #1
0
 public int KillApp(KillAppType type, FileInfo app)
 {
     if (app == null)
     {
         return(0);
     }
     XMQSession.Current.Publish(new XMessage()
     {
         MsgData = $"{type.ToString()}  [{app.FullName}]"
     });
     if (type == KillAppType.AppSuite)
     {
         killprocesses(ProcessStore.Instance.GetProcessesByName(app));
         return(1);
     }
     if (type == KillAppType.AppSelf)
     {
         killprocesses(ProcessStore.Instance.GetProcesses(app));
         return(1);
     }
     if (type == KillAppType.Reboot)
     {
         killprocesses(ProcessStore.Instance.GetProcesses(app));
         return(startApp(app));
     }
     killprocesses(ProcessStore.Instance.GetProcesses(app));
     return(1);
 }
Exemple #2
0
        private int killApp(KillAppType killType)
        {
            var killer = getAppKillPath();

            if (killer == null)
            {
                return(0);
            }
            var app = new FileInfo(Process.GetCurrentProcess().MainModule.FileName);
            ProcessStartInfo process = new ProcessStartInfo(killer.FullName);

            process.UseShellExecute  = true;
            process.WindowStyle      = ProcessWindowStyle.Minimized;
            process.WorkingDirectory = app.Directory.FullName;
            process.Arguments        = $"\"KillType = {((int)killType).ToString()}\" \"AppPath = {app.FullName}\"";
            System.Diagnostics.Process.Start(process);
            return(1);
        }