Artifact 86d294ce6711c3672ae2bee4dc18d0d76d737f39:
- File
src/win32/exdisp.d
-
2015-05-05 06:49:05
- part of checkin
[9b639cf2d6]
on branch trunk
- Working version for update to 2.067.
The problem was __gshared. Replacing it with TLS fixed the issue. Remaining problem is that "hack.d"'s CloseHandle hack is not working anymore.
(user: kinaba) [annotate]
-
2015-05-05 06:49:05
- part of checkin
[9b639cf2d6]
on branch trunk
- Working version for update to 2.067.
0000: 2f 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a /*************** 0010: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 0020: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 0030: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 0040: 2a 2a 2a 2a 2a 2a 2a 2a 5c 0d 0a 2a 20 20 20 20 ********\..* 0050: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0060: 20 20 20 20 20 20 20 20 20 20 20 65 78 64 69 73 exdis 0070: 70 2e 64 20 20 20 20 20 20 20 20 20 20 20 20 20 p.d 0080: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0090: 20 20 20 2a 0d 0a 2a 20 20 20 20 20 20 20 20 20 *..* 00a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 00b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 00c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 00d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2a 0d *. 00e0: 0a 2a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .* 00f0: 20 20 20 20 20 20 20 20 20 57 69 6e 64 6f 77 73 Windows 0100: 20 41 50 49 20 68 65 61 64 65 72 20 6d 6f 64 75 API header modu 0110: 6c 65 20 20 20 20 20 20 20 20 20 20 20 20 20 20 le 0120: 20 20 20 20 20 20 20 20 20 2a 0d 0a 2a 20 20 20 *..* 0130: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0140: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0150: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0160: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0170: 20 20 20 20 2a 0d 0a 2a 20 20 20 20 20 20 20 20 *..* 0180: 20 20 20 20 20 20 20 20 20 54 72 61 6e 73 6c 61 Transla 0190: 74 65 64 20 66 72 6f 6d 20 4d 69 6e 47 57 20 57 ted from MinGW W 01a0: 69 6e 64 6f 77 73 20 68 65 61 64 65 72 73 20 20 indows headers 01b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2a * 01c0: 0d 0a 2a 20 20 20 20 20 20 20 20 20 20 20 20 20 ..* 01d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 01e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 01f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0200: 20 20 20 20 20 20 20 20 20 20 2a 0d 0a 2a 20 20 *..* 0210: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0220: 20 20 20 20 20 50 6c 61 63 65 64 20 69 6e 74 6f Placed into 0230: 20 70 75 62 6c 69 63 20 64 6f 6d 61 69 6e 20 20 public domain 0240: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0250: 20 20 20 20 20 2a 0d 0a 5c 2a 2a 2a 2a 2a 2a 2a *..\******* 0260: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 0270: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 0280: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 0290: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 02a0: 2f 0d 0a 6d 6f 64 75 6c 65 20 77 69 6e 33 32 2e /..module win32. 02b0: 65 78 64 69 73 70 3b 0d 0a 0d 0a 69 6d 70 6f 72 exdisp;....impor 02c0: 74 20 77 69 6e 33 32 2e 64 6f 63 6f 62 6a 2c 20 t win32.docobj, 02d0: 77 69 6e 33 32 2e 6f 61 69 64 6c 2c 20 77 69 6e win32.oaidl, win 02e0: 33 32 2e 6f 63 69 64 6c 3b 0d 0a 70 72 69 76 61 32.ocidl;..priva 02f0: 74 65 20 69 6d 70 6f 72 74 20 77 69 6e 33 32 2e te import win32. 0300: 62 61 73 65 74 79 70 73 2c 20 77 69 6e 33 32 2e basetyps, win32. 0310: 77 69 6e 64 65 66 2c 20 77 69 6e 33 32 2e 77 74 windef, win32.wt 0320: 79 70 65 73 3b 0d 0a 0d 0a 0d 0a 65 6e 75 6d 20 ypes;......enum 0330: 42 72 6f 77 73 65 72 4e 61 76 43 6f 6e 73 74 61 BrowserNavConsta 0340: 6e 74 73 20 7b 0d 0a 09 6e 61 76 4f 70 65 6e 49 nts {...navOpenI 0350: 6e 4e 65 77 57 69 6e 64 6f 77 20 3d 20 30 78 30 nNewWindow = 0x0 0360: 31 2c 0d 0a 09 6e 61 76 4e 6f 48 69 73 74 6f 72 1,...navNoHistor 0370: 79 20 20 20 20 20 20 20 3d 20 30 78 30 32 2c 0d y = 0x02,. 0380: 0a 09 6e 61 76 4e 6f 52 65 61 64 46 72 6f 6d 43 ..navNoReadFromC 0390: 61 63 68 65 20 3d 20 30 78 30 34 2c 0d 0a 09 6e ache = 0x04,...n 03a0: 61 76 4e 6f 57 72 69 74 65 54 6f 63 61 63 68 65 avNoWriteTocache 03b0: 20 20 3d 20 30 78 30 38 2c 0d 0a 09 6e 61 76 41 = 0x08,...navA 03c0: 6c 6c 6f 77 41 75 74 6f 73 65 61 72 63 68 20 3d llowAutosearch = 03d0: 20 30 78 31 30 2c 0d 0a 09 6e 61 76 42 72 6f 77 0x10,...navBrow 03e0: 73 65 72 42 61 72 20 20 20 20 20 20 3d 20 30 78 serBar = 0x 03f0: 32 30 2c 0d 0a 09 6e 61 76 48 79 70 65 72 4c 69 20,...navHyperLi 0400: 6e 6b 20 20 20 20 20 20 20 3d 20 30 78 34 30 0d nk = 0x40. 0410: 0a 7d 0d 0a 0d 0a 69 6e 74 65 72 66 61 63 65 20 .}....interface 0420: 49 57 65 62 42 72 6f 77 73 65 72 20 3a 20 49 44 IWebBrowser : ID 0430: 69 73 70 61 74 63 68 20 7b 0d 0a 09 48 52 45 53 ispatch {...HRES 0440: 55 4c 54 20 47 6f 42 61 63 6b 28 29 3b 0d 0a 09 ULT GoBack();... 0450: 48 52 45 53 55 4c 54 20 47 6f 46 6f 72 77 61 72 HRESULT GoForwar 0460: 64 28 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 47 d();...HRESULT G 0470: 6f 48 6f 6d 65 28 29 3b 0d 0a 09 48 52 45 53 55 oHome();...HRESU 0480: 4c 54 20 47 6f 53 65 61 72 63 68 28 29 3b 0d 0a LT GoSearch();.. 0490: 09 48 52 45 53 55 4c 54 20 4e 61 76 69 67 61 74 .HRESULT Navigat 04a0: 65 28 42 53 54 52 2c 20 56 41 52 49 41 4e 54 2a e(BSTR, VARIANT* 04b0: 2c 20 56 41 52 49 41 4e 54 2a 2c 20 56 41 52 49 , VARIANT*, VARI 04c0: 41 4e 54 2a 2c 20 56 41 52 49 41 4e 54 2a 29 3b ANT*, VARIANT*); 04d0: 0d 0a 09 48 52 45 53 55 4c 54 20 52 65 66 72 65 ...HRESULT Refre 04e0: 73 68 28 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 sh();...HRESULT 04f0: 52 65 66 72 65 73 68 32 28 56 41 52 49 41 4e 54 Refresh2(VARIANT 0500: 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 53 74 *);...HRESULT St 0510: 6f 70 28 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 op();...HRESULT 0520: 67 65 74 5f 41 70 70 6c 69 63 61 74 69 6f 6e 28 get_Application( 0530: 49 44 69 73 70 61 74 63 68 2a 20 70 70 44 69 73 IDispatch* ppDis 0540: 70 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 67 65 p);...HRESULT ge 0550: 74 5f 50 61 72 65 6e 74 28 49 44 69 73 70 61 74 t_Parent(IDispat 0560: 63 68 2a 20 70 70 44 69 73 70 29 3b 0d 0a 09 48 ch* ppDisp);...H 0570: 52 45 53 55 4c 54 20 67 65 74 5f 43 6f 6e 74 61 RESULT get_Conta 0580: 69 6e 65 72 28 49 44 69 73 70 61 74 63 68 2a 20 iner(IDispatch* 0590: 70 70 44 69 73 70 29 3b 0d 0a 09 48 52 45 53 55 ppDisp);...HRESU 05a0: 4c 54 20 67 65 74 5f 44 6f 63 75 6d 65 6e 74 28 LT get_Document( 05b0: 49 44 69 73 70 61 74 63 68 2a 20 70 70 44 69 73 IDispatch* ppDis 05c0: 70 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 67 65 p);...HRESULT ge 05d0: 74 5f 54 6f 70 4c 65 76 65 6c 43 6f 6e 74 61 69 t_TopLevelContai 05e0: 6e 65 72 28 56 41 52 49 41 4e 54 5f 42 4f 4f 4c ner(VARIANT_BOOL 05f0: 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 67 65 *);...HRESULT ge 0600: 74 5f 54 79 70 65 28 42 53 54 52 2a 29 3b 0d 0a t_Type(BSTR*);.. 0610: 09 48 52 45 53 55 4c 54 20 67 65 74 5f 4c 65 66 .HRESULT get_Lef 0620: 74 28 4c 4f 4e 47 2a 29 3b 0d 0a 09 48 52 45 53 t(LONG*);...HRES 0630: 55 4c 54 20 70 75 74 5f 4c 65 66 74 28 4c 4f 4e ULT put_Left(LON 0640: 47 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 67 65 G);...HRESULT ge 0650: 74 5f 54 6f 70 28 4c 4f 4e 47 2a 29 3b 0d 0a 09 t_Top(LONG*);... 0660: 48 52 45 53 55 4c 54 20 70 75 74 5f 54 6f 70 28 HRESULT put_Top( 0670: 4c 4f 4e 47 29 3b 0d 0a 09 48 52 45 53 55 4c 54 LONG);...HRESULT 0680: 20 67 65 74 5f 57 69 64 74 68 28 4c 4f 4e 47 2a get_Width(LONG* 0690: 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 70 75 74 );...HRESULT put 06a0: 5f 57 69 64 74 68 28 4c 4f 4e 47 29 3b 0d 0a 09 _Width(LONG);... 06b0: 48 52 45 53 55 4c 54 20 67 65 74 5f 48 65 69 67 HRESULT get_Heig 06c0: 68 74 28 4c 4f 4e 47 2a 29 3b 0d 0a 09 48 52 45 ht(LONG*);...HRE 06d0: 53 55 4c 54 20 70 75 74 5f 48 65 69 67 68 74 28 SULT put_Height( 06e0: 4c 4f 4e 47 29 3b 0d 0a 09 48 52 45 53 55 4c 54 LONG);...HRESULT 06f0: 20 67 65 74 5f 4c 6f 63 61 74 69 6f 6e 4e 61 6d get_LocationNam 0700: 65 28 42 53 54 52 2a 29 3b 0d 0a 09 48 52 45 53 e(BSTR*);...HRES 0710: 55 4c 54 20 67 65 74 5f 4c 6f 63 61 74 69 6f 6e ULT get_Location 0720: 55 52 4c 28 42 53 54 52 2a 29 3b 0d 0a 09 48 52 URL(BSTR*);...HR 0730: 45 53 55 4c 54 20 67 65 74 5f 42 75 73 79 28 56 ESULT get_Busy(V 0740: 41 52 49 41 4e 54 5f 42 4f 4f 4c 2a 29 3b 0d 0a ARIANT_BOOL*);.. 0750: 7d 0d 0a 0d 0a 69 6e 74 65 72 66 61 63 65 20 49 }....interface I 0760: 57 65 62 42 72 6f 77 73 65 72 41 70 70 20 3a 20 WebBrowserApp : 0770: 49 57 65 62 42 72 6f 77 73 65 72 20 7b 0d 0a 09 IWebBrowser {... 0780: 48 52 45 53 55 4c 54 20 51 75 69 74 28 29 3b 0d HRESULT Quit();. 0790: 0a 09 48 52 45 53 55 4c 54 20 43 6c 69 65 6e 74 ..HRESULT Client 07a0: 54 6f 57 69 6e 64 6f 77 28 69 6e 74 2a 2c 20 69 ToWindow(int*, i 07b0: 6e 74 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 nt*);...HRESULT 07c0: 50 75 74 50 72 6f 70 65 72 74 79 28 42 53 54 52 PutProperty(BSTR 07d0: 2c 20 56 41 52 49 41 4e 54 29 3b 0d 0a 09 48 52 , VARIANT);...HR 07e0: 45 53 55 4c 54 20 47 65 74 50 72 6f 70 65 72 74 ESULT GetPropert 07f0: 79 28 42 53 54 52 2c 20 56 41 52 49 41 4e 54 2a y(BSTR, VARIANT* 0800: 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 67 65 74 );...HRESULT get 0810: 5f 4e 61 6d 65 28 42 53 54 52 2a 29 3b 0d 0a 09 _Name(BSTR*);... 0820: 48 52 45 53 55 4c 54 20 67 65 74 5f 48 57 4e 44 HRESULT get_HWND 0830: 28 4c 4f 4e 47 2a 29 3b 0d 0a 09 48 52 45 53 55 (LONG*);...HRESU 0840: 4c 54 20 67 65 74 5f 46 75 6c 6c 4e 61 6d 65 28 LT get_FullName( 0850: 42 53 54 52 2a 29 3b 0d 0a 09 48 52 45 53 55 4c BSTR*);...HRESUL 0860: 54 20 67 65 74 5f 50 61 74 68 28 42 53 54 52 2a T get_Path(BSTR* 0870: 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 67 65 74 );...HRESULT get 0880: 5f 56 69 73 69 62 6c 65 28 56 41 52 49 41 4e 54 _Visible(VARIANT 0890: 5f 42 4f 4f 4c 2a 29 3b 0d 0a 09 48 52 45 53 55 _BOOL*);...HRESU 08a0: 4c 54 20 70 75 74 5f 56 69 73 69 62 6c 65 28 56 LT put_Visible(V 08b0: 41 52 49 41 4e 54 5f 42 4f 4f 4c 29 3b 0d 0a 09 ARIANT_BOOL);... 08c0: 48 52 45 53 55 4c 54 20 67 65 74 5f 53 74 61 74 HRESULT get_Stat 08d0: 75 73 42 61 72 28 56 41 52 49 41 4e 54 5f 42 4f usBar(VARIANT_BO 08e0: 4f 4c 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 OL*);...HRESULT 08f0: 70 75 74 5f 53 74 61 74 75 73 42 61 72 28 56 41 put_StatusBar(VA 0900: 52 49 41 4e 54 5f 42 4f 4f 4c 29 3b 0d 0a 09 48 RIANT_BOOL);...H 0910: 52 45 53 55 4c 54 20 67 65 74 5f 53 74 61 74 75 RESULT get_Statu 0920: 73 54 65 78 74 28 42 53 54 52 2a 29 3b 0d 0a 09 sText(BSTR*);... 0930: 48 52 45 53 55 4c 54 20 70 75 74 5f 53 74 61 74 HRESULT put_Stat 0940: 75 73 54 65 78 74 28 42 53 54 52 29 3b 0d 0a 09 usText(BSTR);... 0950: 48 52 45 53 55 4c 54 20 67 65 74 5f 54 6f 6f 6c HRESULT get_Tool 0960: 42 61 72 28 69 6e 74 2a 29 3b 0d 0a 09 48 52 45 Bar(int*);...HRE 0970: 53 55 4c 54 20 70 75 74 5f 54 6f 6f 6c 42 61 72 SULT put_ToolBar 0980: 28 69 6e 74 29 3b 0d 0a 09 48 52 45 53 55 4c 54 (int);...HRESULT 0990: 20 67 65 74 5f 4d 65 6e 75 42 61 72 28 56 41 52 get_MenuBar(VAR 09a0: 49 41 4e 54 5f 42 4f 4f 4c 2a 29 3b 0d 0a 09 48 IANT_BOOL*);...H 09b0: 52 45 53 55 4c 54 20 70 75 74 5f 4d 65 6e 75 42 RESULT put_MenuB 09c0: 61 72 28 56 41 52 49 41 4e 54 5f 42 4f 4f 4c 29 ar(VARIANT_BOOL) 09d0: 3b 0d 0a 09 48 52 45 53 55 4c 54 20 67 65 74 5f ;...HRESULT get_ 09e0: 46 75 6c 6c 53 63 72 65 65 6e 28 56 41 52 49 41 FullScreen(VARIA 09f0: 4e 54 5f 42 4f 4f 4c 2a 29 3b 0d 0a 09 48 52 45 NT_BOOL*);...HRE 0a00: 53 55 4c 54 20 70 75 74 5f 46 75 6c 6c 53 63 72 SULT put_FullScr 0a10: 65 65 6e 28 56 41 52 49 41 4e 54 5f 42 4f 4f 4c een(VARIANT_BOOL 0a20: 29 3b 0d 0a 7d 0d 0a 0d 0a 69 6e 74 65 72 66 61 );..}....interfa 0a30: 63 65 20 49 57 65 62 42 72 6f 77 73 65 72 32 20 ce IWebBrowser2 0a40: 3a 20 49 57 65 62 42 72 6f 77 73 65 72 41 70 70 : IWebBrowserApp 0a50: 20 7b 0d 0a 09 48 52 45 53 55 4c 54 20 4e 61 76 {...HRESULT Nav 0a60: 69 67 61 74 65 32 28 56 41 52 49 41 4e 54 2a 2c igate2(VARIANT*, 0a70: 20 56 41 52 49 41 4e 54 2a 2c 20 56 41 52 49 41 VARIANT*, VARIA 0a80: 4e 54 2a 2c 20 56 41 52 49 41 4e 54 2a 2c 20 56 NT*, VARIANT*, V 0a90: 41 52 49 41 4e 54 2a 29 3b 0d 0a 09 48 52 45 53 ARIANT*);...HRES 0aa0: 55 4c 54 20 51 75 65 72 79 53 74 61 74 75 73 57 ULT QueryStatusW 0ab0: 42 28 4f 4c 45 43 4d 44 49 44 2c 20 4f 4c 45 43 B(OLECMDID, OLEC 0ac0: 4d 44 46 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 MDF*);...HRESULT 0ad0: 20 45 78 65 63 57 42 28 4f 4c 45 43 4d 44 49 44 ExecWB(OLECMDID 0ae0: 2c 20 4f 4c 45 43 4d 44 45 58 45 43 4f 50 54 2c , OLECMDEXECOPT, 0af0: 20 56 41 52 49 41 4e 54 2a 2c 20 56 41 52 49 41 VARIANT*, VARIA 0b00: 4e 54 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 NT*);...HRESULT 0b10: 53 68 6f 77 42 72 6f 77 73 65 72 42 61 72 28 56 ShowBrowserBar(V 0b20: 41 52 49 41 4e 54 2a 2c 20 56 41 52 49 41 4e 54 ARIANT*, VARIANT 0b30: 2a 2c 20 56 41 52 49 41 4e 54 2a 29 3b 0d 0a 09 *, VARIANT*);... 0b40: 48 52 45 53 55 4c 54 20 67 65 74 5f 52 65 61 64 HRESULT get_Read 0b50: 79 53 74 61 74 65 28 52 45 41 44 59 53 54 41 54 yState(READYSTAT 0b60: 45 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 67 E*);...HRESULT g 0b70: 65 74 5f 4f 66 66 6c 69 6e 65 28 56 41 52 49 41 et_Offline(VARIA 0b80: 4e 54 5f 42 4f 4f 4c 2a 29 3b 0d 0a 09 48 52 45 NT_BOOL*);...HRE 0b90: 53 55 4c 54 20 70 75 74 5f 4f 66 66 6c 69 6e 65 SULT put_Offline 0ba0: 28 56 41 52 49 41 4e 54 5f 42 4f 4f 4c 29 3b 0d (VARIANT_BOOL);. 0bb0: 0a 09 48 52 45 53 55 4c 54 20 67 65 74 5f 53 69 ..HRESULT get_Si 0bc0: 6c 65 6e 74 28 56 41 52 49 41 4e 54 5f 42 4f 4f lent(VARIANT_BOO 0bd0: 4c 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 70 L*);...HRESULT p 0be0: 75 74 5f 53 69 6c 65 6e 74 28 56 41 52 49 41 4e ut_Silent(VARIAN 0bf0: 54 5f 42 4f 4f 4c 29 3b 0d 0a 09 48 52 45 53 55 T_BOOL);...HRESU 0c00: 4c 54 20 67 65 74 5f 52 65 67 69 73 74 61 65 72 LT get_Registaer 0c10: 41 73 42 72 6f 77 73 65 72 28 56 41 52 49 41 4e AsBrowser(VARIAN 0c20: 54 5f 42 4f 4f 4c 2a 29 3b 0d 0a 09 48 52 45 53 T_BOOL*);...HRES 0c30: 55 4c 54 20 70 75 74 5f 52 65 67 69 73 74 65 72 ULT put_Register 0c40: 41 73 42 72 6f 77 73 65 72 28 56 41 52 49 41 4e AsBrowser(VARIAN 0c50: 54 5f 42 4f 4f 4c 29 3b 0d 0a 09 48 52 45 53 55 T_BOOL);...HRESU 0c60: 4c 54 20 67 65 74 5f 52 65 67 69 73 74 61 65 72 LT get_Registaer 0c70: 41 73 44 72 6f 70 54 61 72 67 65 74 28 56 41 52 AsDropTarget(VAR 0c80: 49 41 4e 54 5f 42 4f 4f 4c 2a 29 3b 0d 0a 09 48 IANT_BOOL*);...H 0c90: 52 45 53 55 4c 54 20 70 75 74 5f 52 65 67 69 73 RESULT put_Regis 0ca0: 74 65 72 41 73 44 72 6f 70 54 61 72 67 65 74 28 terAsDropTarget( 0cb0: 56 41 52 49 41 4e 54 5f 42 4f 4f 4c 29 3b 0d 0a VARIANT_BOOL);.. 0cc0: 09 48 52 45 53 55 4c 54 20 67 65 74 5f 54 68 65 .HRESULT get_The 0cd0: 61 74 65 72 4d 6f 64 65 28 56 41 52 49 41 4e 54 aterMode(VARIANT 0ce0: 5f 42 4f 4f 4c 2a 29 3b 0d 0a 09 48 52 45 53 55 _BOOL*);...HRESU 0cf0: 4c 54 20 70 75 74 5f 54 68 65 61 74 65 72 4d 6f LT put_TheaterMo 0d00: 64 65 28 56 41 52 49 41 4e 54 5f 42 4f 4f 4c 29 de(VARIANT_BOOL) 0d10: 3b 0d 0a 09 48 52 45 53 55 4c 54 20 67 65 74 5f ;...HRESULT get_ 0d20: 41 64 64 72 65 73 73 42 61 72 28 56 41 52 49 41 AddressBar(VARIA 0d30: 4e 54 5f 42 4f 4f 4c 2a 29 3b 0d 0a 09 48 52 45 NT_BOOL*);...HRE 0d40: 53 55 4c 54 20 70 75 74 5f 41 64 64 72 65 73 73 SULT put_Address 0d50: 42 61 72 28 56 41 52 49 41 4e 54 5f 42 4f 4f 4c Bar(VARIANT_BOOL 0d60: 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 67 65 74 );...HRESULT get 0d70: 5f 52 65 73 69 7a 61 62 6c 65 28 56 41 52 49 41 _Resizable(VARIA 0d80: 4e 54 5f 42 4f 4f 4c 2a 29 3b 0d 0a 09 48 52 45 NT_BOOL*);...HRE 0d90: 53 55 4c 54 20 70 75 74 5f 52 65 73 69 7a 61 62 SULT put_Resizab 0da0: 6c 65 28 56 41 52 49 41 4e 54 5f 42 4f 4f 4c 29 le(VARIANT_BOOL) 0db0: 3b 0d 0a 7d 0d 0a 0d 0a 69 6e 74 65 72 66 61 63 ;..}....interfac 0dc0: 65 20 44 57 65 62 42 72 6f 77 73 65 72 45 76 65 e DWebBrowserEve 0dd0: 6e 74 73 32 20 3a 20 49 44 69 73 70 61 74 63 68 nts2 : IDispatch 0de0: 20 7b 0d 0a 09 76 6f 69 64 20 53 74 61 74 75 73 {...void Status 0df0: 54 65 78 74 43 68 61 6e 67 65 28 42 53 54 52 29 TextChange(BSTR) 0e00: 3b 0d 0a 09 76 6f 69 64 20 50 72 6f 67 72 65 73 ;...void Progres 0e10: 73 43 68 61 6e 67 65 28 4c 4f 4e 47 2c 20 4c 4f sChange(LONG, LO 0e20: 4e 47 29 3b 0d 0a 09 76 6f 69 64 20 43 6f 6d 6d NG);...void Comm 0e30: 61 6e 64 53 74 61 74 65 43 68 61 6e 67 65 28 4c andStateChange(L 0e40: 4f 4e 47 2c 20 56 41 52 49 41 4e 54 5f 42 4f 4f ONG, VARIANT_BOO 0e50: 4c 29 3b 0d 0a 09 76 6f 69 64 20 44 6f 77 6e 6c L);...void Downl 0e60: 6f 61 64 42 65 67 69 6e 28 29 3b 0d 0a 09 76 6f oadBegin();...vo 0e70: 69 64 20 44 6f 77 6e 6c 6f 61 64 43 6f 6d 70 6c id DownloadCompl 0e80: 65 74 65 28 29 3b 0d 0a 09 76 6f 69 64 20 54 69 ete();...void Ti 0e90: 74 6c 65 43 68 61 6e 67 65 28 42 53 54 52 29 3b tleChange(BSTR); 0ea0: 0d 0a 09 76 6f 69 64 20 50 72 6f 70 65 72 74 79 ...void Property 0eb0: 43 68 61 6e 67 65 28 42 53 54 52 29 3b 0d 0a 09 Change(BSTR);... 0ec0: 76 6f 69 64 20 42 65 66 6f 72 65 4e 61 76 69 67 void BeforeNavig 0ed0: 61 74 65 32 28 49 44 69 73 70 61 74 63 68 20 70 ate2(IDispatch p 0ee0: 44 69 73 70 2c 20 56 41 52 49 41 4e 54 2a 2c 20 Disp, VARIANT*, 0ef0: 56 41 52 49 41 4e 54 2a 2c 20 56 41 52 49 41 4e VARIANT*, VARIAN 0f00: 54 2a 2c 20 56 41 52 49 41 4e 54 2a 2c 20 56 41 T*, VARIANT*, VA 0f10: 52 49 41 4e 54 2a 2c 20 56 41 52 49 41 4e 54 5f RIANT*, VARIANT_ 0f20: 42 4f 4f 4c 2a 29 3b 0d 0a 09 76 6f 69 64 20 4e BOOL*);...void N 0f30: 65 77 57 69 6e 64 6f 77 32 28 49 44 69 73 70 61 ewWindow2(IDispa 0f40: 74 63 68 2a 20 70 70 44 69 73 70 2c 20 56 41 52 tch* ppDisp, VAR 0f50: 49 41 4e 54 5f 42 4f 4f 4c 2a 29 3b 0d 0a 09 76 IANT_BOOL*);...v 0f60: 6f 69 64 20 4e 61 76 69 67 61 74 65 43 6f 6d 70 oid NavigateComp 0f70: 6c 65 74 65 28 49 44 69 73 70 61 74 63 68 20 70 lete(IDispatch p 0f80: 44 69 73 70 2c 20 56 41 52 49 41 4e 54 2a 29 3b Disp, VARIANT*); 0f90: 0d 0a 09 76 6f 69 64 20 44 6f 63 75 6d 65 6e 74 ...void Document 0fa0: 43 6f 6d 70 6c 65 74 65 28 49 44 69 73 70 61 74 Complete(IDispat 0fb0: 63 68 20 70 44 69 73 70 2c 20 56 41 52 49 41 4e ch pDisp, VARIAN 0fc0: 54 2a 29 3b 0d 0a 09 76 6f 69 64 20 4f 6e 51 75 T*);...void OnQu 0fd0: 69 74 28 29 3b 0d 0a 09 76 6f 69 64 20 4f 6e 56 it();...void OnV 0fe0: 69 73 69 62 6c 65 28 56 41 52 49 41 4e 54 5f 42 isible(VARIANT_B 0ff0: 4f 4f 4c 29 3b 0d 0a 09 76 6f 69 64 20 4f 6e 54 OOL);...void OnT 1000: 6f 6f 6c 42 61 72 28 56 41 52 49 41 4e 54 5f 42 oolBar(VARIANT_B 1010: 4f 4f 4c 29 3b 0d 0a 09 76 6f 69 64 20 4f 6e 4d OOL);...void OnM 1020: 65 6e 75 42 61 72 28 56 41 52 49 41 4e 54 5f 42 enuBar(VARIANT_B 1030: 4f 4f 4c 29 3b 0d 0a 09 76 6f 69 64 20 4f 6e 53 OOL);...void OnS 1040: 74 61 74 75 73 42 61 72 28 56 41 52 49 41 4e 54 tatusBar(VARIANT 1050: 5f 42 4f 4f 4c 29 3b 0d 0a 09 76 6f 69 64 20 4f _BOOL);...void O 1060: 6e 46 75 6c 6c 53 63 72 65 65 6e 28 56 41 52 49 nFullScreen(VARI 1070: 41 4e 54 5f 42 4f 4f 4c 29 3b 0d 0a 09 76 6f 69 ANT_BOOL);...voi 1080: 64 20 4f 6e 54 68 65 61 74 65 72 4d 6f 64 65 28 d OnTheaterMode( 1090: 56 41 52 49 41 4e 54 5f 42 4f 4f 4c 29 3b 0d 0a VARIANT_BOOL);.. 10a0: 09 76 6f 69 64 20 57 69 6e 64 6f 77 53 65 74 52 .void WindowSetR 10b0: 65 73 69 7a 61 62 6c 65 28 56 41 52 49 41 4e 54 esizable(VARIANT 10c0: 5f 42 4f 4f 4c 29 3b 0d 0a 09 76 6f 69 64 20 57 _BOOL);...void W 10d0: 69 6e 64 6f 77 53 65 74 4c 65 66 74 28 4c 4f 4e indowSetLeft(LON 10e0: 47 29 3b 0d 0a 09 76 6f 69 64 20 57 69 6e 64 6f G);...void Windo 10f0: 77 53 65 74 54 6f 70 28 4c 4f 4e 47 29 3b 0d 0a wSetTop(LONG);.. 1100: 09 76 6f 69 64 20 57 69 6e 64 6f 77 53 65 74 57 .void WindowSetW 1110: 69 64 74 68 28 4c 4f 4e 47 29 3b 0d 0a 09 76 6f idth(LONG);...vo 1120: 69 64 20 57 69 6e 64 6f 77 53 65 74 48 65 69 67 id WindowSetHeig 1130: 68 74 28 4c 4f 4e 47 29 3b 0d 0a 09 76 6f 69 64 ht(LONG);...void 1140: 20 57 69 6e 64 6f 77 43 6c 6f 73 69 6e 67 28 56 WindowClosing(V 1150: 41 52 49 41 4e 54 5f 42 4f 4f 4c 2c 20 56 41 52 ARIANT_BOOL, VAR 1160: 49 41 4e 54 5f 42 4f 4f 4c 2a 29 3b 0d 0a 09 76 IANT_BOOL*);...v 1170: 6f 69 64 20 43 6c 69 65 6e 74 54 6f 48 6f 73 74 oid ClientToHost 1180: 57 69 6e 64 6f 77 28 4c 4f 4e 47 2a 2c 20 4c 4f Window(LONG*, LO 1190: 4e 47 2a 29 3b 0d 0a 09 76 6f 69 64 20 53 65 74 NG*);...void Set 11a0: 53 65 63 75 72 65 4c 6f 63 6b 49 63 6f 6e 28 4c SecureLockIcon(L 11b0: 4f 4e 47 29 3b 0d 0a 09 76 6f 69 64 20 46 69 6c ONG);...void Fil 11c0: 65 44 6f 77 6e 6c 6f 61 64 28 56 41 52 49 41 4e eDownload(VARIAN 11d0: 54 5f 42 4f 4f 4c 2a 29 3b 0d 0a 7d 0d 0a T_BOOL*);..}..