File: System\Design\NativeMethods.cs
Project: System.Design.dll (System.Design)
#region Assembly System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
// C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\System.Design.dll
#endregion
 
using System.Drawing;
using System.Runtime;
using System.Runtime.InteropServices;
using System.Runtime.InteropServices.ComTypes;
 
namespace System.Design
{
    internal static class NativeMethods
    {
        public const int BM_SETIMAGE = 247;
        public const int BS_ICON = 64;
        public const int CHILDID_SELF = 0;
        public const int CS_DBLCLKS = 8;
        public const int CS_DROPSHADOW = 131072;
        public const int CWP_SKIPINVISIBLE = 1;
        public const int DLGC_WANTALLKEYS = 4;
        public const int DT_CALCRECT = 1024;
        public const int E_FAIL = -2147467259;
        public const int E_INVALIDARG = -2147024809;
        public const int E_NOINTERFACE = -2147467262;
        public const int E_NOTIMPL = -2147467263;
        public const int GWL_EXSTYLE = -20;
        public const int GWL_HWNDPARENT = -8;
        public const int GWL_STYLE = -16;
        public const int GW_CHILD = 5;
        public const int GW_HWNDFIRST = 0;
        public const int GW_HWNDLAST = 1;
        public const int GW_HWNDNEXT = 2;
        public const int GW_HWNDPREV = 3;
        public const int GW_MAX = 5;
        public const int GW_OWNER = 4;
        public const int HC_ACTION = 0;
        public const int HDM_CREATEDRAGIMAGE = 4624;
        public const int HDM_GETIMAGELIST = 4617;
        public const int HDM_GETITEMRECT = 4615;
        public const int HDM_GETORDERARRAY = 4625;
        public const int HDM_HITTEST = 4614;
        public const int HDM_ORDERTOINDEX = 4623;
        public const int HDM_SETHOTDIVIDER = 4627;
        public const int HDM_SETIMAGELIST = 4616;
        public const int HDM_SETORDERARRAY = 4626;
        public const int HDN_BEGINDRAG = -310;
        public const int HDN_BEGINTRACKA = -306;
        public const int HDN_BEGINTRACKW = -326;
        public const int HDN_DIVIDERDBLCLICKA = -305;
        public const int HDN_DIVIDERDBLCLICKW = -325;
        public const int HDN_ENDDRAG = -311;
        public const int HDN_ENDTRACKA = -307;
        public const int HDN_ENDTRACKW = -327;
        public const int HDN_GETDISPINFOA = -309;
        public const int HDN_GETDISPINFOW = -329;
        public const int HDN_ITEMCHANGEDA = -301;
        public const int HDN_ITEMCHANGEDW = -321;
        public const int HDN_ITEMCHANGINGA = -300;
        public const int HDN_ITEMCHANGINGW = -320;
        public const int HDN_ITEMCLICKA = -302;
        public const int HDN_ITEMCLICKW = -322;
        public const int HDN_ITEMDBLCLICKA = -303;
        public const int HDN_ITEMDBLCLICKW = -323;
        public const int HDN_TRACKA = -308;
        public const int HDN_TRACKW = -328;
        public const int HHT_ABOVE = 256;
        public const int HHT_BELOW = 512;
        public const int HHT_ONDIVIDER = 4;
        public const int HHT_ONDIVOPEN = 8;
        public const int HHT_ONHEADER = 2;
        public const int HHT_TOLEFT = 2048;
        public const int HHT_TORIGHT = 1024;
        public const int HIST_BACK = 0;
        public const int HOLLOW_BRUSH = 5;
        public const int HTCAPTION = 2;
        public const int HTCLIENT = 1;
        public const int HTERROR = -2;
        public const int HTGROWBOX = 4;
        public const int HTHSCROLL = 6;
        public const int HTNOWHERE = 0;
        public const int HTSIZE = 4;
        public const int HTSYSMENU = 3;
        public const int HTTRANSPARENT = -1;
        public const int HTVSCROLL = 7;
        public const int HWND_BOTTOM = 1;
        public const int HWND_NOTOPMOST = -2;
        public const int HWND_TOP = 0;
        public const int HWND_TOPMOST = -1;
        public const int IMAGE_ICON = 1;
        public const int LB_ADDFILE = 406;
        public const int LB_ADDSTRING = 384;
        public const int LB_DELETESTRING = 386;
        public const int LB_DIR = 397;
        public const int LB_FINDSTRING = 399;
        public const int LB_FINDSTRINGEXACT = 418;
        public const int LB_GETANCHORINDEX = 413;
        public const int LB_GETCARETINDEX = 415;
        public const int LB_GETCOUNT = 395;
        public const int LB_GETCURSEL = 392;
        public const int LB_GETHORIZONTALEXTENT = 403;
        public const int LB_GETITEMDATA = 409;
        public const int LB_GETITEMHEIGHT = 417;
        public const int LB_GETITEMRECT = 408;
        public const int LB_GETLOCALE = 422;
        public const int LB_GETSEL = 391;
        public const int LB_GETSELCOUNT = 400;
        public const int LB_GETSELITEMS = 401;
        public const int LB_GETTEXT = 393;
        public const int LB_GETTEXTLEN = 394;
        public const int LB_GETTOPINDEX = 398;
        public const int LB_INITSTORAGE = 424;
        public const int LB_INSERTSTRING = 385;
        public const int LB_ITEMFROMPOINT = 425;
        public const int LB_MSGMAX = 432;
        public const int LB_RESETCONTENT = 388;
        public const int LB_SELECTSTRING = 396;
        public const int LB_SELITEMRANGE = 411;
        public const int LB_SELITEMRANGEEX = 387;
        public const int LB_SETANCHORINDEX = 412;
        public const int LB_SETCARETINDEX = 414;
        public const int LB_SETCOLUMNWIDTH = 405;
        public const int LB_SETCOUNT = 423;
        public const int LB_SETCURSEL = 390;
        public const int LB_SETHORIZONTALEXTENT = 404;
        public const int LB_SETITEMDATA = 410;
        public const int LB_SETITEMHEIGHT = 416;
        public const int LB_SETLOCALE = 421;
        public const int LB_SETSEL = 389;
        public const int LB_SETTABSTOPS = 402;
        public const int LB_SETTOPINDEX = 407;
        public const int LVM_CREATEDRAGIMAGE = 4129;
        public const int LVM_GETCOUNTPERPAGE = 4136;
        public const int LVM_GETEXTENDEDLISTVIEWSTYLE = 4151;
        public const int LVM_GETHEADER = 4127;
        public const int LVM_GETISEARCHSTRINGA = 4148;
        public const int LVM_GETISEARCHSTRINGW = 4213;
        public const int LVM_GETITEMSPACING = 4147;
        public const int LVM_GETITEMSTATE = 4140;
        public const int LVM_GETITEMTEXTA = 4141;
        public const int LVM_GETITEMTEXTW = 4211;
        public const int LVM_GETORIGIN = 4137;
        public const int LVM_GETSELECTEDCOUNT = 4146;
        public const int LVM_GETTEXTBKCOLOR = 4133;
        public const int LVM_GETTEXTCOLOR = 4131;
        public const int LVM_GETTOPINDEX = 4135;
        public const int LVM_GETVIEWRECT = 4130;
        public const int LVM_SETCOLUMNWIDTH = 4126;
        public const int LVM_SETEXTENDEDLISTVIEWSTYLE = 4150;
        public const int LVM_SETICONSPACING = 4149;
        public const int LVM_SETITEMCOUNT = 4143;
        public const int LVM_SETITEMPOSITION32 = 4145;
        public const int LVM_SETITEMSTATE = 4139;
        public const int LVM_SETITEMTEXTA = 4142;
        public const int LVM_SETITEMTEXTW = 4212;
        public const int LVM_SETTEXTBKCOLOR = 4134;
        public const int LVM_SETTEXTCOLOR = 4132;
        public const int LVM_SORTITEMS = 4144;
        public const int LVM_UPDATE = 4138;
        public const int LVSICF_NOINVALIDATEALL = 1;
        public const int LVSICF_NOSCROLL = 2;
        public const int LVS_EX_DOUBLEBUFFER = 65536;
        public const int LVS_EX_GRIDLINES = 1;
        public const int MK_CONTROL = 8;
        public const int MK_LBUTTON = 1;
        public const int MK_MBUTTON = 16;
        public const int MK_RBUTTON = 2;
        public const int MK_SHIFT = 4;
        public const int MK_XBUTTON1 = 32;
        public const int MK_XBUTTON2 = 64;
        public const int MWMO_INPUTAVAILABLE = 4;
        public const int NM_CLICK = -2;
        public const int NOTSRCCOPY = 3342344;
        public const int OBJID_CLIENT = -4;
        public const int OBJID_WINDOW = 0;
        public const int OLECLOSE_NOSAVE = 1;
        public const int OLECLOSE_PROMPTSAVE = 2;
        public const int OLECLOSE_SAVEIFDIRTY = 0;
        public const int OLEIVERB_DISCARDUNDOSTATE = -6;
        public const int OLEIVERB_HIDE = -3;
        public const int OLEIVERB_INPLACEACTIVATE = -5;
        public const int OLEIVERB_OPEN = -2;
        public const int OLEIVERB_PRIMARY = 0;
        public const int OLEIVERB_PROPERTIES = -7;
        public const int OLEIVERB_SHOW = -1;
        public const int OLEIVERB_UIACTIVATE = -4;
        public const int PM_NOREMOVE = 0;
        public const int PM_REMOVE = 1;
        public const int PRF_CHILDREN = 16;
        public const int PRF_CLIENT = 4;
        public const int PRF_ERASEBKGND = 8;
        public const int PRF_NONCLIENT = 2;
        public const int QS_ALLEVENTS = 191;
        public const int QS_ALLINPUT = 255;
        public const int QS_ALLPOSTMESSAGE = 256;
        public const int QS_HOTKEY = 128;
        public const int QS_INPUT = 7;
        public const int QS_KEY = 1;
        public const int QS_MOUSE = 6;
        public const int QS_MOUSEBUTTON = 4;
        public const int QS_MOUSEMOVE = 2;
        public const int QS_PAINT = 32;
        public const int QS_POSTMESSAGE = 8;
        public const int QS_SENDMESSAGE = 64;
        public const int QS_TIMER = 16;
        public const int RDW_FRAME = 1024;
        public const int RECO_DROP = 1;
        public const int RECO_PASTE = 0;
        public const int SB_BOTH = 3;
        public const int SB_BOTTOM = 7;
        public const int SB_CTL = 2;
        public const int SB_ENDSCROLL = 8;
        public const int SB_HORZ = 0;
        public const int SB_LEFT = 6;
        public const int SB_LINEDOWN = 1;
        public const int SB_LINELEFT = 0;
        public const int SB_LINERIGHT = 1;
        public const int SB_LINEUP = 0;
        public const int SB_PAGEDOWN = 3;
        public const int SB_PAGELEFT = 2;
        public const int SB_PAGERIGHT = 3;
        public const int SB_PAGEUP = 2;
        public const int SB_RIGHT = 7;
        public const int SB_THUMBPOSITION = 4;
        public const int SB_THUMBTRACK = 5;
        public const int SB_TOP = 6;
        public const int SB_VERT = 1;
        public const int SPI_GETNONCLIENTMETRICS = 41;
        public const int SRCCOPY = 13369376;
        public const int STGM_CONVERT = 131072;
        public const int STGM_CREATE = 4096;
        public const int STGM_DELETEONRELEASE = 67108864;
        public const int STGM_READ = 0;
        public const int STGM_READWRITE = 2;
        public const int STGM_SHARE_EXCLUSIVE = 16;
        public const int STGM_TRANSACTED = 65536;
        public const int STGM_WRITE = 1;
        public const int SWP_ASYNCWINDOWPOS = 16384;
        public const int SWP_DEFERERASE = 8192;
        public const int SWP_DRAWFRAME = 32;
        public const int SWP_FRAMECHANGED = 32;
        public const int SWP_HIDEWINDOW = 128;
        public const int SWP_NOACTIVATE = 16;
        public const int SWP_NOCOPYBITS = 256;
        public const int SWP_NOMOVE = 2;
        public const int SWP_NOOWNERZORDER = 512;
        public const int SWP_NOREDRAW = 8;
        public const int SWP_NOREPOSITION = 512;
        public const int SWP_NOSENDCHANGING = 1024;
        public const int SWP_NOSIZE = 1;
        public const int SWP_NOZORDER = 4;
        public const int SWP_SHOWWINDOW = 64;
        public const int S_FALSE = 1;
        public const int S_OK = 0;
        public const int TCM_HITTEST = 4877;
        public const int TVGN_ROOT = 0;
        public const int TVHT_ABOVE = 256;
        public const int TVHT_BELOW = 512;
        public const int TVHT_ONITEMBUTTON = 16;
        public const int TVHT_ONITEMICON = 2;
        public const int TVHT_ONITEMINDENT = 8;
        public const int TVHT_ONITEMLABEL = 4;
        public const int TVHT_ONITEMRIGHT = 32;
        public const int TVHT_ONITEMSTATEICON = 64;
        public const int TVHT_TOLEFT = 2048;
        public const int TVHT_TORIGHT = 1024;
        public const int TVM_GETCOUNT = 4357;
        public const int TVM_GETEXTENDEDSTYLE = 4397;
        public const int TVM_GETIMAGELIST = 4360;
        public const int TVM_GETINDENT = 4358;
        public const int TVM_GETITEMRECT = 4356;
        public const int TVM_GETNEXTITEM = 4362;
        public const int TVM_HITTEST = 4369;
        public const int TVM_SETEXTENDEDSTYLE = 4396;
        public const int TVM_SETIMAGELIST = 4361;
        public const int TVM_SETINDENT = 4359;
        public const int TVSIL_NORMAL = 0;
        public const int TVSIL_STATE = 2;
        public const int TVS_EX_DOUBLEBUFFER = 4;
        public const int TVS_EX_FADEINOUTEXPANDOS = 64;
        public const int TV_FIRST = 4352;
        public const string uuid_IAccessible = "{618736E0-3C3D-11CF-810C-00AA00389B71}";
        public const string uuid_IEnumVariant = "{00020404-0000-0000-C000-000000000046}";
        public const int VK_PROCESSKEY = 229;
        public const int WA_ACTIVE = 1;
        public const int WA_INACTIVE = 0;
        public const int WH_MOUSE = 7;
        public const int WM_ACTIVATE = 6;
        public const int WM_CANCELMODE = 31;
        public const int WM_CAPTURECHANGED = 533;
        public const int WM_CHAR = 258;
        public const int WM_CLOSE = 16;
        public const int WM_CONTEXTMENU = 123;
        public const int WM_CREATE = 1;
        public const int WM_DEADCHAR = 259;
        public const int WM_DESTROY = 2;
        public const int WM_GETDLGCODE = 135;
        public const int WM_GETOBJECT = 61;
        public const int WM_HSCROLL = 276;
        public const int WM_IME_COMPOSITION = 271;
        public const int WM_IME_ENDCOMPOSITION = 270;
        public const int WM_IME_STARTCOMPOSITION = 269;
        public const int WM_KEYDOWN = 256;
        public const int WM_KEYFIRST = 256;
        public const int WM_KEYLAST = 264;
        public const int WM_KEYUP = 257;
        public const int WM_KILLFOCUS = 8;
        public const int WM_LBUTTONDBLCLK = 515;
        public const int WM_LBUTTONDOWN = 513;
        public const int WM_LBUTTONUP = 514;
        public const int WM_MBUTTONDBLCLK = 521;
        public const int WM_MBUTTONDOWN = 519;
        public const int WM_MBUTTONUP = 520;
        public const int WM_MOUSEACTIVATE = 33;
        public const int WM_MOUSEFIRST = 512;
        public const int WM_MOUSEHOVER = 673;
        public const int WM_MOUSELAST = 522;
        public const int WM_MOUSELEAVE = 675;
        public const int WM_MOUSEMOVE = 512;
        public const int WM_MOUSEWHEEL = 522;
        public const int WM_NCACTIVATE = 134;
        public const int WM_NCHITTEST = 132;
        public const int WM_NCLBUTTONDBLCLK = 163;
        public const int WM_NCLBUTTONDOWN = 161;
        public const int WM_NCLBUTTONUP = 162;
        public const int WM_NCMBUTTONDBLCLK = 169;
        public const int WM_NCMBUTTONDOWN = 167;
        public const int WM_NCMBUTTONUP = 168;
        public const int WM_NCMOUSEHOVER = 672;
        public const int WM_NCMOUSELEAVE = 674;
        public const int WM_NCMOUSEMOVE = 160;
        public const int WM_NCPAINT = 133;
        public const int WM_NCRBUTTONDBLCLK = 166;
        public const int WM_NCRBUTTONDOWN = 164;
        public const int WM_NCRBUTTONUP = 165;
        public const int WM_NCXBUTTONDBLCLK = 173;
        public const int WM_NCXBUTTONDOWN = 171;
        public const int WM_NCXBUTTONUP = 172;
        public const int WM_NOTIFY = 78;
        public const int WM_PAINT = 15;
        public const int WM_PARENTNOTIFY = 528;
        public const int WM_PRINT = 791;
        public const int WM_PRINTCLIENT = 792;
        public const int WM_RBUTTONDBLCLK = 518;
        public const int WM_RBUTTONDOWN = 516;
        public const int WM_RBUTTONUP = 517;
        public const int WM_REFLECT = 8192;
        public const int WM_SETCURSOR = 32;
        public const int WM_SETFOCUS = 7;
        public const int WM_SETREDRAW = 11;
        public const int WM_SHOWWINDOW = 24;
        public const int WM_SIZE = 5;
        public const int WM_STYLECHANGED = 125;
        public const int WM_SYSCHAR = 262;
        public const int WM_SYSDEADCHAR = 263;
        public const int WM_SYSKEYDOWN = 260;
        public const int WM_SYSKEYUP = 261;
        public const int WM_TIMER = 275;
        public const int WM_USER = 1024;
        public const int WM_VSCROLL = 277;
        public const int WM_WINDOWPOSCHANGED = 71;
        public const int WM_WINDOWPOSCHANGING = 70;
        public const int WS_BORDER = 8388608;
        public const int WS_CLIPCHILDREN = 33554432;
        public const int WS_CLIPSIBLINGS = 67108864;
        public const int WS_DISABLED = 134217728;
        public const int WS_EX_LAYOUTRTL = 4194304;
        public const int WS_EX_STATICEDGE = 131072;
        public const int WS_EX_TOOLWINDOW = 128;
        public const int WS_POPUP = int.MinValue;
        public static readonly int HDN_ENDTRACK;
        public static IntPtr InvalidIntPtr;
        public static HandleRef NullHandleRef;
        public static int PS_SOLID;
        public static int TME_HOVER;
        public static readonly int WM_MOUSEENTER;
 
