using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Runtime.InteropServices; namespace Foo.ClientServices.ButtonWPForm { /// /// Button Hook uses the IClientEvents Interface to let us know of certain events /// which may require us to re-resolve the Window. /// ~This is an important feature we need to do be accurate with all our artifacts. /// We are piggy-backing on ButtonWPForm in order to have less components /// [Guid("F1AF5CAD-B9AB-4a20-80F1-EB68C577ABC4")] [InterfaceType(ComInterfaceType.InterfaceIsDual)] [ComVisible(true)] public interface IClientEvents { // An Event occured that could potentially have made artifact changes void ReResolve(int pid, IntPtr hWnd); // First and Last Activation Events void hWndInitialActivate(int pid, IntPtr hWnd, string ProcessStartUpPrms); void hWndLastDeactivate(int pid, IntPtr hWnd); // User File Events void DragNDropOccured(int pid, IntPtr hWnd, int nFiles, string SemiColonSepFileNames); void OpenOrSaveFileDialogOccured(int pid, IntPtr hWnd, string possibleLocAndFileName, string FileTypes); } }