6 #define UNIMPLEMENTED DbgPrint("%s is UNIMPLEMENTED!\n", __FUNCTION__)
10 HRESULT WINAPI
CExplorerBand_Constructor(REFIID riid
, LPVOID
*ppv
)
12 return ShellObjectCreator
<CExplorerBand
>(riid
, ppv
);
15 CExplorerBand::CExplorerBand() :
17 m_internalDeskBand(NULL
),
18 m_internalObjectWithSite(NULL
),
19 m_internalInputObject(NULL
),
20 m_internalPersistStream(NULL
),
21 m_internalOleCommandTarget(NULL
),
22 m_internalServiceProvider(NULL
),
23 m_internalBandNavigate(NULL
),
24 m_internalWinEventHandler(NULL
),
25 m_internalNamespaceProxy(NULL
),
26 m_internalDispatch(NULL
),
27 m_OnWinEventShown(FALSE
)
29 HRESULT hResult
= CoCreateInstance(CLSID_ExplorerBand
, NULL
, CLSCTX_INPROC_SERVER
, IID_PPV_ARG(IUnknown
, &m_internalBand
));
32 ERR("Could not create internal band (hr=%08lx).\n", hResult
);
33 m_internalBand
= NULL
;
36 hResult
= m_internalBand
->QueryInterface(IID_PPV_ARG(IDeskBand
, &m_internalDeskBand
));
39 ERR("Could not obtain interface IDeskBand from internal band (hr=%08lx).\n", hResult
);
40 m_internalBand
= NULL
;
41 m_internalDeskBand
= NULL
;
44 hResult
= m_internalBand
->QueryInterface(IID_PPV_ARG(IObjectWithSite
, &m_internalObjectWithSite
));
47 ERR("Could not obtain interface IObjectWithSite from internal band (hr=%08lx).\n", hResult
);
48 m_internalBand
= NULL
;
49 m_internalDeskBand
= NULL
;
50 m_internalObjectWithSite
= NULL
;
53 hResult
= m_internalBand
->QueryInterface(IID_PPV_ARG(IInputObject
, &m_internalInputObject
));
56 ERR("Could not obtain interface IInputObject from internal band (hr=%08lx).\n", hResult
);
57 m_internalBand
= NULL
;
58 m_internalDeskBand
= NULL
;
59 m_internalObjectWithSite
= NULL
;
60 m_internalInputObject
= NULL
;
63 hResult
= m_internalBand
->QueryInterface(IID_PPV_ARG(IPersistStream
, &m_internalPersistStream
));
66 ERR("Could not obtain interface IPersistStream from internal band (hr=%08lx).\n", hResult
);
67 m_internalBand
= NULL
;
68 m_internalDeskBand
= NULL
;
69 m_internalObjectWithSite
= NULL
;
70 m_internalInputObject
= NULL
;
71 m_internalPersistStream
= NULL
;
74 hResult
= m_internalBand
->QueryInterface(IID_PPV_ARG(IOleCommandTarget
, &m_internalOleCommandTarget
));
77 ERR("Could not obtain interface IOleCommandTarget from internal band (hr=%08lx).\n", hResult
);
78 m_internalBand
= NULL
;
79 m_internalDeskBand
= NULL
;
80 m_internalObjectWithSite
= NULL
;
81 m_internalInputObject
= NULL
;
82 m_internalPersistStream
= NULL
;
83 m_internalOleCommandTarget
= NULL
;
86 hResult
= m_internalBand
->QueryInterface(IID_PPV_ARG(IServiceProvider
, &m_internalServiceProvider
));
89 ERR("Could not obtain interface IServiceProvider from internal band (hr=%08lx).\n", hResult
);
90 m_internalBand
= NULL
;
91 m_internalDeskBand
= NULL
;
92 m_internalObjectWithSite
= NULL
;
93 m_internalInputObject
= NULL
;
94 m_internalPersistStream
= NULL
;
95 m_internalOleCommandTarget
= NULL
;
96 m_internalServiceProvider
= NULL
;
99 hResult
= m_internalBand
->QueryInterface(IID_PPV_ARG(IBandNavigate
, &m_internalBandNavigate
));
102 ERR("Could not obtain interface IBandNavigate from internal band (hr=%08lx).\n", hResult
);
103 m_internalBand
= NULL
;
104 m_internalDeskBand
= NULL
;
105 m_internalObjectWithSite
= NULL
;
106 m_internalInputObject
= NULL
;
107 m_internalPersistStream
= NULL
;
108 m_internalOleCommandTarget
= NULL
;
109 m_internalServiceProvider
= NULL
;
110 m_internalBandNavigate
= NULL
;
113 hResult
= m_internalBand
->QueryInterface(IID_PPV_ARG(IWinEventHandler
, &m_internalWinEventHandler
));
116 ERR("Could not obtain interface IWinEventHandler from internal band (hr=%08lx).\n", hResult
);
117 m_internalBand
= NULL
;
118 m_internalDeskBand
= NULL
;
119 m_internalObjectWithSite
= NULL
;
120 m_internalInputObject
= NULL
;
121 m_internalPersistStream
= NULL
;
122 m_internalOleCommandTarget
= NULL
;
123 m_internalServiceProvider
= NULL
;
124 m_internalBandNavigate
= NULL
;
125 m_internalWinEventHandler
= NULL
;
128 hResult
= m_internalBand
->QueryInterface(IID_PPV_ARG(INamespaceProxy
, &m_internalNamespaceProxy
));
131 ERR("Could not obtain interface INamespaceProxy from internal band (hr=%08lx).\n", hResult
);
132 m_internalBand
= NULL
;
133 m_internalDeskBand
= NULL
;
134 m_internalObjectWithSite
= NULL
;
135 m_internalInputObject
= NULL
;
136 m_internalPersistStream
= NULL
;
137 m_internalOleCommandTarget
= NULL
;
138 m_internalServiceProvider
= NULL
;
139 m_internalBandNavigate
= NULL
;
140 m_internalWinEventHandler
= NULL
;
141 m_internalNamespaceProxy
= NULL
;
144 hResult
= m_internalBand
->QueryInterface(IID_PPV_ARG(IDispatch
, &m_internalDispatch
));
147 ERR("Could not obtain interface INamespaceProxy from internal band (hr=%08lx).\n", hResult
);
148 m_internalBand
= NULL
;
149 m_internalDeskBand
= NULL
;
150 m_internalObjectWithSite
= NULL
;
151 m_internalInputObject
= NULL
;
152 m_internalPersistStream
= NULL
;
153 m_internalOleCommandTarget
= NULL
;
154 m_internalServiceProvider
= NULL
;
155 m_internalBandNavigate
= NULL
;
156 m_internalWinEventHandler
= NULL
;
157 m_internalNamespaceProxy
= NULL
;
158 m_internalDispatch
= NULL
;
163 CExplorerBand::~CExplorerBand()
167 // *** IOleWindow methods ***
168 HRESULT STDMETHODCALLTYPE
CExplorerBand::GetWindow(HWND
*lphwnd
)
171 if (m_internalDeskBand
)
173 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::GetWindow(HWND *lphwnd=%p)\n", lphwnd
);
174 hr
= m_internalDeskBand
->GetWindow(lphwnd
);
176 DbgPrint("\t*lphwnd=%p\n", *lphwnd
);
177 DbgPrint("CExplorerBand::GetWindow returning %08lx\n", hr
);
185 HRESULT STDMETHODCALLTYPE
CExplorerBand::ContextSensitiveHelp(BOOL fEnterMode
)
188 if (m_internalDeskBand
)
190 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::ContextSensitiveHelp(BOOL fEnterMode=%s)\n", fEnterMode
? "TRUE" : "FALSE");
191 hr
= m_internalDeskBand
->ContextSensitiveHelp(fEnterMode
);
192 DbgPrint("CExplorerBand::ContextSensitiveHelp returning %08lx\n", hr
);
201 // *** IDockingWindow methods ***
202 HRESULT STDMETHODCALLTYPE
CExplorerBand::CloseDW(DWORD dwReserved
)
205 if (m_internalDeskBand
)
207 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::CloseDW(DWORD dwReserved=%u)\n", dwReserved
);
208 hr
= m_internalDeskBand
->CloseDW(dwReserved
);
209 DbgPrint("CExplorerBand::CloseDW returning %08lx\n", hr
);
217 HRESULT STDMETHODCALLTYPE
CExplorerBand::ResizeBorderDW(const RECT
*prcBorder
, IUnknown
*punkToolbarSite
, BOOL fReserved
)
220 if (m_internalDeskBand
)
222 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::ResizeBorderDW(const RECT *prcBorder=%p, IUnknown *punkToolbarSite=%p, BOOL fReserved=%s)\n",
223 prcBorder
, punkToolbarSite
, fReserved
? "TRUE" : "FALSE");
225 DbgPrint("\t*prcBorder={%u, %u, %u, %u}\n", prcBorder
->left
, prcBorder
->top
, prcBorder
->right
, prcBorder
->bottom
);
226 hr
= m_internalDeskBand
->ResizeBorderDW(prcBorder
, punkToolbarSite
, fReserved
);
227 DbgPrint("CExplorerBand::ResizeBorderDW returning %08lx\n", hr
);
235 HRESULT STDMETHODCALLTYPE
CExplorerBand::ShowDW(BOOL fShow
)
238 if (m_internalDeskBand
)
240 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::ShowDW(BOOL fShow=%s)\n", fShow
? "TRUE" : "FALSE");
241 hr
= m_internalDeskBand
->ShowDW(fShow
);
242 DbgPrint("CExplorerBand::ShowDW returning %08lx\n", hr
);
251 // *** IDeskBand methods ***
252 HRESULT STDMETHODCALLTYPE
CExplorerBand::GetBandInfo(DWORD dwBandID
, DWORD dwViewMode
, DESKBANDINFO
*pdbi
)
255 if (m_internalDeskBand
)
257 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::GetBandInfo(DWORD dwBandID=%u, DWORD dwViewMode=%u, DESKBANDINFO *pdbi=%p)\n",
258 dwBandID
, dwViewMode
, pdbi
);
260 DbgPrint("\t*pdbi={dwMask=%u, ...}\n", pdbi
->dwMask
);
261 hr
= m_internalDeskBand
->GetBandInfo(dwBandID
, dwViewMode
, pdbi
);
263 DbgPrint("\t*pdbi={dwMask=%u, crBkgnd=%u, ...}\n", pdbi
->dwMask
, pdbi
->crBkgnd
);
264 DbgPrint("CExplorerBand::GetBandInfo returning %08lx\n", hr
);
273 // *** IObjectWithSite methods ***
274 HRESULT STDMETHODCALLTYPE
CExplorerBand::SetSite(IUnknown
*pUnkSite
)
277 if (m_internalObjectWithSite
)
279 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::SetSite(IUnknown *pUnkSite=%p)\n", pUnkSite
);
280 hr
= m_internalObjectWithSite
->SetSite(pUnkSite
);
281 DbgPrint("CExplorerBand::SetSite returning %08lx\n", hr
);
289 HRESULT STDMETHODCALLTYPE
CExplorerBand::GetSite(REFIID riid
, void **ppvSite
)
292 if (m_internalObjectWithSite
)
294 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::GetSite(REFIID riid=%s, void **ppvSite=%p)\n", wine_dbgstr_guid(&riid
), ppvSite
);
295 hr
= m_internalObjectWithSite
->GetSite(riid
, ppvSite
);
297 DbgPrint("\t*ppvSite=%p\n", *ppvSite
);
298 DbgPrint("CExplorerBand::GetSite returning %08lx\n", hr
);
307 // *** IOleCommandTarget methods ***
308 HRESULT STDMETHODCALLTYPE
CExplorerBand::QueryStatus(const GUID
*pguidCmdGroup
, ULONG cCmds
, OLECMD prgCmds
[], OLECMDTEXT
*pCmdText
)
311 if (m_internalOleCommandTarget
)
313 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::QueryStatus(const GUID *pguidCmdGroup=%s, ULONG cCmds=%08x, OLECMD prgCmds []=%p, OLECMDTEXT *pCmdText=%p)\n",
314 wine_dbgstr_guid(pguidCmdGroup
), cCmds
, prgCmds
, pCmdText
);
315 hr
= m_internalOleCommandTarget
->QueryStatus(pguidCmdGroup
, cCmds
, prgCmds
, pCmdText
);
316 DbgPrint("CExplorerBand::QueryStatus returning %08lx\n", hr
);
324 HRESULT STDMETHODCALLTYPE
CExplorerBand::Exec(const GUID
*pguidCmdGroup
, DWORD nCmdID
, DWORD nCmdexecopt
, VARIANT
*pvaIn
, VARIANT
*pvaOut
)
327 if (m_internalOleCommandTarget
)
329 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::Exec(const GUID *pguidCmdGroup=%s, DWORD nCmdID=%u, DWORD nCmdexecopt=%u, VARIANT *pvaIn=%p, VARIANT *pvaOut=%p)\n",
330 wine_dbgstr_guid(pguidCmdGroup
), nCmdID
, nCmdexecopt
, pvaIn
, pvaOut
);
331 hr
= m_internalOleCommandTarget
->Exec(pguidCmdGroup
, nCmdID
, nCmdexecopt
, pvaIn
, pvaOut
);
332 DbgPrint("CExplorerBand::Exec returning %08lx\n", hr
);
341 // *** IServiceProvider methods ***
342 HRESULT STDMETHODCALLTYPE
CExplorerBand::QueryService(REFGUID guidService
, REFIID riid
, void **ppvObject
)
345 if (m_internalServiceProvider
)
347 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::QueryService(REFGUID guidService=%s, REFIID riid=%s, void **ppvObject=%p)\n",
348 wine_dbgstr_guid(&guidService
), wine_dbgstr_guid(&riid
), ppvObject
);
349 hr
= m_internalServiceProvider
->QueryService(guidService
, riid
, ppvObject
);
351 DbgPrint("\t*ppvObject=%p\n", *ppvObject
);
352 DbgPrint("CExplorerBand::QueryService returning %08lx\n", hr
);
361 // *** IInputObject methods ***
362 HRESULT STDMETHODCALLTYPE
CExplorerBand::UIActivateIO(BOOL fActivate
, LPMSG lpMsg
)
365 if (m_internalInputObject
)
367 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::UIActivateIO(BOOL fActivate=%s, LPMSG lpMsg=%p)\n",
368 fActivate
? "TRUE" : "FALSE", lpMsg
);
369 hr
= m_internalInputObject
->UIActivateIO(fActivate
, lpMsg
);
371 DbgPrint("\t*lpMsg={hwnd=%p, message=%x, wParam=%x, lParam=%x, time=%x, pt={%u %u}}\n",
372 lpMsg
->hwnd
, lpMsg
->message
, lpMsg
->wParam
, lpMsg
->lParam
, lpMsg
->time
, lpMsg
->pt
.x
, lpMsg
->pt
.y
);
373 DbgPrint("CExplorerBand::UIActivateIO returning %08lx\n", hr
);
381 HRESULT STDMETHODCALLTYPE
CExplorerBand::HasFocusIO()
384 if (m_internalInputObject
)
386 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::HasFocusIO()\n");
387 hr
= m_internalInputObject
->HasFocusIO();
388 DbgPrint("CExplorerBand::HasFocusIO returning %08lx\n", hr
);
396 HRESULT STDMETHODCALLTYPE
CExplorerBand::TranslateAcceleratorIO(LPMSG lpMsg
)
399 if (m_internalInputObject
)
401 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::TranslateAcceleratorIO(LPMSG lpMsg=%p)\n", lpMsg
);
402 hr
= m_internalInputObject
->TranslateAcceleratorIO(lpMsg
);
404 DbgPrint("\t*lpMsg={hwnd=%p, message=%x, wParam=%x, lParam=%x, time=%x, pt={%u %u}}\n",
405 lpMsg
->hwnd
, lpMsg
->message
, lpMsg
->wParam
, lpMsg
->lParam
, lpMsg
->time
, lpMsg
->pt
.x
, lpMsg
->pt
.y
);
406 DbgPrint("CExplorerBand::TranslateAcceleratorIO returning %08lx\n", hr
);
415 // *** IPersist methods ***
416 HRESULT STDMETHODCALLTYPE
CExplorerBand::GetClassID(CLSID
*pClassID
)
419 if (m_internalPersistStream
)
421 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::GetClassID(CLSID *pClassID=%p)\n", pClassID
);
422 hr
= m_internalPersistStream
->GetClassID(pClassID
);
424 DbgPrint("\t*pClassID=%s\n", wine_dbgstr_guid(pClassID
));
425 DbgPrint("CExplorerBand::GetClassID returning %08lx\n", hr
);
434 // *** IPersistStream methods ***
435 HRESULT STDMETHODCALLTYPE
CExplorerBand::IsDirty()
438 if (m_internalPersistStream
)
440 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::IsDirty()\n");
441 hr
= m_internalPersistStream
->IsDirty();
442 DbgPrint("CExplorerBand::IsDirty returning %08lx\n", hr
);
450 HRESULT STDMETHODCALLTYPE
CExplorerBand::Load(IStream
*pStm
)
453 if (m_internalPersistStream
)
455 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::Load(IStream *pStm=%p)\n", pStm
);
456 hr
= m_internalPersistStream
->Load(pStm
);
457 DbgPrint("CExplorerBand::Load returning %08lx\n", hr
);
465 HRESULT STDMETHODCALLTYPE
CExplorerBand::Save(IStream
*pStm
, BOOL fClearDirty
)
468 if (m_internalPersistStream
)
470 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::Save(IStream *pStm=%p, BOOL fClearDirty=%s)\n",
471 pStm
, fClearDirty
? "TRUE" : "FALSE");
472 hr
= m_internalPersistStream
->Save(pStm
, fClearDirty
);
473 DbgPrint("CExplorerBand::Save returning %08lx\n", hr
);
481 HRESULT STDMETHODCALLTYPE
CExplorerBand::GetSizeMax(ULARGE_INTEGER
*pcbSize
)
484 if (m_internalPersistStream
)
486 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::GetSizeMax(ULARGE_INTEGER *pcbSize=%p)\n", pcbSize
);
487 hr
= m_internalPersistStream
->GetSizeMax(pcbSize
);
489 DbgPrint("\t*pcbSize=%llx\n", pcbSize
->QuadPart
);
490 DbgPrint("CExplorerBand::GetSizeMax returning %08lx\n", hr
);
499 // *** IWinEventHandler methods ***
500 HRESULT STDMETHODCALLTYPE
CExplorerBand::OnWinEvent(HWND hWnd
, UINT uMsg
, WPARAM wParam
, LPARAM lParam
, LRESULT
*theResult
)
503 if (m_internalWinEventHandler
)
505 if (m_OnWinEventShown
)
506 return m_internalWinEventHandler
->OnWinEvent(hWnd
, uMsg
, wParam
, lParam
, theResult
);
507 m_OnWinEventShown
= TRUE
;
509 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::OnWinEvent(HWND hWnd=%x, UINT uMsg=%x, WPARAM wParam=%x, LPARAM lParam=%x, LRESULT *theResult=%p)\n",
510 hWnd
, uMsg
, wParam
, lParam
, theResult
);
511 hr
= m_internalWinEventHandler
->OnWinEvent(hWnd
, uMsg
, wParam
, lParam
, theResult
);
513 DbgPrint("\t*theResult=%x\n", *theResult
);
514 DbgPrint("CExplorerBand::OnWinEvent returning %08lx\n", hr
);
522 HRESULT STDMETHODCALLTYPE
CExplorerBand::IsWindowOwner(HWND hWnd
)
525 if (m_internalWinEventHandler
)
527 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::IsWindowOwner(HWND hWnd=%x)\n", hWnd
);
528 hr
= m_internalWinEventHandler
->IsWindowOwner(hWnd
);
529 DbgPrint("CExplorerBand::IsWindowOwner returning %08lx\n", hr
);
538 // *** IBandNavigate methods ***
539 HRESULT STDMETHODCALLTYPE
CExplorerBand::Select(long paramC
)
542 if (m_internalBandNavigate
)
544 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::Select(long paramC=%x)\n", paramC
);
545 hr
= m_internalBandNavigate
->Select(paramC
);
546 DbgPrint("CExplorerBand::Select returning %08lx\n", hr
);
555 // *** INamespaceProxy ***
556 HRESULT STDMETHODCALLTYPE
CExplorerBand::GetNavigateTarget(long paramC
, long param10
, long param14
)
559 if (m_internalNamespaceProxy
)
561 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::GetNavigateTarget(long paramC=%08x, long param10=%08x, long param14=%08x)\n",
562 paramC
, param10
, param14
);
563 hr
= m_internalNamespaceProxy
->GetNavigateTarget(paramC
, param10
, param14
);
564 DbgPrint("CExplorerBand::GetNavigateTarget returning %08lx\n", hr
);
572 HRESULT STDMETHODCALLTYPE
CExplorerBand::Invoke(long paramC
)
575 if (m_internalNamespaceProxy
)
577 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::Invoke(long paramC=%08x)\n", paramC
);
578 hr
= m_internalNamespaceProxy
->Invoke(paramC
);
579 DbgPrint("CExplorerBand::Invoke returning %08lx\n", hr
);
587 HRESULT STDMETHODCALLTYPE
CExplorerBand::OnSelectionChanged(long paramC
)
590 if (m_internalNamespaceProxy
)
592 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::OnSelectionChanged(long paramC=%08x)\n", paramC
);
593 hr
= m_internalNamespaceProxy
->OnSelectionChanged(paramC
);
594 DbgPrint("CExplorerBand::OnSelectionChanged returning %08lx\n", hr
);
602 HRESULT STDMETHODCALLTYPE
CExplorerBand::RefreshFlags(long paramC
, long param10
, long param14
)
605 if (m_internalNamespaceProxy
)
607 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::RefreshFlags(long paramC=%08x, long param10=%08x, long param14=%08x)\n",
608 paramC
, param10
, param14
);
609 hr
= m_internalNamespaceProxy
->RefreshFlags(paramC
, param10
, param14
);
610 DbgPrint("CExplorerBand::RefreshFlags returning %08lx\n", hr
);
618 HRESULT STDMETHODCALLTYPE
CExplorerBand::CacheItem(long paramC
)
621 if (m_internalNamespaceProxy
)
623 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::CacheItem(long paramC=%08x)\n", paramC
);
624 hr
= m_internalNamespaceProxy
->CacheItem(paramC
);
625 DbgPrint("CExplorerBand::CacheItem returning %08lx\n", hr
);
634 // *** IDispatch methods ***
635 HRESULT STDMETHODCALLTYPE
CExplorerBand::GetTypeInfoCount(UINT
*pctinfo
)
638 if (m_internalDispatch
)
640 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::GetTypeInfoCount(UINT *pctinfo=%p)\n", pctinfo
);
641 hr
= m_internalDispatch
->GetTypeInfoCount(pctinfo
);
643 DbgPrint("\t*pctinfo=%08x\n", *pctinfo
);
644 DbgPrint("CExplorerBand::GetTypeInfoCount returning %08lx\n", hr
);
652 HRESULT STDMETHODCALLTYPE
CExplorerBand::GetTypeInfo(UINT iTInfo
, LCID lcid
, ITypeInfo
**ppTInfo
)
655 if (m_internalDispatch
)
657 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::GetTypeInfo(UINT iTInfo=%u, LCID lcid=%08x, ITypeInfo **ppTInfo=%p)\n",
658 iTInfo
, lcid
, ppTInfo
);
659 hr
= m_internalDispatch
->GetTypeInfo(iTInfo
, lcid
, ppTInfo
);
661 DbgPrint("\t*ppTInfo=%08x\n", *ppTInfo
);
662 DbgPrint("CExplorerBand::GetTypeInfo returning %08lx\n", hr
);
670 HRESULT STDMETHODCALLTYPE
CExplorerBand::GetIDsOfNames(REFIID riid
, LPOLESTR
*rgszNames
, UINT cNames
, LCID lcid
, DISPID
*rgDispId
)
673 if (m_internalDispatch
)
675 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::GetIDsOfNames(REFIID riid=%s, LPOLESTR *rgszNames=%S, UINT cNames=%u, LCID lcid=%08x, DISPID *rgDispId=%p)\n",
676 wine_dbgstr_guid(&riid
), rgszNames
, cNames
, lcid
, rgDispId
);
677 hr
= m_internalDispatch
->GetIDsOfNames(riid
, rgszNames
, cNames
, lcid
, rgDispId
);
678 if (rgDispId
&& SUCCEEDED(hr
))
680 for (UINT i
= 0; i
< cNames
; i
++)
682 DbgPrint("\trgDispId[%d]=%08x\n", rgDispId
[i
]);
685 DbgPrint("CExplorerBand::GetTypeInfo returning %08lx\n", hr
);
693 HRESULT STDMETHODCALLTYPE
CExplorerBand::Invoke(DISPID dispIdMember
, REFIID riid
, LCID lcid
, WORD wFlags
, DISPPARAMS
*pDispParams
, VARIANT
*pVarResult
, EXCEPINFO
*pExcepInfo
, UINT
*puArgErr
)