        public static IntPtr ChildWindowFromPointEx(IntPtr hwndParent, int x, int y, int uFlags);
        public static IntPtr CreateRectRgn(int x1, int y1, int x2, int y2);
        public static IntPtr DefWindowProc(IntPtr hWnd, int msg, IntPtr wParam, IntPtr lParam);
        public static bool DeleteObject(IntPtr hObject);
        public static int DispatchMessage(ref MSG msg);
        public static bool ExternalDeleteObject(HandleRef hObject);
        public static bool Failed(int hr);
        public static bool GetClientRect(IntPtr hWnd, COMRECT rect);
        public static IntPtr GetCursor();
        public static bool GetCursorPos(POINT pt);
        public static IntPtr GetFocus();
        public static short GetKeyState(int keyCode);
        public static bool GetUpdateRect(IntPtr hwnd, ref RECT rc, bool fErase);
        public static bool GetUpdateRgn(IntPtr hwnd, IntPtr hrgn, bool fErase);
        public static IntPtr GetWindow(IntPtr hWnd, int uCmd);
        public static bool GetWindowRect(IntPtr hWnd, ref RECT rect);
        public static bool IsWindowVisible(IntPtr hWnd);
        public static ITypeLib LoadRegTypeLib(ref Guid clsid, short majorVersion, short minorVersion, int lcid);
        public static ITypeLib LoadTypeLib(string typelib);
        public static int MapWindowPoints(IntPtr hWndFrom, IntPtr hWndTo, POINT pt, int cPoints);
        public static int MapWindowPoints(IntPtr hWndFrom, IntPtr hWndTo, ref RECT rect, int cPoints);
        public static int MultiByteToWideChar(int CodePage, int dwFlags, byte[] lpMultiByteStr, int cchMultiByte, char[] lpWideCharStr, int cchWideChar);
        public static bool PeekMessage(ref MSG msg, IntPtr hwnd, int msgMin, int msgMax, int remove);
        public static string QueryPathOfRegTypeLib(ref Guid guid, short majorVersion, short minorVersion, int lcid);
        public static int RevokeDragDrop(IntPtr hwnd);
        public static IntPtr SendMessage(IntPtr hWnd, int msg, int wParam, int lParam);
        public static IntPtr SendMessage(IntPtr hWnd, int msg, int wParam, string lParam);
        public static IntPtr SendMessage(IntPtr hWnd, int Msg, int wParam, TV_HITTESTINFO lParam);
        public static IntPtr SendMessage(IntPtr hWnd, int Msg, IntPtr wParam, HDHITTESTINFO lParam);
        public static IntPtr SendMessage(IntPtr hWnd, int msg, IntPtr wParam, IntPtr lParam);
        public static IntPtr SetParent(IntPtr hWnd, IntPtr hWndParent);
        public static bool Succeeded(int hr);
        public static bool TranslateMessage(ref MSG msg);
        public static bool ValidateRect(IntPtr hwnd, IntPtr prect);
        public static IntPtr WindowFromPoint(int x, int y);
 
