public void UpdateListViewFull() { if (this.InvokeRequired) { this.Invoke(new MethodInvoker(() => { UpdateListViewFull(); })); return; } foreach (ListViewItem item in listViewMain.Items) { StartItem si = ((StartItem)(item.Tag)); item.Text = si.Name; item.ToolTipText = si.Name + "\n" + si.Path + "\n" + si.Commandline; item.SubItems[1].Tag = si.CurrentStatus; if (si.Name == "" || si.Path == "") { item.BackColor = Color.FromArgb(255, 0, 0); } else { item.BackColor = Color.Transparent; } } UpdateListView(); }
private static Process[] GetProcessFromStartItem(StartItem si) { Process[] pname = new Process[0]; int indexSlash = si.Path.LastIndexOf("\\", StringComparison.Ordinal); indexSlash = (indexSlash == -1) ? 0 : indexSlash; int indexDot = si.Path.LastIndexOf("."); indexDot = (indexDot == -1) ? 0 : indexDot; string exeName; try { exeName = si.Path.Substring(indexSlash + 1, indexDot - indexSlash - 1); // exeName = si.Path.Substring(indexSlash + 1); } catch (Exception e) { Debug.WriteLine(e.Message); Debug.WriteLine(si.Path + Autostart_Manager.Properties.Resources.Program_GetProcessFromStartItem_Slash + indexSlash + " Dot:" + indexDot); return(pname); } pname = Process.GetProcessesByName(exeName); return(pname); }
internal static void StopProcess(StartItem si) { var processes = GetProcessFromStartItem(si); foreach (Process pc in processes) { pc.Kill(); } }
public static StartItem StartItemFromGUID(StartItem passed) { foreach (StartItem si in StartItemList) { if (si.GUID == passed.GUID) { return(si); } } throw new Exception(Autostart_Manager.Properties.Resources.Helper_StartItemFromGUID_CouldNotFindStartItemFromGUID); }
public static void RunProcess(StartItem SI) { var newPro = new Process(); var si = newPro.StartInfo; si.Arguments = SI.Commandline; si.FileName = SI.Path; try { newPro.Start(); } catch (Exception) { } }
private void ButtonNew_Click(object sender, EventArgs e) { StartItem newItem = new StartItem(); Edit addWindow = new Edit(newItem); addWindow.ShowDialog(); switch (addWindow.DialogResult) { case DialogResult.OK: AddItem(newItem); break; default: break; } }
public Edit(StartItem si) { NewStartItem = si; InitializeComponent(); // Set Default textbox strings DefaultName = textBoxName.Text; DefaultPath = textBoxPath.Text; DefaultCommandline = textBoxCommandline.Text; // Set Fields from Passed StartItem textBoxName.Text = si.Name; textBoxPath.Text = si.Path; textBoxCommandline.Text = si.Commandline; checkBoxKeepRunning.Checked = si.KeepAlive; ReplaceText(); // Change to Add or Edit Text = (si.Name == "") ? Autostart_Manager.Properties.Resources.Edit_Edit_AddNewItem : Autostart_Manager.Properties.Resources.Edit_Edit_Edit + si.Name; buttonAdd.Text = (si.Name == "") ? Autostart_Manager.Properties.Resources.Edit_InitializeComponent_Add : Autostart_Manager.Properties.Resources.Edit_InitializeComponent_Edit; }
private void AddItem(StartItem si) { ListViewItem newItem = new ListViewItem(); newItem.Tag = si; // newItem.Text = ((StartItem)(newItem.Tag)).Name; // newItem.ToolTipText = ((StartItem)(newItem.Tag)).Name + "\n" + ((StartItem)(newItem.Tag)).Path + "\n" + ((StartItem)(newItem.Tag)).Commandline; var Key = ((StartItem)(newItem.Tag)).GUID.ToString(); newItem.ImageKey = Key; newItem.Name = Key; listViewMain.SmallImageList.Images.Add(Key, ((StartItem)(newItem.Tag)).DisplayedImage); newItem.UseItemStyleForSubItems = false; ListViewItem.ListViewSubItem statusItem = new ListViewItem.ListViewSubItem(); statusItem.Tag = ((StartItem)(newItem.Tag)).CurrentStatus; newItem.SubItems.Add(statusItem); listViewMain.Items.Add(newItem); UpdateListViewFull(); }
private void RemoveItem(StartItem si) { listViewMain.Items[si.GUID.ToString()].Remove(); Helper.StartItemList.Remove(si); UpdateListView(); }
public static bool ProcessIsRunning(StartItem si) { var processes = GetProcessFromStartItem(si); return((processes.Length != 0) ? true : false); }