protected virtual void Dispose(bool bDispose) { if (!bDispose) { _Dispose = true; if (myWindowProcess != null) { myWindowProcess.Disposed -= myWindowProcess_Disposed; myWindowProcess.ErrorDataReceived -= myWindowProcess_ErrorDataReceived; myWindowProcess.Exited -= myWindowProcess_Exited; myWindowProcess.OutputDataReceived -= myWindowProcess_OutputDataReceived; myWindowProcess.Dispose(); myWindowProcess = null; } if (myConfigWindow != null) { myConfigWindow = null; } if (myWindowExStyleList != null) { myWindowExStyleList.Clear(); myWindowExStyleList = null; } if (myWindowStyleList != null) { myWindowStyleList.Clear(); myWindowStyleList = null; } } }
public bool SaveCurrentSizeLocation() { if (myHandle != IntPtr.Zero) { if (myWindowRectangle != null) { if (myConfigWindow == null) { myConfigWindow = new Save.ConfigWindow(myWindowProcessName); } myConfigWindow.WindowRectangle = myWindowRectangle; return(true); } else { Log.cLogger.Log("Can't save current Size Location because the rectangle of the Window is not set"); return(false); } } else { Log.cLogger.Log("Can't save current Size Location because no intptr Handle is set"); return(false); } }
public Window(Process prc) { if (prc != null) { if (prc.MainWindowHandle != IntPtr.Zero) { myHaveWindow = true; myHandle = prc.MainWindowHandle; myWindowTitle = prc.MainWindowTitle; myWindowProcessName = prc.ProcessName; myWindowProcessID = prc.Id; myConfigWindow = new Save.ConfigWindow(myWindowProcessName); myWindowProcess = prc; try { myWindowProcess.EnableRaisingEvents = true; } catch (System.ComponentModel.Win32Exception scex) { if (scex.ErrorCode != -2147467259) { System.Diagnostics.Debug.Print(string.Format("Process can't raise events Processname:'{0}' Ex:'{1}'", myWindowProcessName, scex.Message)); } } myWindowProcess.Disposed += myWindowProcess_Disposed; myWindowProcess.ErrorDataReceived += myWindowProcess_ErrorDataReceived; myWindowProcess.Exited += myWindowProcess_Exited; myWindowProcess.OutputDataReceived += myWindowProcess_OutputDataReceived; } else { myHaveWindow = false; } } }