        [ComVisible(false)]
        public enum StructFormat
        {
            Ansi = 1,
            Unicode = 2,
            Auto = 3
        }
        [Flags]
        public enum TabControlHitTest
        {
            TCHT_NOWHERE = 1,
            TCHT_ONITEMICON = 2,
            TCHT_ONITEMLABEL = 4
        }
 
        [ComVisible(true)]
        [Guid("0000010F-0000-0000-C000-000000000046")]
        [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
        public interface IAdviseSink
        {
            void OnClose();
            void OnDataChange(FORMATETC pFormatetc, STGMEDIUM pStgmed);
            void OnRename(object pmk);
            void OnSave();
            void OnViewChange(int dwAspect, int lindex);
        }
        [ComVisible(true)]
        [Guid("BD3F23C0-D43E-11CF-893B-00AA00BDCE1A")]
        [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
        public interface IDocHostUIHandler
        {
            int EnableModeless(bool fEnable);
            int FilterDataObject(IDataObject pDO, out IDataObject ppDORet);
            int GetDropTarget(IOleDropTarget pDropTarget, out IOleDropTarget ppDropTarget);
            int GetExternal(out object ppDispatch);
            int GetHostInfo(DOCHOSTUIINFO info);
            int GetOptionKeyPath(string[] pbstrKey, int dw);
            int HideUI();
            int OnDocWindowActivate(bool fActivate);
            int OnFrameWindowActivate(bool fActivate);
            int ResizeBorder(COMRECT rect, IOleInPlaceUIWindow doc, bool fFrameWindow);
            int ShowContextMenu(int dwID, POINT pt, object pcmdtReserved, object pdispReserved);
            int ShowUI(int dwID, IOleInPlaceActiveObject activeObject, IOleCommandTarget commandTarget, IOleInPlaceFrame frame, IOleInPlaceUIWindow doc);
            int TranslateAccelerator(ref MSG msg, ref Guid group, int nCmdID);
            int TranslateUrl(int dwTranslate, string strURLIn, out string pstrURLOut);
            int UpdateUI();
        }
        [Guid("00000103-0000-0000-C000-000000000046")]
        [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
        public interface IEnumFORMATETC
        {
            int Clone(IEnumFORMATETC[] ppenum);
            int Next(int celt, FORMATETC rgelt, int[] pceltFetched);
            int Reset();
            int Skip(int celt);
        }
        [Guid("00000104-0000-0000-C000-000000000046")]
        [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
        public interface IEnumOLEVERB
        {
            void Clone(out IEnumOLEVERB ppenum);
            int Next(int celt, tagOLEVERB rgelt, int[] pceltFetched);
            void Reset();
            int Skip(int celt);
        }
        [Guid("00000105-0000-0000-C000-000000000046")]
        [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
        public interface IEnumSTATDATA
        {
            void Clone(IEnumSTATDATA[] ppenum);
            void Next(int celt, STATDATA rgelt, int[] pceltFetched);
            void Reset();
            void Skip(int celt);
        }
        [ComVisible(true)]
        [Guid("3050F1D8-98B5-11CF-BB82-00AA00BDCE0B")]
        [InterfaceType(ComInterfaceType.InterfaceIsDual)]
        public interface IHTMLBodyElement
        {
            object CreateTextRange();
            object GetALink();
            string GetBackground();
            object GetBgColor();
            string GetBgProperties();
            object GetBottomMargin();
            object GetLeftMargin();
            object GetLink();
            bool GetNoWrap();
            object GetOnbeforeunload();
            object GetOnload();
            object GetOnselect();
            object GetOnunload();
            object GetRightMargin();
            string GetScroll();
            object GetText();
            object GetTopMargin();
            object GetVLink();
            void SetALink(object p);
            void SetBackground(string p);
            void SetBgColor(object p);
            void SetBgProperties(string p);
            void SetBottomMargin(object p);
            void SetLeftMargin(object p);
            void SetLink(object p);
            void SetNoWrap(bool p);
            void SetOnbeforeunload(object p);
            void SetOnload(object p);
            void SetOnselect(object p);
            void SetOnunload(object p);
            void SetRightMargin(object p);
            void SetScroll(string p);
            void SetText(object p);
            void SetTopMargin(object p);
            void SetVLink(object p);
        }
        [ComVisible(true)]
        [Guid("3050F3DB-98B5-11CF-BB82-00AA00BDCE0B")]
        [InterfaceType(ComInterfaceType.InterfaceIsDual)]
        public interface IHTMLCurrentStyle
        {
            object GetAttribute(string strAttributeName, int lFlags);
            string GetBackgroundAttachment();
            object GetBackgroundColor();
            string GetBackgroundImage();
            object GetBackgroundPositionX();
            object GetBackgroundPositionY();
            string GetBackgroundRepeat();
            string GetBehavior();
            object GetBorderBottomColor();
            string GetBorderBottomStyle();
            object GetBorderBottomWidth();
            string GetBorderCollapse();
            object GetBorderLeftColor();
            string GetBorderLeftStyle();
            object GetBorderLeftWidth();
            object GetBorderRightColor();
            string GetBorderRightStyle();
            object GetBorderRightWidth();
            object GetBorderTopColor();
            string GetBorderTopStyle();
            object GetBorderTopWidth();
            object GetBottom();
            string GetClear();
            object GetClipBottom();
            object GetClipLeft();
            object GetClipRight();
            object GetClipTop();
            object GetColor();
            string GetCursor();
            string GetDirection();
            string GetDisplay();
            string GetFontFamily();
            string GetFontObject();
            object GetFontSize();
            string GetFontStyle();
            object GetFontWeight();
            object GetHeight();
            object GetLeft();
            object GetLetterSpacing();
            object GetLineHeight();
            string GetListStyleImage();
            string GetListStylePosition();
            string GetListStyleType();
            object GetMarginBottom();
            object GetMarginLeft();
            object GetMarginRight();
            object GetMarginTop();
            string GetOverflow();
            object GetPaddingBottom();
            object GetPaddingLeft();
            object GetPaddingRight();
            object GetPaddingTop();
            string GetPageBreakAfter();
            string GetPageBreakBefore();
            string GetPosition();
            object GetRight();
            string GetStyleFloat();
            string GetTableLayout();
            string GetTextAlign();
            string GetTextDecoration();
            object GetTextIndent();
            object GetTop();
            string GetUnicodeBidi();
            object GetVerticalAlign();
            string GetVisibility();
            object GetWidth();
            object GetZIndex();
        }
        [ComVisible(true)]
        [Guid("626FC520-A41E-11CF-A731-00A0C9082637")]
        [InterfaceType(ComInterfaceType.InterfaceIsDual)]
        public interface IHTMLDocument
        {
            object GetScript();
        }
        [ComVisible(true)]
        [Guid("332C4425-26CB-11D0-B483-00C04FD90119")]
        [InterfaceType(ComInterfaceType.InterfaceIsDual)]
        public interface IHTMLDocument2
        {
            void Clear();
            void Close();
            IHTMLElement CreateElement(string eTag);
            IHTMLStyleSheet CreateStyleSheet(string bstrHref, int lIndex);
            void DummyWrite(int psarray);
            void DummyWriteln(int psarray);
            IHTMLElement ElementFromPoint(int x, int y);
            bool ExecCommand(string cmdID, bool showUI, object value);
            bool ExecCommandShowHelp(string cmdID);
            IHTMLElement GetActiveElement();
            object GetAlinkColor();
            IHTMLElementCollection GetAll();
            IHTMLElementCollection GetAnchors();
            IHTMLElementCollection GetApplets();
            object GetBgColor();
            IHTMLElement GetBody();
            string GetCharset();
            string GetCookie();
            string GetDefaultCharset();
            string GetDesignMode();
            string GetDomain();
            IHTMLElementCollection GetEmbeds();
            bool GetExpando();
            object GetFgColor();
            string GetFileCreatedDate();
            string GetFileModifiedDate();
            string GetFileSize();
            string GetFileUpdatedDate();
            IHTMLElementCollection GetForms();
            object GetFrames();
            IHTMLElementCollection GetImages();
            string GetLastModified();
            object GetLinkColor();
            IHTMLElementCollection GetLinks();
            object GetLocation();
            string GetMimeType();
            string GetNameProp();
            object GetOnafterupdate();
            object GetOnbeforeupdate();
            object GetOnclick();
            object GetOndblclick();
            object GetOndragstart();
            object GetOnerrorupdate();
            object GetOnhelp();
            object GetOnkeydown();
            object GetOnkeypress();
            object GetOnkeyup();
            object GetOnmousedown();
            object GetOnmousemove();
            object GetOnmouseout();
            object GetOnmouseover();
            object GetOnmouseup();
            object GetOnreadystatechange();
            object GetOnrowenter();
            object GetOnrowexit();
            object GetOnselectstart();
            object GetParentWindow();
            IHTMLElementCollection GetPlugins();
            string GetProtocol();
            string GetReadyState();
            string GetReferrer();
            object GetScript();
            IHTMLElementCollection GetScripts();
            string GetSecurity();
            object GetSelection();
            object GetStyleSheets();
            string GetTitle();
            string GetURL();
            object GetVlinkColor();
            object Open(string URL, object name, object features, object replace);
            bool QueryCommandEnabled(string cmdID);
            bool QueryCommandIndeterm(string cmdID);
            bool QueryCommandState(string cmdID);
            bool QueryCommandSupported(string cmdID);
            string QueryCommandText(string cmdID);
            object QueryCommandValue(string cmdID);
            void SetAlinkColor(object p);
            void SetBgColor(object p);
            void SetCharset(string p);
            void SetCookie(string p);
            void SetDefaultCharset(string p);
            void SetDesignMode(string p);
            void SetDomain(string p);
            void SetExpando(bool p);
            void SetFgColor(object p);
            void SetLinkColor(object p);
            void SetOnafterupdate(object p);
            void SetOnbeforeupdate(object p);
            void SetOnclick(object p);
            void SetOndblclick(object p);
            void SetOndragstart(object p);
            void SetOnerrorupdate(object p);
            void SetOnhelp(object p);
            void SetOnkeydown(object p);
            void SetOnkeypress(object p);
            void SetOnkeyup(object p);
            void SetOnmousedown(object p);
            void SetOnmousemove(object p);
            void SetOnmouseout(object p);
            void SetOnmouseover(object p);
            void SetOnmouseup(object p);
            void SetOnreadystatechange(object p);
            void SetOnrowenter(object p);
            void SetOnrowexit(object p);
            void SetOnselectstart(object p);
            void SetTitle(string p);
            void SetURL(string p);
            void SetVlinkColor(object p);
            string toString();
        }
        [ComVisible(true)]
        [Guid("3050F5DA-98B5-11CF-BB82-00AA00BDCE0B")]
        [InterfaceType(ComInterfaceType.InterfaceIsDual)]
        public interface IHTMLDOMNode
        {
            IHTMLDOMNode AppendChild(IHTMLDOMNode newChild);
            IHTMLDOMNode CloneNode(bool fDeep);
            object GetAttributes();
            object GetChildNodes();
            IHTMLDOMNode GetFirstChild();
            IHTMLDOMNode GetLastChild();
            IHTMLDOMNode GetNextSibling();
            string GetNodeName();
            int GetNodeType();
            object GetNodeValue();
            IHTMLDOMNode GetParentNode();
            IHTMLDOMNode GetPreviousSibling();
            bool HasChildNodes();
            IHTMLDOMNode InsertBefore(IHTMLDOMNode newChild, object refChild);
            IHTMLDOMNode RemoveChild(IHTMLDOMNode oldChild);
            IHTMLDOMNode RemoveNode(bool fDeep);
            IHTMLDOMNode ReplaceChild(IHTMLDOMNode newChild, IHTMLDOMNode oldChild);
            IHTMLDOMNode ReplaceNode(IHTMLDOMNode replacement);
            void SetNodeValue(object p);
            IHTMLDOMNode SwapNode(IHTMLDOMNode otherNode);
        }
        [ComVisible(true)]
        [Guid("3050F1FF-98B5-11CF-BB82-00AA00BDCE0B")]
        [InterfaceType(ComInterfaceType.InterfaceIsDual)]
        public interface IHTMLElement
        {
            void Click();
            bool Contains(IHTMLElement pChild);
            object GetAll();
            void GetAttribute(string strAttributeName, int lFlags, object[] pvars);
            object GetChildren();
            string GetClassName();
            IHTMLDocument2 GetDocument();
            object GetFilters();
            string GetId();
            string GetInnerHTML();
            string GetInnerText();
            bool GetIsTextEdit();
            string GetLang();
            string GetLanguage();
            int GetOffsetHeight();
            int GetOffsetLeft();
            IHTMLElement GetOffsetParent();
            int GetOffsetTop();
            int GetOffsetWidth();
            object GetOnafterupdate();
            object GetOnbeforeupdate();
            object GetOnclick();
            object GetOndataavailable();
            object GetOndatasetchanged();
            object GetOndatasetcomplete();
            object GetOndblclick();
            object GetOndragstart();
            object GetOnerrorupdate();
            object GetOnfilterchange();
            object GetOnhelp();
            object GetOnkeydown();
            object GetOnkeypress();
            object GetOnkeyup();
            object GetOnmousedown();
            object GetOnmousemove();
            object GetOnmouseout();
            object GetOnmouseover();
            object GetOnmouseup();
            object GetOnrowenter();
            object GetOnrowexit();
            object GetOnselectstart();
            string GetOuterHTML();
            string GetOuterText();
            IHTMLElement GetParentElement();
            IHTMLElement GetParentTextEdit();
            object GetRecordNumber();
            int GetSourceIndex();
            IHTMLStyle GetStyle();
            string GetTagName();
            string GetTitle();
            void InsertAdjacentHTML(string where, string html);
            void InsertAdjacentText(string where, string text);
            bool RemoveAttribute(string strAttributeName, int lFlags);
            void ScrollIntoView(object varargStart);
            void SetAttribute(string strAttributeName, object AttributeValue, int lFlags);
            void SetClassName(string p);
            void SetId(string p);
            void SetInnerHTML(string p);
            void SetInnerText(string p);
            void SetLang(string p);
            void SetLanguage(string p);
            void SetOnafterupdate(object p);
            void SetOnbeforeupdate(object p);
            void SetOnclick(object p);
            void SetOndataavailable(object p);
            void SetOndatasetchanged(object p);
            void SetOndatasetcomplete(object p);
            void SetOndblclick(object p);
            void SetOndragstart(object p);
            void SetOnerrorupdate(object p);
            void SetOnfilterchange(object p);
            void SetOnhelp(object p);
            void SetOnkeydown(object p);
            void SetOnkeypress(object p);
            void SetOnkeyup(object p);
            void SetOnmousedown(object p);
            void SetOnmousemove(object p);
            void SetOnmouseout(object p);
            void SetOnmouseover(object p);
            void SetOnmouseup(object p);
            void SetOnrowenter(object p);
            void SetOnrowexit(object p);
            void SetOnselectstart(object p);
            void SetOuterHTML(string p);
            void SetOuterText(string p);
            void SetTitle(string p);
            string toString();
        }
        [Guid("3050F434-98B5-11CF-BB82-00AA00BDCE0B")]
        [InterfaceType(ComInterfaceType.InterfaceIsDual)]
        public interface IHTMLElement2
        {
            int AddBehavior(string bstrUrl, ref object pvarFactory);
            void AddFilter(object pUnk);
            IHTMLElement ApplyElement(IHTMLElement apply, string where);
            bool AttachEvent(string ev, object pdisp);
            void Blur();
            void ClearAttributes();
            string ComponentFromPoint(int x, int y);
            object CreateControlRange();
            void DetachEvent(string ev, object pdisp);
            void DoScroll(object component);
            void Focus();
            string GetAccessKey();
            string GetAdjacentText(string where);
            IHTMLCurrentStyle GetBaseCurrentStyle();
            IHTMLStyle GetBaseRuntimeStyle();
            IHTMLStyle GetBaseStyle();
            object GetBehavior(string bstrName, string bstrUrn);
            object GetBehaviorUrns();
            IHTMLRect GetBoundingClientRect();
            bool GetCanHaveChildren();
            int GetClientHeight();
            int GetClientLeft();
            IHTMLRectCollection GetClientRects();
            int GetClientTop();
            int GetClientWidth();
            IHTMLCurrentStyle GetCurrentStyle();
            string GetDir();
            IHTMLElementCollection GetElementsByTagName(string v);
            object GetExpression(object propname);
            object GetOnbeforecopy();
            object GetOnbeforecut();
            object GetOnbeforeeditfocus();
            object GetOnbeforepaste();
            object GetOnblur();
            object GetOncellchange();
            object GetOncontextmenu();
            object GetOncopy();
            object GetOncut();
            object GetOndrag();
            object GetOndragend();
            object GetOndragenter();
            object GetOndragleave();
            object GetOndragover();
            object GetOndrop();
            object GetOnfocus();
            object GetOnkeydownpreview();
            object GetOnlosecapture();
            object GetOnmousehover();
            object GetOnpaste();
            object GetOnpropertychange();
            object GetOnreadystatechange();
            object GetOnresize();
            object GetOnrowsdelete();
            object GetOnrowsinserted();
            object GetOnscroll();
            object GetReadyState();
            int GetReadyStateValue();
            IHTMLStyle GetRuntimeStyle();
            string GetScopeName();
            int GetScrollHeight();
            int GetScrollLeft();
            int GetScrollTop();
            int GetScrollWidth();
            short GetTabIndex();
            string GetTagUrn();
            IHTMLElement InsertAdjacentElement(string where, IHTMLElement insertedElement);
            void MergeAttributes(IHTMLElement mergeThis);
            void ReleaseCapture();
            bool RemoveBehavior(int cookie);
            bool RemoveExpression(string propname);
            void RemoveFilter(object pUnk);
            string ReplaceAdjacentText(string where, string newText);
            void SetAccessKey(string p);
            void SetCapture(bool containerCapture);
            void SetDir(string p);
            void SetExpression(string propname, string expression, string language);
            void SetOnbeforecopy(object p);
            void SetOnbeforecut(object p);
            void SetOnbeforeeditfocus(object p);
            void SetOnbeforepaste(object p);
            void SetOnblur(object p);
            void SetOncellchange(object p);
            void SetOncontextmenu(object p);
            void SetOncopy(object p);
            void SetOncut(object p);
            void SetOndrag(object p);
            void SetOndragend(object p);
            void SetOndragenter(object p);
            void SetOndragleave(object p);
            void SetOndragover(object p);
            void SetOndrop(object p);
            void SetOnfocus(object p);
            void SetOnkeydownpreview(object p);
            void SetOnlosecapture(object p);
            void SetOnmousehover(object p);
            void SetOnpaste(object p);
            void SetOnpropertychange(object p);
            void SetOnreadystatechange(object p);
            void SetOnresize(object p);
            void SetOnrowsdelete(object p);
            void SetOnrowsinserted(object p);
            void SetOnscroll(object p);
            void SetScrollLeft(int p);
            void SetScrollTop(int p);
            void SetTabIndex(short p);
            void SetTagUrn(string p);
        }
        [ComVisible(true)]
        [Guid("3050F673-98B5-11CF-BB82-00AA00BDCE0B")]
        [InterfaceType(ComInterfaceType.InterfaceIsDual)]
        public interface IHTMLElement3
        {
            bool DragDrop();
            bool FireEvent(string eventName, object eventObject);
            bool GetCanHaveHTML();
            string GetContentEditable();
            bool GetDisabled();
            int GetGlyphMode();
            bool GetHideFocus();
            bool GetInflateBlock();
            bool GetIsContentEditable();
            bool GetIsDisabled();
            bool GetIsMultiLine();
            object GetOnActivate();
            object GetOnBeforeDeactivate();
            object GetOnControlSelect();
            object GetOnDeactivate();
            object GetOnLayoutComplete();
            object GetOnMouseEnter();
            object GetOnMouseLeave();
            object GetOnMove();
            object GetOnMoveEnd();
            object GetOnMoveStart();
            object GetOnPage();
            object GetOnResizeEnd();
            object GetOnResizeStart();
            void MergeAttributes(IHTMLElement mergeThis, object pvarFlags);
            void SetActive();
            void SetContentEditable(string p);
            void SetDisabled(bool v);
            void SetHideFocus(bool v);
            void SetInflateBlock(bool inflate);
            void SetOnActivate(object p);
            void SetOnBeforeDeactivate(object p);
            void SetOnControlSelect(object p);
            void SetOnDeactivate(object p);
            void SetOnLayoutComplete(object p);
            void SetOnMouseEnter(object p);
            void SetOnMouseLeave(object p);
            void SetOnMove(object p);
            void SetOnMoveEnd(object p);
            void SetOnMoveStart(object p);
            void SetOnPage(object p);
            void SetOnResizeEnd(object p);
            void SetOnResizeStart(object p);
        }
        [ComVisible(true)]
        [Guid("3050F21F-98B5-11CF-BB82-00AA00BDCE0B")]
        [InterfaceType(ComInterfaceType.InterfaceIsDual)]
        public interface IHTMLElementCollection
        {
            int GetLength();
            object Get_newEnum();
            IHTMLElement Item(object name, object index);
            void SetLength(int p);
            object Tags(object tagName);
            string toString();
        }
        [ComVisible(true)]
        [Guid("3050F4A3-98B5-11CF-BB82-00AA00BDCE0B")]
        [InterfaceType(ComInterfaceType.InterfaceIsDual)]
        public interface IHTMLRect
        {
            int GetBottom();
            int GetLeft();
            int GetRight();
            int GetTop();
            void SetBottom(int p);
            void SetLeft(int p);
            void SetRight(int p);
            void SetTop(int p);
        }
        [ComVisible(true)]
        [Guid("3050F4A4-98B5-11CF-BB82-00AA00BDCE0B")]
        [InterfaceType(ComInterfaceType.InterfaceIsDual)]
        public interface IHTMLRectCollection
        {
            int GetLength();
            object Get_newEnum();
            object Item(ref object pvarIndex);
        }
        [ComVisible(true)]
        [Guid("3050F25E-98B5-11CF-BB82-00AA00BDCE0B")]
        [InterfaceType(ComInterfaceType.InterfaceIsDual)]
        public interface IHTMLStyle
        {
            object GetAttribute(string strAttributeName, int lFlags);
            string GetBackground();
            string GetBackgroundAttachment();
            object GetBackgroundColor();
            string GetBackgroundImage();
            string GetBackgroundPosition();
            object GetBackgroundPositionX();
            object GetBackgroundPositionY();
            string GetBackgroundRepeat();
            string GetBorder();
            string GetBorderBottom();
            object GetBorderBottomColor();
            string GetBorderBottomStyle();
            object GetBorderBottomWidth();
            string GetBorderColor();
            string GetBorderLeft();
            object GetBorderLeftColor();
            string GetBorderLeftStyle();
            object GetBorderLeftWidth();
            string GetBorderRight();
            object GetBorderRightColor();
            string GetBorderRightStyle();
            object GetBorderRightWidth();
            string GetBorderStyle();
            string GetBorderTop();
            object GetBorderTopColor();
            string GetBorderTopStyle();
            object GetBorderTopWidth();
            string GetBorderWidth();
            string GetClear();
            string GetClip();
            object GetColor();
            string GetCssText();
            string GetCursor();
            string GetDisplay();
            string GetFilter();
            string GetFont();
            string GetFontFamily();
            string GetFontObject();
            object GetFontSize();
            string GetFontStyle();
            string GetFontWeight();
            object GetHeight();
            object GetLeft();
            object GetLetterSpacing();
            object GetLineHeight();
            string GetListStyle();
            string GetListStyleImage();
            string GetListStylePosition();
            string GetListStyleType();
            string GetMargin();
            object GetMarginBottom();
            object GetMarginLeft();
            object GetMarginRight();
            object GetMarginTop();
            string GetOverflow();
            string GetPadding();
            object GetPaddingBottom();
            object GetPaddingLeft();
            object GetPaddingRight();
            object GetPaddingTop();
            string GetPageBreakAfter();
            string GetPageBreakBefore();
            int GetPixelHeight();
            int GetPixelLeft();
            int GetPixelTop();
            int GetPixelWidth();
            float GetPosHeight();
            string GetPosition();
            float GetPosLeft();
            float GetPosTop();
            float GetPosWidth();
            string GetStyleFloat();
            string GetTextAlign();
            string GetTextDecoration();
            bool GetTextDecorationBlink();
            bool GetTextDecorationLineThrough();
            bool GetTextDecorationNone();
            bool GetTextDecorationOverline();
            bool GetTextDecorationUnderline();
            object GetTextIndent();
            string GetTextTransform();
            object GetTop();
            object GetVerticalAlign();
            string GetVisibility();
            string GetWhiteSpace();
            object GetWidth();
            object GetWordSpacing();
            object GetZIndex();
            bool RemoveAttribute(string strAttributeName, int lFlags);
            void SetAttribute(string strAttributeName, object AttributeValue, int lFlags);
            void SetBackground(string p);
            void SetBackgroundAttachment(string p);
            void SetBackgroundColor(object p);
            void SetBackgroundImage(string p);
            void SetBackgroundPosition(string p);
            void SetBackgroundPositionX(object p);
            void SetBackgroundPositionY(object p);
            void SetBackgroundRepeat(string p);
            void SetBorder(string p);
            void SetBorderBottom(string p);
            void SetBorderBottomColor(object p);
            void SetBorderBottomStyle(string p);
            void SetBorderBottomWidth(object p);
            void SetBorderColor(string p);
            void SetBorderLeft(string p);
            void SetBorderLeftColor(object p);
            void SetBorderLeftStyle(string p);
            void SetBorderLeftWidth(object p);
            void SetBorderRight(string p);
            void SetBorderRightColor(object p);
            void SetBorderRightStyle(string p);
            void SetBorderRightWidth(object p);
            void SetBorderStyle(string p);
            void SetBorderTop(string p);
            void SetBorderTopColor(object p);
            void SetBorderTopStyle(string p);
            void SetBorderTopWidth(object p);
            void SetBorderWidth(string p);
            void SetClear(string p);
            void SetClip(string p);
            void SetColor(object p);
            void SetCssText(string p);
            void SetCursor(string p);
            void SetDisplay(string p);
            void SetFilter(string p);
            void SetFont(string p);
            void SetFontFamily(string p);
            void SetFontObject(string p);
            void SetFontSize(object p);
            void SetFontStyle(string p);
            void SetFontWeight(string p);
            void SetHeight(object p);
            void SetLeft(object p);
            void SetLetterSpacing(object p);
            void SetLineHeight(object p);
            void SetListStyle(string p);
            void SetListStyleImage(string p);
            void SetListStylePosition(string p);
            void SetListStyleType(string p);
            void SetMargin(string p);
            void SetMarginBottom(object p);
            void SetMarginLeft(object p);
            void SetMarginRight(object p);
            void SetMarginTop(object p);
            void SetOverflow(string p);
            void SetPadding(string p);
            void SetPaddingBottom(object p);
            void SetPaddingLeft(object p);
            void SetPaddingRight(object p);
            void SetPaddingTop(object p);
            void SetPageBreakAfter(string p);
            void SetPageBreakBefore(string p);
            void SetPixelHeight(int p);
            void SetPixelLeft(int p);
            void SetPixelTop(int p);
            void SetPixelWidth(int p);
            void SetPosHeight(float p);
            void SetPosLeft(float p);
            void SetPosTop(float p);
            void SetPosWidth(float p);
            void SetStyleFloat(string p);
            void SetTextAlign(string p);
            void SetTextDecoration(string p);
            void SetTextDecorationBlink(bool p);
            void SetTextDecorationLineThrough(bool p);
            void SetTextDecorationNone(bool p);
            void SetTextDecorationOverline(bool p);
            void SetTextDecorationUnderline(bool p);
            void SetTextIndent(object p);
            void SetTextTransform(string p);
            void SetTop(object p);
            void SetVerticalAlign(object p);
            void SetVisibility(string p);
            void SetWhiteSpace(string p);
            void SetWidth(object p);
            void SetWordSpacing(object p);
            void SetZIndex(object p);
        }
        [ComVisible(true)]
        [Guid("3050F2E3-98B5-11CF-BB82-00AA00BDCE0B")]
        [InterfaceType(ComInterfaceType.InterfaceIsDual)]
        public interface IHTMLStyleSheet
        {
            int AddImport(string bstrURL, int lIndex);
            int AddRule(string bstrSelector, string bstrStyle, int lIndex);
            string GetCssText();
            bool GetDisabled();
            string GetHref();
            string GetId();
            object GetImports();
            string GetMedia();
            IHTMLElement GetOwningElement();
            IHTMLStyleSheet GetParentStyleSheet();
            bool GetReadOnly();
            object GetRules();
            string GetStyleSheetType();
            string GetTitle();
            void RemoveImport(int lIndex);
            void RemoveRule(int lIndex);
            void SetCssText(string p);
            void SetDisabled(bool p);
            void SetHref(string p);
            void SetMedia(string p);
            void SetTitle(string p);
        }
        [ComVisible(true)]
        [Guid("00000118-0000-0000-C000-000000000046")]
        [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
        public interface IOleClientSite
        {
            int GetContainer(out IOleContainer ppContainer);
            object GetMoniker(int dwAssign, int dwWhichMoniker);
            void OnShowWindow(int fShow);
            void RequestNewObjectLayout();
            void SaveObject();
            void ShowObject();
        }
        [ComVisible(true)]
        [Guid("B722BCCB-4E68-101B-A2BC-00AA00404770")]
        [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
        public interface IOleCommandTarget
        {
            int Exec(ref Guid pguidCmdGroup, int nCmdID, int nCmdexecopt, object[] pvaIn, IntPtr pvaOut);
            int QueryStatus(ref Guid pguidCmdGroup, int cCmds, OLECMD prgCmds, string pCmdText);
        }
        [ComVisible(true)]
        [Guid("0000011B-0000-0000-C000-000000000046")]
        [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
        public interface IOleContainer
        {
            void EnumObjects(int grfFlags, out object ppenum);
            void LockContainer(int fLock);
            void ParseDisplayName(object pbc, string pszDisplayName, int[] pchEaten, object[] ppmkOut);
        }
        [ComVisible(true)]
        [Guid("B722BCC7-4E68-101B-A2BC-00AA00404770")]
        [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
        public interface IOleDocumentSite
        {
            int ActivateMe(IOleDocumentView pViewToActivate);
        }
        [ComVisible(true)]
        [Guid("B722BCC6-4E68-101B-A2BC-00AA00404770")]
        [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
        public interface IOleDocumentView
        {
            void ApplyViewState(IStream pstm);
            void Clone(IOleInPlaceSite pIPSiteNew, IOleDocumentView[] ppViewNew);
            void CloseView(int dwReserved);
            object GetDocument();
            IOleInPlaceSite GetInPlaceSite();
            void GetRect(COMRECT prcView);
            void Open();
            void SaveViewState(IStream pstm);
            void SetInPlaceSite(IOleInPlaceSite pIPSite);
            void SetRect(COMRECT prcView);
            void SetRectComplex(COMRECT prcView, COMRECT prcHScroll, COMRECT prcVScroll, COMRECT prcSizeBox);
            void Show(int fShow);
            void UIActivate(int fUIActivate);
        }
        [ComVisible(true)]
        [Guid("00000122-0000-0000-C000-000000000046")]
        [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
        public interface IOleDropTarget
        {
            int OleDragEnter(IDataObject pDataObj, int grfKeyState, long pt, ref int pdwEffect);
            int OleDragLeave();
            int OleDragOver(int grfKeyState, long pt, ref int pdwEffect);
            int OleDrop(IDataObject pDataObj, int grfKeyState, long pt, ref int pdwEffect);
        }
        [ComVisible(true)]
        [Guid("00000117-0000-0000-C000-000000000046")]
        [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
        public interface IOleInPlaceActiveObject
        {
            void ContextSensitiveHelp(int fEnterMode);
            void EnableModeless(int fEnable);
            int GetWindow(out IntPtr hwnd);
            void OnDocWindowActivate(int fActivate);
            void OnFrameWindowActivate(int fActivate);
            void ResizeBorder(COMRECT prcBorder, IOleInPlaceUIWindow pUIWindow, int fFrameWindow);
            int TranslateAccelerator(ref MSG lpmsg);
        }
        [ComVisible(true)]
        [Guid("00000116-0000-0000-C000-000000000046")]
        [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
        public interface IOleInPlaceFrame
        {
            void ContextSensitiveHelp(int fEnterMode);
            void EnableModeless(int fEnable);
            void GetBorder(COMRECT lprectBorder);
            IntPtr GetWindow();
            void InsertMenus(IntPtr hmenuShared, object lpMenuWidths);
            void RemoveMenus(IntPtr hmenuShared);
            void RequestBorderSpace(COMRECT pborderwidths);
            void SetActiveObject(IOleInPlaceActiveObject pActiveObject, string pszObjName);
            void SetBorderSpace(COMRECT pborderwidths);
            void SetMenu(IntPtr hmenuShared, IntPtr holemenu, IntPtr hwndActiveObject);
            void SetStatusText(string pszStatusText);
            int TranslateAccelerator(ref MSG lpmsg, short wID);
        }
        [ComVisible(true)]
        [Guid("00000119-0000-0000-C000-000000000046")]
        [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
        public interface IOleInPlaceSite
        {
            int CanInPlaceActivate();
            void ContextSensitiveHelp(int fEnterMode);
            void DeactivateAndUndo();
            void DiscardUndoState();
            IntPtr GetWindow();
            void GetWindowContext(out IOleInPlaceFrame ppFrame, out IOleInPlaceUIWindow ppDoc, COMRECT lprcPosRect, COMRECT lprcClipRect, tagOIFI lpFrameInfo);
            void OnInPlaceActivate();
            void OnInPlaceDeactivate();
            int OnPosRectChange(COMRECT lprcPosRect);
            void OnUIActivate();
            void OnUIDeactivate(int fUndoable);
            int Scroll(tagSIZE scrollExtant);
        }
        [ComVisible(true)]
        [Guid("00000115-0000-0000-C000-000000000046")]
        [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
        public interface IOleInPlaceUIWindow
        {
            void ContextSensitiveHelp(int fEnterMode);
            void GetBorder(COMRECT lprectBorder);
            IntPtr GetWindow();
            void RequestBorderSpace(COMRECT pborderwidths);
            void SetActiveObject(IOleInPlaceActiveObject pActiveObject, string pszObjName);
            void SetBorderSpace(COMRECT pborderwidths);
        }
        [ComVisible(true)]
        [Guid("00000112-0000-0000-C000-000000000046")]
        [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
        public interface IOleObject
        {
            int Advise(IAdviseSink pAdvSink, out int cookie);
            int Close(int dwSaveOption);
            int DoVerb(int iVerb, IntPtr lpmsg, IOleClientSite pActiveSite, int lindex, IntPtr hwndParent, COMRECT lprcPosRect);
            int EnumAdvise(out object e);
            int EnumVerbs(out IEnumOLEVERB e);
            int GetClientSite(out IOleClientSite site);
            int GetClipboardData(int dwReserved, out IDataObject data);
            int GetExtent(int dwDrawAspect, tagSIZEL pSizel);
            int GetMiscStatus(int dwAspect, out int misc);
            int GetMoniker(int dwAssign, int dwWhichMoniker, out object moniker);
            int GetUserClassID(ref Guid pClsid);
            int GetUserType(int dwFormOfType, out string userType);
            int InitFromData(IDataObject pDataObject, int fCreation, int dwReserved);
            int IsUpToDate();
            int OleUpdate();
            int SetClientSite(IOleClientSite pClientSite);
            int SetColorScheme(tagLOGPALETTE pLogpal);
            int SetExtent(int dwDrawAspect, tagSIZEL pSizel);
            int SetHostNames(string szContainerApp, string szContainerObj);
            int SetMoniker(int dwWhichMoniker, object pmk);
            int Unadvise(int dwConnection);
        }
        [ComVisible(true)]
        [Guid("7FD52380-4E07-101B-AE2D-08002B2EC713")]
        [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
        public interface IPersistStreamInit
        {
            void GetClassID(ref Guid pClassID);
            void GetSizeMax(long pcbSize);
            void InitNew();
            int IsDirty();
            void Load(IStream pstm);
            void Save(IStream pstm, bool fClearDirty);
        }
        [ComVisible(true)]
        [Guid("0000000C-0000-0000-C000-000000000046")]
        [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
        public interface IStream
        {
            IStream Clone();
            void Commit(int grfCommitFlags);
            long CopyTo(IStream pstm, long cb, long[] pcbRead);
            void LockRegion(long libOffset, long cb, int dwLockType);
            int Read(IntPtr buf, int len);
            void Revert();
            long Seek(long dlibMove, int dwOrigin);
            void SetSize(long libNewSize);
            void Stat(IntPtr pStatstg, int grfStatFlag);
            void UnlockRegion(long libOffset, long cb, int dwLockType);
            int Write(IntPtr buf, int len);
        }
 
        public struct MOUSEHOOKSTRUCT
        {
            public int dwExtraInfo;
            public IntPtr hWnd;
            public int pt_x;
            public int pt_y;
            public int wHitTestCode;
        }
        public struct MSG
        {
            public IntPtr hwnd;
            public IntPtr lParam;
            public int message;
            public int pt_x;
            public int pt_y;
            public int time;
            public IntPtr wParam;
        }
        public struct RECT
        {
            public int bottom;
            public int left;
            public int right;
            public int top;
 
            [TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")]
            public RECT(int left, int top, int right, int bottom);
        }
        public struct WINDOWPOS
        {
            public int cx;
            public int cy;
            public int flags;
            public IntPtr hwnd;
            public IntPtr hwndInsertAfter;
            public int x;
            public int y;
        }
 
        public class CHARRANGE
        {
            public int cpMax;
            public int cpMin;
 
            [TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")]
            public CHARRANGE();
        }
        public sealed class CommonHandles
        {
            public static readonly int Accelerator;
            public static readonly int Cursor;
            public static readonly int EMF;
            public static readonly int Find;
            public static readonly int GDI;
            public static readonly int HDC;
            public static readonly int Icon;
            public static readonly int Kernel;
            public static readonly int Menu;
            public static readonly int Window;
 
            [TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")]
            public CommonHandles();
        }
        public class COMRECT
        {
            public int bottom;
            public int left;
            public int right;
            public int top;
 
            [TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")]
            public COMRECT();
            [TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")]
            public COMRECT(int left, int top, int right, int bottom);
        }
        public class DOCHOSTUIDBLCLICK
        {
            public const int DEFAULT = 0;
            public const int SHOWCODE = 2;
            public const int SHOWPROPERTIES = 1;
 
            [TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")]
            public DOCHOSTUIDBLCLICK();
        }
        public class DOCHOSTUIFLAG
        {
            public const int ACTIVATE_CLIENTHIT_ONLY = 512;
            public const int DIALOG = 1;
            public const int DISABLE_COOKIE = 1024;
            public const int DISABLE_HELP_MENU = 2;
            public const int DISABLE_OFFSCREEN = 64;
            public const int DISABLE_SCRIPT_INACTIVE = 16;
            public const int DIV_BLOCKDEFAULT = 256;
            public const int FLAT_SCROLLBAR = 128;
            public const int NO3DBORDER = 4;
            public const int OPENNEWWIN = 32;
            public const int SCROLL_NO = 8;
 
            [TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")]
            public DOCHOSTUIFLAG();
        }
        [ComVisible(true)]
        public class DOCHOSTUIINFO
        {
            public int cbSize;
            public int dwDoubleClick;
            public int dwFlags;
            public int dwReserved1;
            public int dwReserved2;
 
            [TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")]
            public DOCHOSTUIINFO();
        }
        public class FILETIME
        {
            public uint dwHighDateTime;
            public uint dwLowDateTime;
 
            [TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")]
            public FILETIME();
        }
        public sealed class FORMATETC
        {
            public int cfFormat;
            public int dwAspect;
            public int lindex;
            public IntPtr ptd;
            public int tymed;
 
            public FORMATETC();
        }
        public class HDHITTESTINFO
        {
            public int flags;
            public int iItem;
            public int pt_x;
            public int pt_y;
 
            [TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")]
            public HDHITTESTINFO();
        }
        [ComVisible(true)]
        [Guid("25336920-03F9-11CF-8FD0-00AA00686F13")]
        public class HTMLDocument
        {
            public HTMLDocument();
        }
        public class LOGFONT
        {
            public byte lfCharSet;
            public byte lfClipPrecision;
            public int lfEscapement;
            public string lfFaceName;
            public int lfHeight;
            public byte lfItalic;
            public int lfOrientation;
            public byte lfOutPrecision;
            public byte lfPitchAndFamily;
            public byte lfQuality;
            public byte lfStrikeOut;
            public byte lfUnderline;
            public int lfWeight;
            public int lfWidth;
 
            [TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")]
            public LOGFONT();
            public LOGFONT(LOGFONT lf);
 
            public override string ToString();
        }
        public class NMHDR
        {
            public int code;
            public int hwndFrom;
            public int idFrom;
 
            [TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")]
            public NMHDR();
        }
        public class NMHEADER
        {
            public int code;
            public int hwndFrom;
            public int iButton;
            public int idFrom;
            public int iItem;
            public int pItem;
 
            [TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")]
            public NMHEADER();
        }
        public class NMTREEVIEW
        {
            public int action;
            public TV_ITEM itemNew;
            public TV_ITEM itemOld;
            public NMHDR nmhdr;
            public POINT ptDrag;
 
            [TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")]
            public NMTREEVIEW();
        }
        public class NONCLIENTMETRICS
        {
            public int cbSize;
            public int iBorderWidth;
            public int iCaptionHeight;
            public int iCaptionWidth;
            public int iMenuHeight;
            public int iMenuWidth;
            public int iScrollHeight;
            public int iScrollWidth;
            public int iSmCaptionHeight;
            public int iSmCaptionWidth;
            public LOGFONT lfCaptionFont;
            public LOGFONT lfMenuFont;
            public LOGFONT lfMessageFont;
            public LOGFONT lfSmCaptionFont;
            public LOGFONT lfStatusFont;
 
            public NONCLIENTMETRICS();
        }
        public sealed class OLECMD
        {
            public int cmdf;
            public int cmdID;
 
            [TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")]
            public OLECMD();
        }
        public class POINT
        {
            public int x;
            public int y;
 
            [TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")]
            public POINT();
            [TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")]
            public POINT(int x, int y);
        }
        public sealed class STATDATA
        {
            public int advf;
            public int dwConnection;
 
            [TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")]
            public STATDATA();
        }
        public class STATSTG
        {
            public long atime;
            public long cbSize;
            public byte clsid_b0;
            public byte clsid_b1;
            public byte clsid_b2;
            public byte clsid_b3;
            public byte clsid_b4;
            public byte clsid_b5;
            public byte clsid_b6;
            public byte clsid_b7;
            public int clsid_data1;
            public short clsid_data2;
            public short clsid_data3;
            public long ctime;
            public int grfLocksSupported;
            public int grfMode;
            public int grfStateBits;
            public long mtime;
            public string pwcsName;
            public int reserved;
            public int type;
 
            [TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")]
            public STATSTG();
        }
        public class STGMEDIUM
        {
            public IntPtr pUnkForRelease;
            public int tymed;
            public IntPtr unionmember;
 
            public STGMEDIUM();
        }
        public sealed class tagLOGPALETTE
        {
            public short palNumEntries;
            public short palVersion;
 
            [TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")]
            public tagLOGPALETTE();
        }
        public sealed class tagOIFI
        {
            public int cAccelEntries;
            public int cb;
            public int fMDIApp;
            public IntPtr hAccel;
            public IntPtr hwndFrame;
 
            [TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")]
            public tagOIFI();
        }
        public sealed class tagOLEVERB
        {
            public int fuFlags;
            public int grfAttribs;
            public string lpszVerbName;
            public int lVerb;
 
            [TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")]
            public tagOLEVERB();
        }
        public sealed class tagSIZE
        {
            public int cx;
            public int cy;
 
            [TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")]
            public tagSIZE();
        }
        [ComVisible(true)]
        public sealed class tagSIZEL
        {
            public int cx;
            public int cy;
 
            [TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")]
            public tagSIZEL();
        }
        public class TCHITTESTINFO
        {
            public TabControlHitTest flags;
            public Point pt;
 
            [TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")]
            public TCHITTESTINFO();
        }
        public class TEXTMETRIC
        {
            public int tmAscent;
            public int tmAveCharWidth;
            public char tmBreakChar;
            public byte tmCharSet;
            public char tmDefaultChar;
            public int tmDescent;
            public int tmDigitizedAspectX;
            public int tmDigitizedAspectY;
            public int tmExternalLeading;
            public char tmFirstChar;
            public int tmHeight;
            public int tmInternalLeading;
            public byte tmItalic;
            public char tmLastChar;
            public int tmMaxCharWidth;
            public int tmOverhang;
            public byte tmPitchAndFamily;
            public byte tmStruckOut;
            public byte tmUnderlined;
            public int tmWeight;
 
            [TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")]
            public TEXTMETRIC();
        }
        public class TRACKMOUSEEVENT
        {
            public int cbSize;
            public int dwFlags;
            public int dwHoverTime;
            public IntPtr hwndTrack;
 
            public TRACKMOUSEEVENT();
        }
        public class TV_HITTESTINFO
        {
            public int flags;
            public int hItem;
            public int pt_x;
            public int pt_y;
 
            [TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")]
            public TV_HITTESTINFO();
        }
        public class TV_ITEM
        {
            public int cChildren;
            public int cchTextMax;
            public int hItem;
            public int iImage;
            public int iSelectedImage;
            public int lParam;
            public int mask;
            public int pszText;
            public int state;
            public int stateMask;
 
            [TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")]
            public TV_ITEM();
        }
 
        public delegate bool EnumChildrenCallback(IntPtr hwnd, IntPtr lParam);
        public delegate int ListViewCompareCallback(IntPtr lParam1, IntPtr lParam2, IntPtr lParamSort);
        public delegate void TimerProc(IntPtr hWnd, int msg, IntPtr wParam, IntPtr lParam);
        public delegate IntPtr WndProc(IntPtr hWnd, int msg, IntPtr wParam, IntPtr lParam);
    }
}