5 using namespace MSTSCLib
;
7 typedef HRESULT (STDAPICALLTYPE
* PFNDLLGETCLASSOBJECT
)(IN REFCLSID rclsid
, IN REFIID riid
, OUT LPVOID FAR
* ppv
);
8 typedef HRESULT (STDAPICALLTYPE
* PFNDLLCANUNLOADNOW
)(void);
9 typedef ULONG (STDAPICALLTYPE
* PFNDLLGETTSCCTLVER
)(void);
11 PFNDLLGETCLASSOBJECT pfnDllGetClassObject
= NULL
;
12 PFNDLLCANUNLOADNOW pfnDllCanUnloadNow
= NULL
;
13 PFNDLLGETTSCCTLVER pfnDllGetTscCtlVer
= NULL
;
15 HMODULE hmMstscax
= NULL
;
17 extern "C" char __ImageBase
;
18 static const HMODULE hmSelf
= reinterpret_cast<HMODULE
>(&__ImageBase
);
25 TCHAR szFileName
[MAX_PATH
+ 1];
26 GetModuleFileName(hmSelf
, szFileName
, MAX_PATH
);
28 std::basic_string
<TCHAR
> strFileName(&szFileName
[0]);
29 std::reverse_iterator
<std::basic_string
<TCHAR
>::const_iterator
> begin(strFileName
.end());
30 std::reverse_iterator
<std::basic_string
<TCHAR
>::const_iterator
> end(strFileName
.begin());
31 std::basic_string
<TCHAR
>::const_iterator endPath
= std::find(begin
, end
, TEXT('\\')).base();
33 std::basic_string
<TCHAR
> strPath(strFileName
.begin(), endPath
);
34 strPath
.append(TEXT("original\\mstscax.dll"));
36 hmMstscax
= LoadLibrary(strPath
.c_str());
37 pfnDllGetClassObject
= (PFNDLLGETCLASSOBJECT
)GetProcAddress(hmMstscax
, "DllGetClassObject");
38 pfnDllCanUnloadNow
= (PFNDLLCANUNLOADNOW
)GetProcAddress(hmMstscax
, "DllCanUnloadNow");
39 pfnDllGetTscCtlVer
= (PFNDLLGETTSCCTLVER
)GetProcAddress(hmMstscax
, "DllGetTscCtlVer");
42 void dbgprintf(LPCTSTR fmt
, ...)
48 StringCbVPrintf(buf
, sizeof(buf
), fmt
, args
);
51 StringCbCat(buf
, sizeof(buf
), TEXT("\n"));
53 OutputDebugString(buf
);
57 const IID MsTscAxIIDs
[] =
62 IID_IMsTscNonScriptable
,
63 IID_IMsRdpClientNonScriptable
,
66 const IID MsRdpClient
[] =
71 IID_IMsTscNonScriptable
,
72 IID_IMsRdpClientNonScriptable
,
75 const IID MsRdpClient2
[] =
81 IID_IMsTscNonScriptable
,
82 IID_IMsRdpClientNonScriptable
,
85 const IID MsRdpClient3
[] =
92 IID_IMsTscNonScriptable
,
93 IID_IMsRdpClientNonScriptable
,
96 const IID MsRdpClient4
[] =
103 //IID_IMsTscAxEvents,
104 IID_IMsTscNonScriptable
,
105 IID_IMsRdpClientNonScriptable
,
106 IID_IMsRdpClientNonScriptable2
,
110 std::wstring
UUIDToString(const UUID
& uuid
)
114 StringFromCLSID(uuid
, &str
);
120 std::wstring
MonikerToString(IMoniker
* pmk
)
122 LPOLESTR pszName
= NULL
;
124 if(SUCCEEDED(pmk
->GetDisplayName(NULL
, NULL
, &pszName
)))
126 std::wstring
s(pszName
);
127 CoTaskMemFree(pszName
);
131 return std::wstring(L
"<error>");
134 std::basic_string
<TCHAR
> RectToString(const RECT
& rc
)
137 return TEXT("<null>");
139 std::basic_ostringstream
<TCHAR
> o
;
140 o
<< "{" << " left:" << rc
.left
<< " top:" << rc
.top
<< " right:" << rc
.right
<< " bottom:" << rc
.bottom
<< " }";
144 std::basic_string
<TCHAR
> RectToString(const RECTL
& rc
)
147 return TEXT("<null>");
149 std::basic_ostringstream
<TCHAR
> o
;
150 o
<< "{" << " left:" << rc
.left
<< " top:" << rc
.top
<< " right:" << rc
.right
<< " bottom:" << rc
.bottom
<< " }";
154 std::basic_string
<TCHAR
> SizeToString(const SIZE
& sz
)
157 return TEXT("<null>");
159 std::basic_ostringstream
<TCHAR
> o
;
160 o
<< "{ " << " cx:" << sz
.cx
<< " cy:" << sz
.cy
<< " }";
164 template<class T
> LPCTSTR
BooleanToString(const T
& X
)
166 return X
? TEXT("true") : TEXT("false");
169 std::basic_string
<TCHAR
> VariantToString(const VARIANT
& var
)
171 std::basic_ostringstream
<TCHAR
> o
;
173 switch(var
.vt
& VT_TYPEMASK
)
175 case VT_EMPTY
: o
<< "<empty>"; break;
176 case VT_NULL
: o
<< "<null>"; break;
177 case VT_I2
: o
<< "short"; break;
178 case VT_I4
: o
<< "long"; break;
179 case VT_R4
: o
<< "float"; break;
180 case VT_R8
: o
<< "double"; break;
181 case VT_CY
: o
<< "CURRENCY"; break;
182 case VT_DATE
: o
<< "DATE"; break;
183 case VT_BSTR
: o
<< "string"; break;
184 case VT_DISPATCH
: o
<< "IDispatch *"; break;
185 case VT_ERROR
: o
<< "SCODE"; break;
186 case VT_BOOL
: o
<< "bool"; break;
187 case VT_VARIANT
: o
<< "VARIANT *"; break;
188 case VT_UNKNOWN
: o
<< "IUnknown *"; break;
189 case VT_DECIMAL
: o
<< "DECIMAL"; break;
190 case VT_I1
: o
<< "char"; break;
191 case VT_UI1
: o
<< "unsigned char"; break;
192 case VT_UI2
: o
<< "unsigned short"; break;
193 case VT_UI4
: o
<< "unsigned long"; break;
194 case VT_I8
: o
<< "long long"; break;
195 case VT_UI8
: o
<< "unsigned long long"; break;
196 case VT_INT
: o
<< "int"; break;
197 case VT_UINT
: o
<< "unsigned int"; break;
198 case VT_VOID
: o
<< "void"; break;
199 case VT_HRESULT
: o
<< "HRESULT"; break;
200 case VT_PTR
: o
<< "void *"; break;
201 case VT_SAFEARRAY
: o
<< "SAFEARRAY *"; break;
202 case VT_LPSTR
: o
<< "LPSTR"; break;
203 case VT_LPWSTR
: o
<< "LPWSTR"; break;
204 case VT_RECORD
: o
<< "struct { }"; break;
205 case VT_INT_PTR
: o
<< "intptr_t"; break;
206 case VT_UINT_PTR
: o
<< "uintptr_t"; break;
207 case VT_FILETIME
: o
<< "FILETIME"; break;
208 default: o
<< "???"; break;
211 if(var
.vt
& VT_ARRAY
)
213 else if(var
.vt
& VT_BYREF
)
217 switch(var
.vt
& VT_TYPEMASK
)
235 switch(var
.vt
& VT_TYPEMASK
)
237 case VT_I2
: o
<< var
.iVal
; break;
238 case VT_I4
: o
<< var
.lVal
; break;
239 case VT_R4
: o
<< var
.fltVal
; break;
240 case VT_R8
: o
<< var
.dblVal
; break;
241 case VT_BSTR
: o
<< std::wstring(var
.bstrVal
, var
.bstrVal
+ SysStringLen(var
.bstrVal
)); break;
242 case VT_BOOL
: o
<< var
.boolVal
? "true" : "false"; break;
243 case VT_I1
: o
<< int(var
.cVal
); break;
244 case VT_UI1
: o
<< unsigned int(var
.bVal
); break;
245 case VT_UI2
: o
<< var
.uiVal
; break;
246 case VT_UI4
: o
<< var
.ulVal
; break;
247 case VT_I8
: o
<< var
.llVal
; break;
248 case VT_UI8
: o
<< var
.ullVal
; break;
249 case VT_INT
: o
<< var
.intVal
; break;
250 case VT_UINT
: o
<< var
.uintVal
; break;
251 case VT_LPSTR
: o
<< LPSTR(var
.byref
); break;
252 case VT_LPWSTR
: o
<< LPWSTR(var
.byref
); break;
253 case VT_INT_PTR
: o
<< var
.intVal
; break; // BUGBUG
254 case VT_UINT_PTR
: o
<< var
.uintVal
; break; // BUGBUG
262 o
<< var
.byref
; break;
266 o
<< std::hex
<< var
.ulVal
; break;
281 #pragma warning(disable:4584)
283 IConnectionPointContainer
* HookIConnectionPointContainer(IConnectionPointContainer
* p
);
284 IEnumConnectionPoints
* HookIEnumConnectionPoints(IEnumConnectionPoints
* p
);
285 IConnectionPoint
* HookIConnectionPoint(IConnectionPoint
* p
);
286 IEnumConnections
* HookIEnumConnections(IEnumConnections
* p
);
288 class CConnectionPointContainer
: public IConnectionPointContainer
292 IConnectionPointContainer
* m_IConnectionPointContainer
;
295 CConnectionPointContainer(IConnectionPointContainer
* pIConnectionPointContainer
):
297 m_IConnectionPointContainer(pIConnectionPointContainer
)
300 ~CConnectionPointContainer() { m_IConnectionPointContainer
->Release(); }
302 virtual HRESULT STDMETHODCALLTYPE
QueryInterface(REFIID riid
, void ** ppvObject
)
306 dbgprintf(TEXT("CConnectionPointContainer::QueryInterface(%ls, %p)"), UUIDToString(riid
).c_str(), ppvObject
);
308 if(riid
== IID_IUnknown
|| riid
== IID_IConnectionPointContainer
)
316 dbgprintf(TEXT("CConnectionPointContainer::QueryInterface -> %08X, ppvObject = %p"), hr
, *ppvObject
);
320 virtual ULONG STDMETHODCALLTYPE
AddRef(void)
322 return InterlockedIncrement(&m_refCount
);
325 virtual ULONG STDMETHODCALLTYPE
Release(void)
327 LONG n
= InterlockedDecrement(&m_refCount
);
335 virtual HRESULT STDMETHODCALLTYPE
EnumConnectionPoints(IEnumConnectionPoints
** ppEnum
)
337 dbgprintf(TEXT("CConnectionPointContainer::EnumConnectionPoints(%p)"), ppEnum
);
338 HRESULT hr
= m_IConnectionPointContainer
->EnumConnectionPoints(ppEnum
);
339 dbgprintf(TEXT("CConnectionPointContainer::EnumConnectionPoints -> %08X, pEnum = %p"), hr
, *ppEnum
);
342 *ppEnum
= HookIEnumConnectionPoints(*ppEnum
);
347 virtual HRESULT STDMETHODCALLTYPE
FindConnectionPoint(REFIID riid
, IConnectionPoint
** ppCP
)
349 dbgprintf(TEXT("CConnectionPointContainer::FindConnectionPoint(%ls, %p)"), UUIDToString(riid
).c_str(), ppCP
);
350 HRESULT hr
= m_IConnectionPointContainer
->FindConnectionPoint(riid
, ppCP
);
351 dbgprintf(TEXT("CConnectionPointContainer::FindConnectionPoint -> %08X, pCP = %p"), hr
, *ppCP
);
354 *ppCP
= HookIConnectionPoint(*ppCP
);
360 class CEnumConnectionPoints
: public IEnumConnectionPoints
364 IEnumConnectionPoints
* m_IEnumConnectionPoints
;
367 CEnumConnectionPoints(IEnumConnectionPoints
* pIEnumConnectionPoints
):
369 m_IEnumConnectionPoints(pIEnumConnectionPoints
)
372 ~CEnumConnectionPoints() { m_IEnumConnectionPoints
->Release(); }
374 virtual HRESULT STDMETHODCALLTYPE
QueryInterface(REFIID riid
, void ** ppvObject
)
378 dbgprintf(TEXT("CEnumConnectionPoints::QueryInterface(%ls, %p)"), UUIDToString(riid
).c_str(), ppvObject
);
380 if(riid
== IID_IUnknown
|| riid
== IID_IEnumConnectionPoints
)
388 dbgprintf(TEXT("CEnumConnectionPoints::QueryInterface -> %08X, ppvObject = %p"), hr
, *ppvObject
);
392 virtual ULONG STDMETHODCALLTYPE
AddRef(void)
394 return InterlockedIncrement(&m_refCount
);
397 virtual ULONG STDMETHODCALLTYPE
Release(void)
399 LONG n
= InterlockedDecrement(&m_refCount
);
407 virtual HRESULT STDMETHODCALLTYPE
Next(ULONG cConnections
, LPCONNECTIONPOINT
* ppCP
, ULONG
* pcFetched
)
409 dbgprintf(TEXT("CEnumConnectionPoints::Next(%lu, %p, %p)"), cConnections
, ppCP
, pcFetched
);
410 HRESULT hr
= m_IEnumConnectionPoints
->Next(cConnections
, ppCP
, pcFetched
);
411 dbgprintf(TEXT("CEnumConnectionPoints:: -> %08X, pCP = %p, cFetched = %lu"), hr
, *ppCP
, *pcFetched
);
414 *ppCP
= HookIConnectionPoint(*ppCP
);
419 virtual HRESULT STDMETHODCALLTYPE
Skip(ULONG cConnections
)
421 dbgprintf(TEXT("CEnumConnectionPoints::Skip(%lu)"), cConnections
);
422 HRESULT hr
= m_IEnumConnectionPoints
->Skip(cConnections
);
423 dbgprintf(TEXT("CEnumConnectionPoints:: -> %08X"), hr
);
427 virtual HRESULT STDMETHODCALLTYPE
Reset(void)
429 dbgprintf(TEXT("CEnumConnectionPoints::Reset()"));
430 HRESULT hr
= m_IEnumConnectionPoints
->Reset();
431 dbgprintf(TEXT("CEnumConnectionPoints:: -> %08X"), hr
);
435 virtual HRESULT STDMETHODCALLTYPE
Clone(IEnumConnectionPoints
** ppEnum
)
437 dbgprintf(TEXT("CEnumConnectionPoints::Clone(%p)"), ppEnum
);
438 HRESULT hr
= m_IEnumConnectionPoints
->Clone(ppEnum
);
439 dbgprintf(TEXT("CEnumConnectionPoints:: -> %08X, pEnum"), hr
, *ppEnum
);
442 *ppEnum
= HookIEnumConnectionPoints(*ppEnum
);
448 class CConnectionPoint
: public IConnectionPoint
452 IConnectionPoint
* m_IConnectionPoint
;
455 CConnectionPoint(IConnectionPoint
* pIConnectionPoint
):
457 m_IConnectionPoint(pIConnectionPoint
)
460 ~CConnectionPoint() { m_IConnectionPoint
->Release(); }
462 virtual HRESULT STDMETHODCALLTYPE
QueryInterface(REFIID riid
, void ** ppvObject
)
466 dbgprintf(TEXT("CConnectionPoint::QueryInterface(%ls, %p)"), UUIDToString(riid
).c_str(), ppvObject
);
468 if(riid
== IID_IUnknown
|| riid
== IID_IConnectionPoint
)
476 dbgprintf(TEXT("CConnectionPoint::QueryInterface -> %08X, ppvObject = %p"), hr
, *ppvObject
);
480 virtual ULONG STDMETHODCALLTYPE
AddRef(void)
482 return InterlockedIncrement(&m_refCount
);
485 virtual ULONG STDMETHODCALLTYPE
Release(void)
487 LONG n
= InterlockedDecrement(&m_refCount
);
495 virtual HRESULT STDMETHODCALLTYPE
GetConnectionInterface(IID
* pIID
)
497 dbgprintf(TEXT("CConnectionPoint::GetConnectionInterface(%p)"), pIID
);
498 HRESULT hr
= m_IConnectionPoint
->GetConnectionInterface(pIID
);
499 dbgprintf(TEXT("CConnectionPoint::GetConnectionInterface -> %08X, IID = %ls"), hr
, UUIDToString(*pIID
).c_str());
503 virtual HRESULT STDMETHODCALLTYPE
GetConnectionPointContainer(IConnectionPointContainer
** ppCPC
)
505 dbgprintf(TEXT("CConnectionPoint::GetConnectionPointContainer(%p)"), ppCPC
);
506 HRESULT hr
= m_IConnectionPoint
->GetConnectionPointContainer(ppCPC
);
507 dbgprintf(TEXT("CConnectionPoint::GetConnectionPointContainer -> %08X, pCPC = %p"), hr
, *ppCPC
);
510 *ppCPC
= HookIConnectionPointContainer(*ppCPC
);
515 virtual HRESULT STDMETHODCALLTYPE
Advise(IUnknown
* pUnkSink
, DWORD
* pdwCookie
)
517 dbgprintf(TEXT("CConnectionPoint::Advise(%p, %p)"), pUnkSink
, pdwCookie
);
518 HRESULT hr
= m_IConnectionPoint
->Advise(pUnkSink
, pdwCookie
);
519 dbgprintf(TEXT("CConnectionPoint::Advise -> %08X, dwCookie = %lu"), hr
, *pdwCookie
);
524 virtual HRESULT STDMETHODCALLTYPE
Unadvise(DWORD dwCookie
)
526 dbgprintf(TEXT("CConnectionPoint::Unadvise(%lu)"), dwCookie
);
527 HRESULT hr
= m_IConnectionPoint
->Unadvise(dwCookie
);
528 dbgprintf(TEXT("CConnectionPoint::Unadvise -> %08X"), hr
);
532 virtual HRESULT STDMETHODCALLTYPE
EnumConnections(IEnumConnections
** ppEnum
)
534 dbgprintf(TEXT("CConnectionPoint::EnumConnections(%p)"), ppEnum
);
535 HRESULT hr
= m_IConnectionPoint
->EnumConnections(ppEnum
);
536 dbgprintf(TEXT("CConnectionPoint::EnumConnections -> %08X, pEnum = %p"), hr
, *ppEnum
);
539 *ppEnum
= HookIEnumConnections(*ppEnum
);
545 class CEnumConnections
: public IEnumConnections
549 IEnumConnections
* m_IEnumConnections
;
552 CEnumConnections(IEnumConnections
* pIEnumConnections
):
554 m_IEnumConnections(pIEnumConnections
)
557 ~CEnumConnections() { m_IEnumConnections
->Release(); }
559 virtual HRESULT STDMETHODCALLTYPE
QueryInterface(REFIID riid
, void ** ppvObject
)
563 dbgprintf(TEXT("CEnumConnections::QueryInterface(%ls, %p)"), UUIDToString(riid
).c_str(), ppvObject
);
565 if(riid
== IID_IUnknown
|| riid
== IID_IEnumConnections
)
573 dbgprintf(TEXT("CEnumConnections::QueryInterface -> %08X, ppvObject = %p"), hr
, *ppvObject
);
577 virtual ULONG STDMETHODCALLTYPE
AddRef(void)
579 return InterlockedIncrement(&m_refCount
);
582 virtual ULONG STDMETHODCALLTYPE
Release(void)
584 LONG n
= InterlockedDecrement(&m_refCount
);
592 virtual HRESULT STDMETHODCALLTYPE
Next(ULONG cConnections
, LPCONNECTDATA pCD
, ULONG
* pcFetched
)
594 dbgprintf(TEXT("CEnumConnections::Next(%lu, %p, %p)"), cConnections
, pCD
, pcFetched
);
595 HRESULT hr
= m_IEnumConnections
->Next(cConnections
, pCD
, pcFetched
);
596 dbgprintf(TEXT("CEnumConnections:: -> %08X, CD = { pUnk = %p, dwCookie = %lu }, cFetched = %lu"), hr
, pCD
->pUnk
, pCD
->dwCookie
, *pcFetched
);
600 virtual HRESULT STDMETHODCALLTYPE
Skip(ULONG cConnections
)
602 dbgprintf(TEXT("CEnumConnections::Skip(%lu)"), cConnections
);
603 HRESULT hr
= m_IEnumConnections
->Skip(cConnections
);
604 dbgprintf(TEXT("CEnumConnections:: -> %08X"), hr
);
608 virtual HRESULT STDMETHODCALLTYPE
Reset(void)
610 dbgprintf(TEXT("CEnumConnections::Reset()"));
611 HRESULT hr
= m_IEnumConnections
->Reset();
612 dbgprintf(TEXT("CEnumConnections:: -> %08X"), hr
);
616 virtual HRESULT STDMETHODCALLTYPE
Clone(IEnumConnections
** ppEnum
)
618 dbgprintf(TEXT("CEnumConnections::Clone(%p)"), ppEnum
);
619 HRESULT hr
= m_IEnumConnections
->Clone(ppEnum
);
620 dbgprintf(TEXT("CEnumConnections:: -> %08X, pEnum"), hr
, *ppEnum
);
623 *ppEnum
= HookIEnumConnections(*ppEnum
);
629 IConnectionPointContainer
* HookIConnectionPointContainer(IConnectionPointContainer
* p
)
631 return new CConnectionPointContainer(p
);
634 IEnumConnectionPoints
* HookIEnumConnectionPoints(IEnumConnectionPoints
* p
)
636 return new CEnumConnectionPoints(p
);
639 IConnectionPoint
* HookIConnectionPoint(IConnectionPoint
* p
)
641 return new CConnectionPoint(p
);
644 IEnumConnections
* HookIEnumConnections(IEnumConnections
* p
)
646 return new CEnumConnections(p
);
649 class CAdvancedSettings
: public IMsRdpClientAdvancedSettings4
653 IUnknown
* m_IUnknown
;
654 IDispatch
* m_IDispatch
;
655 IMsTscAdvancedSettings
* m_IMsTscAdvancedSettings
;
656 IMsRdpClientAdvancedSettings
* m_IMsRdpClientAdvancedSettings
;
657 IMsRdpClientAdvancedSettings2
* m_IMsRdpClientAdvancedSettings2
;
658 IMsRdpClientAdvancedSettings3
* m_IMsRdpClientAdvancedSettings3
;
659 IMsRdpClientAdvancedSettings4
* m_IMsRdpClientAdvancedSettings4
;
661 IDispatch
* getIDispatch()
667 IMsTscAdvancedSettings
* getIMsTscAdvancedSettings()
669 if(m_IMsTscAdvancedSettings
)
670 return m_IMsTscAdvancedSettings
;
671 else if(m_IMsRdpClientAdvancedSettings
)
672 m_IMsTscAdvancedSettings
= m_IMsRdpClientAdvancedSettings
;
673 else if(m_IMsRdpClientAdvancedSettings2
)
674 m_IMsTscAdvancedSettings
= m_IMsRdpClientAdvancedSettings2
;
675 else if(m_IMsRdpClientAdvancedSettings3
)
676 m_IMsTscAdvancedSettings
= m_IMsRdpClientAdvancedSettings3
;
677 else if(m_IMsRdpClientAdvancedSettings4
)
678 m_IMsTscAdvancedSettings
= m_IMsRdpClientAdvancedSettings4
;
680 if(m_IMsTscAdvancedSettings
)
682 m_IMsTscAdvancedSettings
->AddRef();
683 return m_IMsTscAdvancedSettings
;
686 m_IUnknown
->QueryInterface(&m_IMsTscAdvancedSettings
);
687 return m_IMsTscAdvancedSettings
;
690 IMsRdpClientAdvancedSettings
* getIMsRdpClientAdvancedSettings()
692 if(m_IMsRdpClientAdvancedSettings
)
693 return m_IMsRdpClientAdvancedSettings
;
694 else if(m_IMsRdpClientAdvancedSettings2
)
695 m_IMsRdpClientAdvancedSettings
= m_IMsRdpClientAdvancedSettings2
;
696 else if(m_IMsRdpClientAdvancedSettings3
)
697 m_IMsRdpClientAdvancedSettings
= m_IMsRdpClientAdvancedSettings3
;
698 else if(m_IMsRdpClientAdvancedSettings4
)
699 m_IMsRdpClientAdvancedSettings
= m_IMsRdpClientAdvancedSettings4
;
701 if(m_IMsRdpClientAdvancedSettings
)
703 m_IMsRdpClientAdvancedSettings
->AddRef();
704 return m_IMsRdpClientAdvancedSettings
;
707 m_IUnknown
->QueryInterface(&m_IMsRdpClientAdvancedSettings
);
708 return m_IMsRdpClientAdvancedSettings
;
711 IMsRdpClientAdvancedSettings2
* getIMsRdpClientAdvancedSettings2()
713 if(m_IMsRdpClientAdvancedSettings2
)
714 return m_IMsRdpClientAdvancedSettings2
;
715 else if(m_IMsRdpClientAdvancedSettings3
)
716 m_IMsRdpClientAdvancedSettings2
= m_IMsRdpClientAdvancedSettings3
;
717 else if(m_IMsRdpClientAdvancedSettings4
)
718 m_IMsRdpClientAdvancedSettings2
= m_IMsRdpClientAdvancedSettings4
;
720 if(m_IMsRdpClientAdvancedSettings2
)
722 m_IMsRdpClientAdvancedSettings2
->AddRef();
723 return m_IMsRdpClientAdvancedSettings2
;
726 m_IUnknown
->QueryInterface(&m_IMsRdpClientAdvancedSettings2
);
727 return m_IMsRdpClientAdvancedSettings2
;
730 IMsRdpClientAdvancedSettings3
* getIMsRdpClientAdvancedSettings3()
732 if(m_IMsRdpClientAdvancedSettings3
)
733 return m_IMsRdpClientAdvancedSettings3
;
734 else if(m_IMsRdpClientAdvancedSettings4
)
735 m_IMsRdpClientAdvancedSettings3
= m_IMsRdpClientAdvancedSettings4
;
737 if(m_IMsRdpClientAdvancedSettings3
)
739 m_IMsRdpClientAdvancedSettings3
->AddRef();
740 return m_IMsRdpClientAdvancedSettings3
;
743 m_IUnknown
->QueryInterface(&m_IMsRdpClientAdvancedSettings3
);
744 return m_IMsRdpClientAdvancedSettings3
;
747 IMsRdpClientAdvancedSettings4
* getIMsRdpClientAdvancedSettings4()
749 if(m_IMsRdpClientAdvancedSettings4
)
750 return m_IMsRdpClientAdvancedSettings4
;
752 if(m_IMsRdpClientAdvancedSettings4
)
754 m_IMsRdpClientAdvancedSettings4
->AddRef();
755 return m_IMsRdpClientAdvancedSettings4
;
758 m_IUnknown
->QueryInterface(&m_IMsRdpClientAdvancedSettings4
);
759 return m_IMsRdpClientAdvancedSettings4
;
764 m_IUnknown
->Release();
765 m_IDispatch
->Release();
767 if(m_IMsTscAdvancedSettings
)
768 m_IMsTscAdvancedSettings
->Release();
770 if(m_IMsRdpClientAdvancedSettings
)
771 m_IMsRdpClientAdvancedSettings
->Release();
773 if(m_IMsRdpClientAdvancedSettings2
)
774 m_IMsRdpClientAdvancedSettings2
->Release();
776 if(m_IMsRdpClientAdvancedSettings3
)
777 m_IMsRdpClientAdvancedSettings3
->Release();
779 if(m_IMsRdpClientAdvancedSettings4
)
780 m_IMsRdpClientAdvancedSettings4
->Release();
783 void Init(IMsTscAdvancedSettings
* p
)
785 m_IMsTscAdvancedSettings
= p
;
788 void Init(IMsRdpClientAdvancedSettings
* p
)
790 m_IMsRdpClientAdvancedSettings
= p
;
793 void Init(IMsRdpClientAdvancedSettings2
* p
)
795 m_IMsRdpClientAdvancedSettings2
= p
;
798 void Init(IMsRdpClientAdvancedSettings3
* p
)
800 m_IMsRdpClientAdvancedSettings3
= p
;
803 void Init(IMsRdpClientAdvancedSettings4
* p
)
805 m_IMsRdpClientAdvancedSettings4
= p
;
809 template<class Interface
> CAdvancedSettings(Interface
* p
):
813 m_IMsTscAdvancedSettings(NULL
),
814 m_IMsRdpClientAdvancedSettings(NULL
),
815 m_IMsRdpClientAdvancedSettings2(NULL
),
816 m_IMsRdpClientAdvancedSettings3(NULL
),
817 m_IMsRdpClientAdvancedSettings4(NULL
)
826 virtual HRESULT STDMETHODCALLTYPE
QueryInterface(REFIID riid
, void ** ppvObject
)
831 dbgprintf(TEXT("CAdvancedSettings::QueryInterface(%ls, %p)"), UUIDToString(riid
).c_str(), ppvObject
);
834 if(riid == IID_IUnknown) \
837 pvObject = (IUnknown *)(this); \
841 else if(riid == IID_ ## I) \
850 hr = m_IUnknown->QueryInterface(&m_ ## I); \
854 pvObject = static_cast<I *>(this); \
860 hr = E_NOINTERFACE; \
866 QI(IMsTscAdvancedSettings
)
867 QI(IMsRdpClientAdvancedSettings
)
868 QI(IMsRdpClientAdvancedSettings2
)
869 QI(IMsRdpClientAdvancedSettings3
)
870 QI(IMsRdpClientAdvancedSettings4
)
884 assert(pvObject
== NULL
);
887 *ppvObject
= pvObject
;
889 dbgprintf(TEXT("CAdvancedSettings::QueryInterface -> %08X, ppvObject = %p"), hr
, *ppvObject
);
893 virtual ULONG STDMETHODCALLTYPE
AddRef(void)
895 return InterlockedIncrement(&m_refCount
);
898 virtual ULONG STDMETHODCALLTYPE
Release(void)
900 LONG n
= InterlockedDecrement(&m_refCount
);
911 dbgprintf(TEXT("CAdvancedSettings::()"), );
913 dbgprintf(TEXT("CAdvancedSettings:: -> %08X, "), hr, );
916 virtual STDMETHODIMP
IDispatch::GetTypeInfoCount(UINT
* pctinfo
)
918 IDispatch
* pIDispatch
= getIDispatch();
919 dbgprintf(TEXT("CAdvancedSettings::GetTypeInfoCount(%p)"), pctinfo
);
920 HRESULT hr
= pIDispatch
->GetTypeInfoCount(pctinfo
);
921 dbgprintf(TEXT("CAdvancedSettings::GetTypeInfoCount -> %08X, ctinfo = %u"), hr
, *pctinfo
);
925 virtual STDMETHODIMP
IDispatch::GetTypeInfo(UINT iTInfo
, LCID lcid
, ITypeInfo
** ppTInfo
)
927 IDispatch
* pIDispatch
= getIDispatch();
928 dbgprintf(TEXT("CAdvancedSettings::GetTypeInfo(%u, %lu, %p)"), iTInfo
, lcid
, ppTInfo
);
929 HRESULT hr
= pIDispatch
->GetTypeInfo(iTInfo
, lcid
, ppTInfo
);
930 dbgprintf(TEXT("CAdvancedSettings::GetTypeInfo -> %08X, pTInfo = %p"), hr
, *ppTInfo
);
934 virtual STDMETHODIMP
IDispatch::GetIDsOfNames(REFIID riid
, LPOLESTR
* rgszNames
, UINT cNames
, LCID lcid
, DISPID
* rgDispId
)
936 IDispatch
* pIDispatch
= getIDispatch();
937 dbgprintf(TEXT("CAdvancedSettings::GetIDsOfNames(%ls, %ls, %d, %lu, %p)"), UUIDToString(riid
).c_str(), *rgszNames
, cNames
, lcid
, rgDispId
);
938 HRESULT hr
= pIDispatch
->GetIDsOfNames(riid
, rgszNames
, cNames
, lcid
, rgDispId
);
939 dbgprintf(TEXT("CAdvancedSettings::GetIDsOfNames -> %08X, rgDispId = %ld"), hr
, *rgDispId
);
943 virtual STDMETHODIMP
IDispatch::Invoke(DISPID dispIdMember
, REFIID riid
, LCID lcid
, WORD wFlags
, DISPPARAMS
* pDispParams
, VARIANT
* pVarResult
, EXCEPINFO
* pExcepInfo
, UINT
* puArgErr
)
946 IDispatch
* pIDispatch
= getIDispatch();
947 dbgprintf(TEXT("CAdvancedSettings::Invoke()")/*, */);
948 HRESULT hr
= pIDispatch
->Invoke(dispIdMember
, riid
, lcid
, wFlags
, pDispParams
, pVarResult
, pExcepInfo
, puArgErr
);
949 dbgprintf(TEXT("CAdvancedSettings::Invoke -> %08X, "), hr
/*, */);
953 /* IMsTscAdvancedSettings */
954 virtual STDMETHODIMP
IMsTscAdvancedSettings::put_Compress(long pcompress
)
956 IMsTscAdvancedSettings
* pIMsTscAdvancedSettings
= getIMsTscAdvancedSettings();
957 dbgprintf(TEXT("CAdvancedSettings::put_Compress(%ld)"), pcompress
);
958 HRESULT hr
= pIMsTscAdvancedSettings
->put_Compress(pcompress
);
959 dbgprintf(TEXT("CAdvancedSettings::put_Compress -> %08X"), hr
);
963 virtual STDMETHODIMP
IMsTscAdvancedSettings::get_Compress(long * pcompress
)
965 IMsTscAdvancedSettings
* pIMsTscAdvancedSettings
= getIMsTscAdvancedSettings();
966 dbgprintf(TEXT("CAdvancedSettings::get_Compress(%p)"), pcompress
);
967 HRESULT hr
= pIMsTscAdvancedSettings
->get_Compress(pcompress
);
968 dbgprintf(TEXT("CAdvancedSettings::get_Compress -> %08X, compress = %ld"), hr
, *pcompress
);
972 virtual STDMETHODIMP
IMsTscAdvancedSettings::put_BitmapPeristence(long pbitmapPeristence
)
974 IMsTscAdvancedSettings
* pIMsTscAdvancedSettings
= getIMsTscAdvancedSettings();
975 dbgprintf(TEXT("CAdvancedSettings::put_BitmapPeristence(%ld)"), pbitmapPeristence
);
976 HRESULT hr
= pIMsTscAdvancedSettings
->put_BitmapPeristence(pbitmapPeristence
);
977 dbgprintf(TEXT("CAdvancedSettings::put_BitmapPeristence -> %08X"), hr
);
981 virtual STDMETHODIMP
IMsTscAdvancedSettings::get_BitmapPeristence(long * pbitmapPeristence
)
983 IMsTscAdvancedSettings
* pIMsTscAdvancedSettings
= getIMsTscAdvancedSettings();
984 dbgprintf(TEXT("CAdvancedSettings::get_BitmapPeristence(%p)"), pbitmapPeristence
);
985 HRESULT hr
= pIMsTscAdvancedSettings
->get_BitmapPeristence(pbitmapPeristence
);
986 dbgprintf(TEXT("CAdvancedSettings::get_BitmapPeristence -> %08X, bitmapPeristence = %ld"), hr
, *pbitmapPeristence
);
990 virtual STDMETHODIMP
IMsTscAdvancedSettings::put_allowBackgroundInput(long pallowBackgroundInput
)
992 IMsTscAdvancedSettings
* pIMsTscAdvancedSettings
= getIMsTscAdvancedSettings();
993 dbgprintf(TEXT("CAdvancedSettings::put_allowBackgroundInput(%ld)"), pallowBackgroundInput
);
994 HRESULT hr
= pIMsTscAdvancedSettings
->put_allowBackgroundInput(pallowBackgroundInput
);
995 dbgprintf(TEXT("CAdvancedSettings::put_allowBackgroundInput -> %08X"), hr
);
999 virtual STDMETHODIMP
IMsTscAdvancedSettings::get_allowBackgroundInput(long * pallowBackgroundInput
)
1001 IMsTscAdvancedSettings
* pIMsTscAdvancedSettings
= getIMsTscAdvancedSettings();
1002 dbgprintf(TEXT("CAdvancedSettings::get_allowBackgroundInput(%p)"), pallowBackgroundInput
);
1003 HRESULT hr
= pIMsTscAdvancedSettings
->get_allowBackgroundInput(pallowBackgroundInput
);
1004 dbgprintf(TEXT("CAdvancedSettings::get_allowBackgroundInput -> %08X, allowBackgroundInput = %ld"), hr
, *pallowBackgroundInput
);
1008 virtual STDMETHODIMP
IMsTscAdvancedSettings::put_KeyBoardLayoutStr(BSTR rhs
)
1010 IMsTscAdvancedSettings
* pIMsTscAdvancedSettings
= getIMsTscAdvancedSettings();
1011 dbgprintf(TEXT("CAdvancedSettings::put_KeyBoardLayoutStr(%ls)"), rhs
);
1012 HRESULT hr
= pIMsTscAdvancedSettings
->put_KeyBoardLayoutStr(rhs
);
1013 dbgprintf(TEXT("CAdvancedSettings::put_KeyBoardLayoutStr -> %08X"), hr
);
1017 virtual STDMETHODIMP
IMsTscAdvancedSettings::put_PluginDlls(BSTR rhs
)
1019 IMsTscAdvancedSettings
* pIMsTscAdvancedSettings
= getIMsTscAdvancedSettings();
1020 dbgprintf(TEXT("CAdvancedSettings::put_PluginDlls(%ls)"), rhs
);
1021 HRESULT hr
= pIMsTscAdvancedSettings
->put_PluginDlls(rhs
);
1022 dbgprintf(TEXT("CAdvancedSettings::put_PluginDlls -> %08X"), hr
);
1026 virtual STDMETHODIMP
IMsTscAdvancedSettings::put_IconFile(BSTR rhs
)
1028 IMsTscAdvancedSettings
* pIMsTscAdvancedSettings
= getIMsTscAdvancedSettings();
1029 dbgprintf(TEXT("CAdvancedSettings::put_IconFile(%ls)"), rhs
);
1030 HRESULT hr
= pIMsTscAdvancedSettings
->put_IconFile(rhs
);
1031 dbgprintf(TEXT("CAdvancedSettings::put_IconFile -> %08X"), hr
);
1035 virtual STDMETHODIMP
IMsTscAdvancedSettings::put_IconIndex(long rhs
)
1037 IMsTscAdvancedSettings
* pIMsTscAdvancedSettings
= getIMsTscAdvancedSettings();
1038 dbgprintf(TEXT("CAdvancedSettings::put_IconIndex(%ld)"), rhs
);
1039 HRESULT hr
= pIMsTscAdvancedSettings
->put_IconIndex(rhs
);
1040 dbgprintf(TEXT("CAdvancedSettings::put_IconIndex -> %08X"), hr
);
1044 virtual STDMETHODIMP
IMsTscAdvancedSettings::put_ContainerHandledFullScreen(long pContainerHandledFullScreen
)
1046 IMsTscAdvancedSettings
* pIMsTscAdvancedSettings
= getIMsTscAdvancedSettings();
1047 dbgprintf(TEXT("CAdvancedSettings::put_ContainerHandledFullScreen(%ld)"), pContainerHandledFullScreen
);
1048 HRESULT hr
= pIMsTscAdvancedSettings
->put_ContainerHandledFullScreen(pContainerHandledFullScreen
);
1049 dbgprintf(TEXT("CAdvancedSettings::put_ContainerHandledFullScreen -> %08X"), hr
);
1053 virtual STDMETHODIMP
IMsTscAdvancedSettings::get_ContainerHandledFullScreen(long * pContainerHandledFullScreen
)
1055 IMsTscAdvancedSettings
* pIMsTscAdvancedSettings
= getIMsTscAdvancedSettings();
1056 dbgprintf(TEXT("CAdvancedSettings::get_ContainerHandledFullScreen(%p)"), pContainerHandledFullScreen
);
1057 HRESULT hr
= pIMsTscAdvancedSettings
->get_ContainerHandledFullScreen(pContainerHandledFullScreen
);
1058 dbgprintf(TEXT("CAdvancedSettings::get_ContainerHandledFullScreen -> %08X, ContainerHandledFullScreen = %ld"), hr
, *pContainerHandledFullScreen
);
1062 virtual STDMETHODIMP
IMsTscAdvancedSettings::put_DisableRdpdr(long pDisableRdpdr
)
1064 IMsTscAdvancedSettings
* pIMsTscAdvancedSettings
= getIMsTscAdvancedSettings();
1065 dbgprintf(TEXT("CAdvancedSettings::put_DisableRdpdr(%ld)"), pDisableRdpdr
);
1066 HRESULT hr
= pIMsTscAdvancedSettings
->put_DisableRdpdr(pDisableRdpdr
);
1067 dbgprintf(TEXT("CAdvancedSettings::put_DisableRdpdr -> %08X"), hr
);
1071 virtual STDMETHODIMP
IMsTscAdvancedSettings::get_DisableRdpdr(long * pDisableRdpdr
)
1073 IMsTscAdvancedSettings
* pIMsTscAdvancedSettings
= getIMsTscAdvancedSettings();
1074 dbgprintf(TEXT("CAdvancedSettings::get_DisableRdpdr(%p)"), pDisableRdpdr
);
1075 HRESULT hr
= pIMsTscAdvancedSettings
->get_DisableRdpdr(pDisableRdpdr
);
1076 dbgprintf(TEXT("CAdvancedSettings::get_DisableRdpdr -> %08X, DisableRdpdr = %ld"), hr
, *pDisableRdpdr
);
1080 /* IMsRdpClientAdvancedSettings */
1081 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_SmoothScroll(long psmoothScroll
)
1083 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1084 dbgprintf(TEXT("CAdvancedSettings::put_SmoothScroll(%ld)"), psmoothScroll
);
1085 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_SmoothScroll(psmoothScroll
);
1086 dbgprintf(TEXT("CAdvancedSettings::put_SmoothScroll -> %08X"), hr
);
1090 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_SmoothScroll(long * psmoothScroll
)
1092 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1093 dbgprintf(TEXT("CAdvancedSettings::get_SmoothScroll(%p)"), psmoothScroll
);
1094 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_SmoothScroll(psmoothScroll
);
1095 dbgprintf(TEXT("CAdvancedSettings::get_SmoothScroll -> %08X, smoothScroll = %ld"), hr
, *psmoothScroll
);
1099 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_AcceleratorPassthrough(long pacceleratorPassthrough
)
1101 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1102 dbgprintf(TEXT("CAdvancedSettings::put_AcceleratorPassthrough(%ld)"), pacceleratorPassthrough
);
1103 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_AcceleratorPassthrough(pacceleratorPassthrough
);
1104 dbgprintf(TEXT("CAdvancedSettings::put_AcceleratorPassthrough -> %08X"), hr
);
1108 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_AcceleratorPassthrough(long * pacceleratorPassthrough
)
1110 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1111 dbgprintf(TEXT("CAdvancedSettings::get_AcceleratorPassthrough(%p)"), pacceleratorPassthrough
);
1112 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_AcceleratorPassthrough(pacceleratorPassthrough
);
1113 dbgprintf(TEXT("CAdvancedSettings::get_AcceleratorPassthrough -> %08X, acceleratorPassthrough = %ld"), hr
, *pacceleratorPassthrough
);
1117 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_ShadowBitmap(long pshadowBitmap
)
1119 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1120 dbgprintf(TEXT("CAdvancedSettings::put_ShadowBitmap(%ld)"), pshadowBitmap
);
1121 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_ShadowBitmap(pshadowBitmap
);
1122 dbgprintf(TEXT("CAdvancedSettings::put_ShadowBitmap -> %08X"), hr
);
1126 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_ShadowBitmap(long * pshadowBitmap
)
1128 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1129 dbgprintf(TEXT("CAdvancedSettings::get_ShadowBitmap(%p)"), pshadowBitmap
);
1130 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_ShadowBitmap(pshadowBitmap
);
1131 dbgprintf(TEXT("CAdvancedSettings::get_ShadowBitmap -> %08X, shadowBitmap = %ld"), hr
, *pshadowBitmap
);
1135 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_TransportType(long ptransportType
)
1137 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1138 dbgprintf(TEXT("CAdvancedSettings::put_TransportType(%ld)"), ptransportType
);
1139 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_TransportType(ptransportType
);
1140 dbgprintf(TEXT("CAdvancedSettings::put_TransportType -> %08X"), hr
);
1144 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_TransportType(long * ptransportType
)
1146 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1147 dbgprintf(TEXT("CAdvancedSettings::get_TransportType(%p)"), ptransportType
);
1148 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_TransportType(ptransportType
);
1149 dbgprintf(TEXT("CAdvancedSettings::get_TransportType -> %08X, transportType = %ld"), hr
, *ptransportType
);
1153 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_SasSequence(long psasSequence
)
1155 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1156 dbgprintf(TEXT("CAdvancedSettings::put_SasSequence(%ld)"), psasSequence
);
1157 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_SasSequence(psasSequence
);
1158 dbgprintf(TEXT("CAdvancedSettings::put_SasSequence -> %08X"), hr
);
1162 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_SasSequence(long * psasSequence
)
1164 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1165 dbgprintf(TEXT("CAdvancedSettings::get_SasSequence(%p)"), psasSequence
);
1166 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_SasSequence(psasSequence
);
1167 dbgprintf(TEXT("CAdvancedSettings::get_SasSequence -> %08X, sasSequence = %ld"), hr
, *psasSequence
);
1171 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_EncryptionEnabled(long pencryptionEnabled
)
1173 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1174 dbgprintf(TEXT("CAdvancedSettings::put_EncryptionEnabled(%ld)"), pencryptionEnabled
);
1175 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_EncryptionEnabled(pencryptionEnabled
);
1176 dbgprintf(TEXT("CAdvancedSettings::put_EncryptionEnabled -> %08X"), hr
);
1180 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_EncryptionEnabled(long * pencryptionEnabled
)
1182 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1183 dbgprintf(TEXT("CAdvancedSettings::get_EncryptionEnabled(%p)"), pencryptionEnabled
);
1184 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_EncryptionEnabled(pencryptionEnabled
);
1185 dbgprintf(TEXT("CAdvancedSettings::get_EncryptionEnabled -> %08X, encryptionEnabled = %ld"), hr
, *pencryptionEnabled
);
1189 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_DedicatedTerminal(long pdedicatedTerminal
)
1191 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1192 dbgprintf(TEXT("CAdvancedSettings::put_DedicatedTerminal(%ld)"), pdedicatedTerminal
);
1193 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_DedicatedTerminal(pdedicatedTerminal
);
1194 dbgprintf(TEXT("CAdvancedSettings::put_DedicatedTerminal -> %08X"), hr
);
1198 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_DedicatedTerminal(long * pdedicatedTerminal
)
1200 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1201 dbgprintf(TEXT("CAdvancedSettings::get_DedicatedTerminal(%p)"), pdedicatedTerminal
);
1202 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_DedicatedTerminal(pdedicatedTerminal
);
1203 dbgprintf(TEXT("CAdvancedSettings::get_DedicatedTerminal -> %08X, dedicatedTerminal = %ld"), hr
, *pdedicatedTerminal
);
1207 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_RDPPort(long prdpPort
)
1209 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1210 dbgprintf(TEXT("CAdvancedSettings::put_RDPPort(%ld)"), prdpPort
);
1211 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_RDPPort(prdpPort
);
1212 dbgprintf(TEXT("CAdvancedSettings::put_RDPPort -> %08X"), hr
);
1216 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_RDPPort(long * prdpPort
)
1218 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1219 dbgprintf(TEXT("CAdvancedSettings::get_RDPPort(%p)"), prdpPort
);
1220 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_RDPPort(prdpPort
);
1221 dbgprintf(TEXT("CAdvancedSettings::get_RDPPort -> %08X, rdpPort = %ld"), hr
, *prdpPort
);
1225 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_EnableMouse(long penableMouse
)
1227 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1228 dbgprintf(TEXT("CAdvancedSettings::put_EnableMouse(%ld)"), penableMouse
);
1229 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_EnableMouse(penableMouse
);
1230 dbgprintf(TEXT("CAdvancedSettings::put_EnableMouse -> %08X"), hr
);
1234 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_EnableMouse(long * penableMouse
)
1236 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1237 dbgprintf(TEXT("CAdvancedSettings::get_EnableMouse(%p)"), penableMouse
);
1238 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_EnableMouse(penableMouse
);
1239 dbgprintf(TEXT("CAdvancedSettings::get_EnableMouse -> %08X, enableMouse = %ld"), hr
, *penableMouse
);
1243 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_DisableCtrlAltDel(long pdisableCtrlAltDel
)
1245 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1246 dbgprintf(TEXT("CAdvancedSettings::put_DisableCtrlAltDel(%ld)"), pdisableCtrlAltDel
);
1247 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_DisableCtrlAltDel(pdisableCtrlAltDel
);
1248 dbgprintf(TEXT("CAdvancedSettings::put_DisableCtrlAltDel -> %08X"), hr
);
1252 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_DisableCtrlAltDel(long * pdisableCtrlAltDel
)
1254 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1255 dbgprintf(TEXT("CAdvancedSettings::get_DisableCtrlAltDel(%p)"), pdisableCtrlAltDel
);
1256 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_DisableCtrlAltDel(pdisableCtrlAltDel
);
1257 dbgprintf(TEXT("CAdvancedSettings::get_DisableCtrlAltDel -> %08X, disableCtrlAltDel = %ld"), hr
, *pdisableCtrlAltDel
);
1261 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_EnableWindowsKey(long penableWindowsKey
)
1263 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1264 dbgprintf(TEXT("CAdvancedSettings::put_EnableWindowsKey(%ld)"), penableWindowsKey
);
1265 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_EnableWindowsKey(penableWindowsKey
);
1266 dbgprintf(TEXT("CAdvancedSettings::put_EnableWindowsKey -> %08X"), hr
);
1270 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_EnableWindowsKey(long * penableWindowsKey
)
1272 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1273 dbgprintf(TEXT("CAdvancedSettings::get_EnableWindowsKey(%p)"), penableWindowsKey
);
1274 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_EnableWindowsKey(penableWindowsKey
);
1275 dbgprintf(TEXT("CAdvancedSettings::get_EnableWindowsKey -> %08X, enableWindowsKey = %ld"), hr
, *penableWindowsKey
);
1279 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_DoubleClickDetect(long pdoubleClickDetect
)
1281 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1282 dbgprintf(TEXT("CAdvancedSettings::put_DoubleClickDetect(%ld)"), pdoubleClickDetect
);
1283 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_DoubleClickDetect(pdoubleClickDetect
);
1284 dbgprintf(TEXT("CAdvancedSettings::put_DoubleClickDetect -> %08X"), hr
);
1288 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_DoubleClickDetect(long * pdoubleClickDetect
)
1290 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1291 dbgprintf(TEXT("CAdvancedSettings::get_DoubleClickDetect(%p)"), pdoubleClickDetect
);
1292 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_DoubleClickDetect(pdoubleClickDetect
);
1293 dbgprintf(TEXT("CAdvancedSettings::get_DoubleClickDetect -> %08X, doubleClickDetect = %ld"), hr
, *pdoubleClickDetect
);
1297 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_MaximizeShell(long pmaximizeShell
)
1299 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1300 dbgprintf(TEXT("CAdvancedSettings::put_MaximizeShell(%ld)"), pmaximizeShell
);
1301 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_MaximizeShell(pmaximizeShell
);
1302 dbgprintf(TEXT("CAdvancedSettings::put_MaximizeShell -> %08X"), hr
);
1306 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_MaximizeShell(long * pmaximizeShell
)
1308 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1309 dbgprintf(TEXT("CAdvancedSettings::get_MaximizeShell(%p)"), pmaximizeShell
);
1310 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_MaximizeShell(pmaximizeShell
);
1311 dbgprintf(TEXT("CAdvancedSettings::get_MaximizeShell -> %08X, maximizeShell = %ld"), hr
, *pmaximizeShell
);
1315 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_HotKeyFullScreen(long photKeyFullScreen
)
1317 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1318 dbgprintf(TEXT("CAdvancedSettings::put_HotKeyFullScreen(%ld)"), photKeyFullScreen
);
1319 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_HotKeyFullScreen(photKeyFullScreen
);
1320 dbgprintf(TEXT("CAdvancedSettings::put_HotKeyFullScreen -> %08X"), hr
);
1324 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_HotKeyFullScreen(long * photKeyFullScreen
)
1326 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1327 dbgprintf(TEXT("CAdvancedSettings::get_HotKeyFullScreen(%p)"), photKeyFullScreen
);
1328 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_HotKeyFullScreen(photKeyFullScreen
);
1329 dbgprintf(TEXT("CAdvancedSettings::get_HotKeyFullScreen -> %08X, hotKeyFullScreen = %ld"), hr
, *photKeyFullScreen
);
1333 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_HotKeyCtrlEsc(long photKeyCtrlEsc
)
1335 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1336 dbgprintf(TEXT("CAdvancedSettings::put_HotKeyCtrlEsc(%ld)"), photKeyCtrlEsc
);
1337 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_HotKeyCtrlEsc(photKeyCtrlEsc
);
1338 dbgprintf(TEXT("CAdvancedSettings::put_HotKeyCtrlEsc -> %08X"), hr
);
1342 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_HotKeyCtrlEsc(long * photKeyCtrlEsc
)
1344 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1345 dbgprintf(TEXT("CAdvancedSettings::get_HotKeyCtrlEsc(%p)"), photKeyCtrlEsc
);
1346 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_HotKeyCtrlEsc(photKeyCtrlEsc
);
1347 dbgprintf(TEXT("CAdvancedSettings::get_HotKeyCtrlEsc -> %08X, hotKeyCtrlEsc = %ld"), hr
, *photKeyCtrlEsc
);
1351 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_HotKeyAltEsc(long photKeyAltEsc
)
1353 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1354 dbgprintf(TEXT("CAdvancedSettings::put_HotKeyAltEsc(%ld)"), photKeyAltEsc
);
1355 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_HotKeyAltEsc(photKeyAltEsc
);
1356 dbgprintf(TEXT("CAdvancedSettings::put_HotKeyAltEsc -> %08X"), hr
);
1360 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_HotKeyAltEsc(long * photKeyAltEsc
)
1362 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1363 dbgprintf(TEXT("CAdvancedSettings::get_HotKeyAltEsc(%p)"), photKeyAltEsc
);
1364 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_HotKeyAltEsc(photKeyAltEsc
);
1365 dbgprintf(TEXT("CAdvancedSettings::get_HotKeyAltEsc -> %08X, hotKeyAltEsc = %ld"), hr
, *photKeyAltEsc
);
1369 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_HotKeyAltTab(long photKeyAltTab
)
1371 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1372 dbgprintf(TEXT("CAdvancedSettings::put_HotKeyAltTab(%ld)"), photKeyAltTab
);
1373 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_HotKeyAltTab(photKeyAltTab
);
1374 dbgprintf(TEXT("CAdvancedSettings::put_HotKeyAltTab -> %08X"), hr
);
1378 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_HotKeyAltTab(long * photKeyAltTab
)
1380 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1381 dbgprintf(TEXT("CAdvancedSettings::get_HotKeyAltTab(%p)"), photKeyAltTab
);
1382 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_HotKeyAltTab(photKeyAltTab
);
1383 dbgprintf(TEXT("CAdvancedSettings::get_HotKeyAltTab -> %08X, hotKeyAltTab = %ld"), hr
, *photKeyAltTab
);
1387 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_HotKeyAltShiftTab(long photKeyAltShiftTab
)
1389 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1390 dbgprintf(TEXT("CAdvancedSettings::put_HotKeyAltShiftTab(%ld)"), photKeyAltShiftTab
);
1391 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_HotKeyAltShiftTab(photKeyAltShiftTab
);
1392 dbgprintf(TEXT("CAdvancedSettings::put_HotKeyAltShiftTab -> %08X"), hr
);
1396 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_HotKeyAltShiftTab(long * photKeyAltShiftTab
)
1398 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1399 dbgprintf(TEXT("CAdvancedSettings::get_HotKeyAltShiftTab(%p)"), photKeyAltShiftTab
);
1400 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_HotKeyAltShiftTab(photKeyAltShiftTab
);
1401 dbgprintf(TEXT("CAdvancedSettings::get_HotKeyAltShiftTab -> %08X, hotKeyAltShiftTab = %ld"), hr
, *photKeyAltShiftTab
);
1405 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_HotKeyAltSpace(long photKeyAltSpace
)
1407 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1408 dbgprintf(TEXT("CAdvancedSettings::put_HotKeyAltSpace(%ld)"), photKeyAltSpace
);
1409 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_HotKeyAltSpace(photKeyAltSpace
);
1410 dbgprintf(TEXT("CAdvancedSettings::put_HotKeyAltSpace -> %08X"), hr
);
1414 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_HotKeyAltSpace(long * photKeyAltSpace
)
1416 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1417 dbgprintf(TEXT("CAdvancedSettings::get_HotKeyAltSpace(%p)"), photKeyAltSpace
);
1418 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_HotKeyAltSpace(photKeyAltSpace
);
1419 dbgprintf(TEXT("CAdvancedSettings::get_HotKeyAltSpace -> %08X, hotKeyAltSpace = %ld"), hr
, *photKeyAltSpace
);
1423 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_HotKeyCtrlAltDel(long photKeyCtrlAltDel
)
1425 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1426 dbgprintf(TEXT("CAdvancedSettings::put_HotKeyCtrlAltDel(%ld)"), photKeyCtrlAltDel
);
1427 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_HotKeyCtrlAltDel(photKeyCtrlAltDel
);
1428 dbgprintf(TEXT("CAdvancedSettings::put_HotKeyCtrlAltDel -> %08X"), hr
);
1432 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_HotKeyCtrlAltDel(long * photKeyCtrlAltDel
)
1434 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1435 dbgprintf(TEXT("CAdvancedSettings::get_HotKeyCtrlAltDel(%p)"), photKeyCtrlAltDel
);
1436 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_HotKeyCtrlAltDel(photKeyCtrlAltDel
);
1437 dbgprintf(TEXT("CAdvancedSettings::get_HotKeyCtrlAltDel -> %08X, hotKeyCtrlAltDel = %ld"), hr
, *photKeyCtrlAltDel
);
1441 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_orderDrawThreshold(long porderDrawThreshold
)
1443 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1444 dbgprintf(TEXT("CAdvancedSettings::put_orderDrawThreshold(%ld)"), porderDrawThreshold
);
1445 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_orderDrawThreshold(porderDrawThreshold
);
1446 dbgprintf(TEXT("CAdvancedSettings::put_orderDrawThreshold -> %08X"), hr
);
1450 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_orderDrawThreshold(long * porderDrawThreshold
)
1452 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1453 dbgprintf(TEXT("CAdvancedSettings::get_orderDrawThreshold(%p)"), porderDrawThreshold
);
1454 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_orderDrawThreshold(porderDrawThreshold
);
1455 dbgprintf(TEXT("CAdvancedSettings::get_orderDrawThreshold -> %08X, orderDrawThreshold = %ld"), hr
, *porderDrawThreshold
);
1459 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_BitmapCacheSize(long pbitmapCacheSize
)
1461 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1462 dbgprintf(TEXT("CAdvancedSettings::put_BitmapCacheSize(%ld)"), pbitmapCacheSize
);
1463 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_BitmapCacheSize(pbitmapCacheSize
);
1464 dbgprintf(TEXT("CAdvancedSettings::put_BitmapCacheSize -> %08X"), hr
);
1468 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_BitmapCacheSize(long * pbitmapCacheSize
)
1470 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1471 dbgprintf(TEXT("CAdvancedSettings::get_BitmapCacheSize(%p)"), pbitmapCacheSize
);
1472 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_BitmapCacheSize(pbitmapCacheSize
);
1473 dbgprintf(TEXT("CAdvancedSettings::get_BitmapCacheSize -> %08X, bitmapCacheSize = %ld"), hr
, *pbitmapCacheSize
);
1477 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_BitmapVirtualCacheSize(long pbitmapVirtualCacheSize
)
1479 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1480 dbgprintf(TEXT("CAdvancedSettings::put_BitmapVirtualCacheSize(%ld)"), pbitmapVirtualCacheSize
);
1481 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_BitmapVirtualCacheSize(pbitmapVirtualCacheSize
);
1482 dbgprintf(TEXT("CAdvancedSettings::put_BitmapVirtualCacheSize -> %08X"), hr
);
1486 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_BitmapVirtualCacheSize(long * pbitmapVirtualCacheSize
)
1488 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1489 dbgprintf(TEXT("CAdvancedSettings::get_BitmapVirtualCacheSize(%p)"), pbitmapVirtualCacheSize
);
1490 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_BitmapVirtualCacheSize(pbitmapVirtualCacheSize
);
1491 dbgprintf(TEXT("CAdvancedSettings::get_BitmapVirtualCacheSize -> %08X, bitmapVirtualCacheSize = %ld"), hr
, *pbitmapVirtualCacheSize
);
1495 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_ScaleBitmapCachesByBPP(long pbScale
)
1497 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1498 dbgprintf(TEXT("CAdvancedSettings::put_ScaleBitmapCachesByBPP(%ld)"), pbScale
);
1499 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_ScaleBitmapCachesByBPP(pbScale
);
1500 dbgprintf(TEXT("CAdvancedSettings::put_ScaleBitmapCachesByBPP -> %08X"), hr
);
1504 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_ScaleBitmapCachesByBPP(long * pbScale
)
1506 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1507 dbgprintf(TEXT("CAdvancedSettings::get_ScaleBitmapCachesByBPP(%p)"), pbScale
);
1508 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_ScaleBitmapCachesByBPP(pbScale
);
1509 dbgprintf(TEXT("CAdvancedSettings::get_ScaleBitmapCachesByBPP -> %08X, bScale = %ld"), hr
, *pbScale
);
1513 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_NumBitmapCaches(long pnumBitmapCaches
)
1515 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1516 dbgprintf(TEXT("CAdvancedSettings::put_NumBitmapCaches(%ld)"), pnumBitmapCaches
);
1517 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_NumBitmapCaches(pnumBitmapCaches
);
1518 dbgprintf(TEXT("CAdvancedSettings::put_NumBitmapCaches -> %08X"), hr
);
1522 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_NumBitmapCaches(long * pnumBitmapCaches
)
1524 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1525 dbgprintf(TEXT("CAdvancedSettings::get_NumBitmapCaches(%p)"), pnumBitmapCaches
);
1526 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_NumBitmapCaches(pnumBitmapCaches
);
1527 dbgprintf(TEXT("CAdvancedSettings::get_NumBitmapCaches -> %08X, numBitmapCaches = %ld"), hr
, *pnumBitmapCaches
);
1531 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_CachePersistenceActive(long pcachePersistenceActive
)
1533 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1534 dbgprintf(TEXT("CAdvancedSettings::put_CachePersistenceActive(%ld)"), pcachePersistenceActive
);
1535 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_CachePersistenceActive(pcachePersistenceActive
);
1536 dbgprintf(TEXT("CAdvancedSettings::put_CachePersistenceActive -> %08X"), hr
);
1540 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_CachePersistenceActive(long * pcachePersistenceActive
)
1542 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1543 dbgprintf(TEXT("CAdvancedSettings::get_CachePersistenceActive(%p)"), pcachePersistenceActive
);
1544 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_CachePersistenceActive(pcachePersistenceActive
);
1545 dbgprintf(TEXT("CAdvancedSettings::get_CachePersistenceActive -> %08X, cachePersistenceActive = %ld"), hr
, *pcachePersistenceActive
);
1549 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_PersistCacheDirectory(BSTR rhs
)
1551 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1552 dbgprintf(TEXT("CAdvancedSettings::put_PersistCacheDirectory(%ls)"), rhs
);
1553 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_PersistCacheDirectory(rhs
);
1554 dbgprintf(TEXT("CAdvancedSettings::put_PersistCacheDirectory -> %08X"), hr
);
1558 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_brushSupportLevel(long pbrushSupportLevel
)
1560 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1561 dbgprintf(TEXT("CAdvancedSettings::put_brushSupportLevel(%ld)"), pbrushSupportLevel
);
1562 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_brushSupportLevel(pbrushSupportLevel
);
1563 dbgprintf(TEXT("CAdvancedSettings::put_brushSupportLevel -> %08X"), hr
);
1567 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_brushSupportLevel(long * pbrushSupportLevel
)
1569 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1570 dbgprintf(TEXT("CAdvancedSettings::get_brushSupportLevel(%p)"), pbrushSupportLevel
);
1571 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_brushSupportLevel(pbrushSupportLevel
);
1572 dbgprintf(TEXT("CAdvancedSettings::get_brushSupportLevel -> %08X, brushSupportLevel = %ld"), hr
, *pbrushSupportLevel
);
1576 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_minInputSendInterval(long pminInputSendInterval
)
1578 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1579 dbgprintf(TEXT("CAdvancedSettings::put_minInputSendInterval(%ld)"), pminInputSendInterval
);
1580 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_minInputSendInterval(pminInputSendInterval
);
1581 dbgprintf(TEXT("CAdvancedSettings::put_minInputSendInterval -> %08X"), hr
);
1585 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_minInputSendInterval(long * pminInputSendInterval
)
1587 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1588 dbgprintf(TEXT("CAdvancedSettings::get_minInputSendInterval(%p)"), pminInputSendInterval
);
1589 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_minInputSendInterval(pminInputSendInterval
);
1590 dbgprintf(TEXT("CAdvancedSettings::get_minInputSendInterval -> %08X, minInputSendInterval = %ld"), hr
, *pminInputSendInterval
);
1594 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_InputEventsAtOnce(long pinputEventsAtOnce
)
1596 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1597 dbgprintf(TEXT("CAdvancedSettings::put_InputEventsAtOnce(%ld)"), pinputEventsAtOnce
);
1598 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_InputEventsAtOnce(pinputEventsAtOnce
);
1599 dbgprintf(TEXT("CAdvancedSettings::put_InputEventsAtOnce -> %08X"), hr
);
1603 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_InputEventsAtOnce(long * pinputEventsAtOnce
)
1605 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1606 dbgprintf(TEXT("CAdvancedSettings::get_InputEventsAtOnce(%p)"), pinputEventsAtOnce
);
1607 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_InputEventsAtOnce(pinputEventsAtOnce
);
1608 dbgprintf(TEXT("CAdvancedSettings::get_InputEventsAtOnce -> %08X, inputEventsAtOnce = %ld"), hr
, *pinputEventsAtOnce
);
1612 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_maxEventCount(long pmaxEventCount
)
1614 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1615 dbgprintf(TEXT("CAdvancedSettings::put_maxEventCount(%ld)"), pmaxEventCount
);
1616 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_maxEventCount(pmaxEventCount
);
1617 dbgprintf(TEXT("CAdvancedSettings::put_maxEventCount -> %08X"), hr
);
1621 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_maxEventCount(long * pmaxEventCount
)
1623 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1624 dbgprintf(TEXT("CAdvancedSettings::get_maxEventCount(%p)"), pmaxEventCount
);
1625 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_maxEventCount(pmaxEventCount
);
1626 dbgprintf(TEXT("CAdvancedSettings::get_maxEventCount -> %08X, maxEventCount = %ld"), hr
, *pmaxEventCount
);
1630 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_keepAliveInterval(long pkeepAliveInterval
)
1632 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1633 dbgprintf(TEXT("CAdvancedSettings::put_keepAliveInterval(%ld)"), pkeepAliveInterval
);
1634 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_keepAliveInterval(pkeepAliveInterval
);
1635 dbgprintf(TEXT("CAdvancedSettings::put_keepAliveInterval -> %08X"), hr
);
1639 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_keepAliveInterval(long * pkeepAliveInterval
)
1641 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1642 dbgprintf(TEXT("CAdvancedSettings::get_keepAliveInterval(%p)"), pkeepAliveInterval
);
1643 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_keepAliveInterval(pkeepAliveInterval
);
1644 dbgprintf(TEXT("CAdvancedSettings::get_keepAliveInterval -> %08X, keepAliveInterval = %ld"), hr
, *pkeepAliveInterval
);
1648 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_shutdownTimeout(long pshutdownTimeout
)
1650 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1651 dbgprintf(TEXT("CAdvancedSettings::put_shutdownTimeout(%ld)"), pshutdownTimeout
);
1652 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_shutdownTimeout(pshutdownTimeout
);
1653 dbgprintf(TEXT("CAdvancedSettings::put_shutdownTimeout -> %08X"), hr
);
1657 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_shutdownTimeout(long * pshutdownTimeout
)
1659 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1660 dbgprintf(TEXT("CAdvancedSettings::get_shutdownTimeout(%p)"), pshutdownTimeout
);
1661 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_shutdownTimeout(pshutdownTimeout
);
1662 dbgprintf(TEXT("CAdvancedSettings::get_shutdownTimeout -> %08X, shutdownTimeout = %ld"), hr
, *pshutdownTimeout
);
1666 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_overallConnectionTimeout(long poverallConnectionTimeout
)
1668 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1669 dbgprintf(TEXT("CAdvancedSettings::put_overallConnectionTimeout(%ld)"), poverallConnectionTimeout
);
1670 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_overallConnectionTimeout(poverallConnectionTimeout
);
1671 dbgprintf(TEXT("CAdvancedSettings::put_overallConnectionTimeout -> %08X"), hr
);
1675 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_overallConnectionTimeout(long * poverallConnectionTimeout
)
1677 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1678 dbgprintf(TEXT("CAdvancedSettings::get_overallConnectionTimeout(%p)"), poverallConnectionTimeout
);
1679 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_overallConnectionTimeout(poverallConnectionTimeout
);
1680 dbgprintf(TEXT("CAdvancedSettings::get_overallConnectionTimeout -> %08X, overallConnectionTimeout = %ld"), hr
, *poverallConnectionTimeout
);
1684 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_singleConnectionTimeout(long psingleConnectionTimeout
)
1686 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1687 dbgprintf(TEXT("CAdvancedSettings::put_singleConnectionTimeout(%ld)"), psingleConnectionTimeout
);
1688 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_singleConnectionTimeout(psingleConnectionTimeout
);
1689 dbgprintf(TEXT("CAdvancedSettings::put_singleConnectionTimeout -> %08X"), hr
);
1693 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_singleConnectionTimeout(long * psingleConnectionTimeout
)
1695 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1696 dbgprintf(TEXT("CAdvancedSettings::get_singleConnectionTimeout(%p)"), psingleConnectionTimeout
);
1697 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_singleConnectionTimeout(psingleConnectionTimeout
);
1698 dbgprintf(TEXT("CAdvancedSettings::get_singleConnectionTimeout -> %08X, singleConnectionTimeout = %ld"), hr
, *psingleConnectionTimeout
);
1702 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_KeyboardType(long pkeyboardType
)
1704 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1705 dbgprintf(TEXT("CAdvancedSettings::put_KeyboardType(%ld)"), pkeyboardType
);
1706 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_KeyboardType(pkeyboardType
);
1707 dbgprintf(TEXT("CAdvancedSettings::put_KeyboardType -> %08X"), hr
);
1711 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_KeyboardType(long * pkeyboardType
)
1713 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1714 dbgprintf(TEXT("CAdvancedSettings::get_KeyboardType(%p)"), pkeyboardType
);
1715 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_KeyboardType(pkeyboardType
);
1716 dbgprintf(TEXT("CAdvancedSettings::get_KeyboardType -> %08X, keyboardType = %ld"), hr
, *pkeyboardType
);
1720 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_KeyboardSubType(long pkeyboardSubType
)
1722 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1723 dbgprintf(TEXT("CAdvancedSettings::put_KeyboardSubType(%ld)"), pkeyboardSubType
);
1724 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_KeyboardSubType(pkeyboardSubType
);
1725 dbgprintf(TEXT("CAdvancedSettings::put_KeyboardSubType -> %08X"), hr
);
1729 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_KeyboardSubType(long * pkeyboardSubType
)
1731 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1732 dbgprintf(TEXT("CAdvancedSettings::get_KeyboardSubType(%p)"), pkeyboardSubType
);
1733 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_KeyboardSubType(pkeyboardSubType
);
1734 dbgprintf(TEXT("CAdvancedSettings::get_KeyboardSubType -> %08X, keyboardSubType = %ld"), hr
, *pkeyboardSubType
);
1738 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_KeyboardFunctionKey(long pkeyboardFunctionKey
)
1740 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1741 dbgprintf(TEXT("CAdvancedSettings::put_KeyboardFunctionKey(%ld)"), pkeyboardFunctionKey
);
1742 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_KeyboardFunctionKey(pkeyboardFunctionKey
);
1743 dbgprintf(TEXT("CAdvancedSettings::put_KeyboardFunctionKey -> %08X"), hr
);
1747 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_KeyboardFunctionKey(long * pkeyboardFunctionKey
)
1749 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1750 dbgprintf(TEXT("CAdvancedSettings::get_KeyboardFunctionKey(%p)"), pkeyboardFunctionKey
);
1751 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_KeyboardFunctionKey(pkeyboardFunctionKey
);
1752 dbgprintf(TEXT("CAdvancedSettings::get_KeyboardFunctionKey -> %08X, keyboardFunctionKey = %ld"), hr
, *pkeyboardFunctionKey
);
1756 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_WinceFixedPalette(long pwinceFixedPalette
)
1758 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1759 dbgprintf(TEXT("CAdvancedSettings::put_WinceFixedPalette(%ld)"), pwinceFixedPalette
);
1760 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_WinceFixedPalette(pwinceFixedPalette
);
1761 dbgprintf(TEXT("CAdvancedSettings::put_WinceFixedPalette -> %08X"), hr
);
1765 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_WinceFixedPalette(long * pwinceFixedPalette
)
1767 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1768 dbgprintf(TEXT("CAdvancedSettings::get_WinceFixedPalette(%p)"), pwinceFixedPalette
);
1769 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_WinceFixedPalette(pwinceFixedPalette
);
1770 dbgprintf(TEXT("CAdvancedSettings::get_WinceFixedPalette -> %08X, winceFixedPalette = %ld"), hr
, *pwinceFixedPalette
);
1774 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_ConnectToServerConsole(VARIANT_BOOL pConnectToConsole
)
1776 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1777 dbgprintf(TEXT("CAdvancedSettings::put_ConnectToServerConsole(%s)"), BooleanToString(pConnectToConsole
));
1778 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_ConnectToServerConsole(pConnectToConsole
);
1779 dbgprintf(TEXT("CAdvancedSettings::put_ConnectToServerConsole -> %08X"), hr
);
1783 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_ConnectToServerConsole(VARIANT_BOOL
* pConnectToConsole
)
1785 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1786 dbgprintf(TEXT("CAdvancedSettings::get_ConnectToServerConsole(%p)"), pConnectToConsole
);
1787 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_ConnectToServerConsole(pConnectToConsole
);
1788 dbgprintf(TEXT("CAdvancedSettings::get_ConnectToServerConsole -> %08X, ConnectToConsole = %s"), hr
, BooleanToString(*pConnectToConsole
));
1792 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_BitmapPersistence(long pbitmapPersistence
)
1794 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1795 dbgprintf(TEXT("CAdvancedSettings::put_BitmapPersistence(%ld)"), pbitmapPersistence
);
1796 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_BitmapPersistence(pbitmapPersistence
);
1797 dbgprintf(TEXT("CAdvancedSettings::put_BitmapPersistence -> %08X"), hr
);
1801 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_BitmapPersistence(long * pbitmapPersistence
)
1803 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1804 dbgprintf(TEXT("CAdvancedSettings::get_BitmapPersistence(%p)"), pbitmapPersistence
);
1805 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_BitmapPersistence(pbitmapPersistence
);
1806 dbgprintf(TEXT("CAdvancedSettings::get_BitmapPersistence -> %08X, bitmapPersistence = %ld"), hr
, *pbitmapPersistence
);
1810 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_MinutesToIdleTimeout(long pminutesToIdleTimeout
)
1812 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1813 dbgprintf(TEXT("CAdvancedSettings::put_MinutesToIdleTimeout(%ld)"), pminutesToIdleTimeout
);
1814 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_MinutesToIdleTimeout(pminutesToIdleTimeout
);
1815 dbgprintf(TEXT("CAdvancedSettings::put_MinutesToIdleTimeout -> %08X"), hr
);
1819 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_MinutesToIdleTimeout(long * pminutesToIdleTimeout
)
1821 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1822 dbgprintf(TEXT("CAdvancedSettings::get_MinutesToIdleTimeout(%p)"), pminutesToIdleTimeout
);
1823 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_MinutesToIdleTimeout(pminutesToIdleTimeout
);
1824 dbgprintf(TEXT("CAdvancedSettings::get_MinutesToIdleTimeout -> %08X, minutesToIdleTimeout = %ld"), hr
, *pminutesToIdleTimeout
);
1828 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_SmartSizing(VARIANT_BOOL pfSmartSizing
)
1830 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1831 dbgprintf(TEXT("CAdvancedSettings::put_SmartSizing(%s)"), BooleanToString(pfSmartSizing
));
1832 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_SmartSizing(pfSmartSizing
);
1833 dbgprintf(TEXT("CAdvancedSettings::put_SmartSizing -> %08X"), hr
);
1837 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_SmartSizing(VARIANT_BOOL
* pfSmartSizing
)
1839 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1840 dbgprintf(TEXT("CAdvancedSettings::get_SmartSizing(%p)"), pfSmartSizing
);
1841 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_SmartSizing(pfSmartSizing
);
1842 dbgprintf(TEXT("CAdvancedSettings::get_SmartSizing -> %08X, fSmartSizing = %s"), hr
, BooleanToString(*pfSmartSizing
));
1846 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_RdpdrLocalPrintingDocName(BSTR pLocalPrintingDocName
)
1848 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1849 dbgprintf(TEXT("CAdvancedSettings::put_RdpdrLocalPrintingDocName(%ls)"), pLocalPrintingDocName
);
1850 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_RdpdrLocalPrintingDocName(pLocalPrintingDocName
);
1851 dbgprintf(TEXT("CAdvancedSettings::put_RdpdrLocalPrintingDocName -> %08X"), hr
);
1855 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_RdpdrLocalPrintingDocName(BSTR
* pLocalPrintingDocName
)
1857 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1858 dbgprintf(TEXT("CAdvancedSettings::get_RdpdrLocalPrintingDocName(%p)"), pLocalPrintingDocName
);
1859 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_RdpdrLocalPrintingDocName(pLocalPrintingDocName
);
1860 dbgprintf(TEXT("CAdvancedSettings::get_RdpdrLocalPrintingDocName -> %08X, LocalPrintingDocName = %ls"), hr
, *pLocalPrintingDocName
);
1864 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_RdpdrClipCleanTempDirString(BSTR clipCleanTempDirString
)
1866 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1867 dbgprintf(TEXT("CAdvancedSettings::put_RdpdrClipCleanTempDirString(%ls)"), clipCleanTempDirString
);
1868 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_RdpdrClipCleanTempDirString(clipCleanTempDirString
);
1869 dbgprintf(TEXT("CAdvancedSettings::put_RdpdrClipCleanTempDirString -> %08X"), hr
);
1873 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_RdpdrClipCleanTempDirString(BSTR
* clipCleanTempDirString
)
1875 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1876 dbgprintf(TEXT("CAdvancedSettings::get_RdpdrClipCleanTempDirString(%p)"), clipCleanTempDirString
);
1877 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_RdpdrClipCleanTempDirString(clipCleanTempDirString
);
1878 dbgprintf(TEXT("CAdvancedSettings::get_RdpdrClipCleanTempDirString -> %08X, clipCleanTempDirString = %ls"), hr
, *clipCleanTempDirString
);
1882 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_RdpdrClipPasteInfoString(BSTR clipPasteInfoString
)
1884 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1885 dbgprintf(TEXT("CAdvancedSettings::put_RdpdrClipPasteInfoString(%ls)"), clipPasteInfoString
);
1886 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_RdpdrClipPasteInfoString(clipPasteInfoString
);
1887 dbgprintf(TEXT("CAdvancedSettings::put_RdpdrClipPasteInfoString -> %08X"), hr
);
1891 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_RdpdrClipPasteInfoString(BSTR
* clipPasteInfoString
)
1893 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1894 dbgprintf(TEXT("CAdvancedSettings::get_RdpdrClipPasteInfoString(%p)"), clipPasteInfoString
);
1895 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_RdpdrClipPasteInfoString(clipPasteInfoString
);
1896 dbgprintf(TEXT("CAdvancedSettings::get_RdpdrClipPasteInfoString -> %08X, clipPasteInfoString = %ls"), hr
, *clipPasteInfoString
);
1900 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_ClearTextPassword(BSTR rhs
)
1902 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1903 dbgprintf(TEXT("CAdvancedSettings::put_ClearTextPassword(%ls)"), rhs
);
1904 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_ClearTextPassword(rhs
);
1905 dbgprintf(TEXT("CAdvancedSettings::put_ClearTextPassword -> %08X"), hr
);
1909 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_DisplayConnectionBar(VARIANT_BOOL pDisplayConnectionBar
)
1911 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1912 dbgprintf(TEXT("CAdvancedSettings::put_DisplayConnectionBar(%s)"), BooleanToString(pDisplayConnectionBar
));
1913 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_DisplayConnectionBar(pDisplayConnectionBar
);
1914 dbgprintf(TEXT("CAdvancedSettings::put_DisplayConnectionBar -> %08X"), hr
);
1918 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_DisplayConnectionBar(VARIANT_BOOL
* pDisplayConnectionBar
)
1920 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1921 dbgprintf(TEXT("CAdvancedSettings::get_DisplayConnectionBar(%p)"), pDisplayConnectionBar
);
1922 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_DisplayConnectionBar(pDisplayConnectionBar
);
1923 dbgprintf(TEXT("CAdvancedSettings::get_DisplayConnectionBar -> %08X, DisplayConnectionBar = %s"), hr
, BooleanToString(*pDisplayConnectionBar
));
1927 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_PinConnectionBar(VARIANT_BOOL pPinConnectionBar
)
1929 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1930 dbgprintf(TEXT("CAdvancedSettings::put_PinConnectionBar(%s)"), BooleanToString(pPinConnectionBar
));
1931 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_PinConnectionBar(pPinConnectionBar
);
1932 dbgprintf(TEXT("CAdvancedSettings::put_PinConnectionBar -> %08X"), hr
);
1936 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_PinConnectionBar(VARIANT_BOOL
* pPinConnectionBar
)
1938 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1939 dbgprintf(TEXT("CAdvancedSettings::get_PinConnectionBar(%p)"), pPinConnectionBar
);
1940 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_PinConnectionBar(pPinConnectionBar
);
1941 dbgprintf(TEXT("CAdvancedSettings::get_PinConnectionBar -> %08X, PinConnectionBar = %s"), hr
, BooleanToString(*pPinConnectionBar
));
1945 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_GrabFocusOnConnect(VARIANT_BOOL pfGrabFocusOnConnect
)
1947 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1948 dbgprintf(TEXT("CAdvancedSettings::put_GrabFocusOnConnect(%s)"), BooleanToString(pfGrabFocusOnConnect
));
1949 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_GrabFocusOnConnect(pfGrabFocusOnConnect
);
1950 dbgprintf(TEXT("CAdvancedSettings::put_GrabFocusOnConnect -> %08X"), hr
);
1954 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_GrabFocusOnConnect(VARIANT_BOOL
* pfGrabFocusOnConnect
)
1956 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1957 dbgprintf(TEXT("CAdvancedSettings::get_GrabFocusOnConnect(%p)"), pfGrabFocusOnConnect
);
1958 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_GrabFocusOnConnect(pfGrabFocusOnConnect
);
1959 dbgprintf(TEXT("CAdvancedSettings::get_GrabFocusOnConnect -> %08X, fGrabFocusOnConnect = %s"), hr
, BooleanToString(*pfGrabFocusOnConnect
));
1963 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_LoadBalanceInfo(BSTR pLBInfo
)
1965 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1966 dbgprintf(TEXT("CAdvancedSettings::put_LoadBalanceInfo(%ls)"), pLBInfo
);
1967 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_LoadBalanceInfo(pLBInfo
);
1968 dbgprintf(TEXT("CAdvancedSettings::put_LoadBalanceInfo -> %08X"), hr
);
1972 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_LoadBalanceInfo(BSTR
* pLBInfo
)
1974 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1975 dbgprintf(TEXT("CAdvancedSettings::get_LoadBalanceInfo(%p)"), pLBInfo
);
1976 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_LoadBalanceInfo(pLBInfo
);
1977 dbgprintf(TEXT("CAdvancedSettings::get_LoadBalanceInfo -> %08X, LBInfo = %ls"), hr
, *pLBInfo
);
1981 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_RedirectDrives(VARIANT_BOOL pRedirectDrives
)
1983 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1984 dbgprintf(TEXT("CAdvancedSettings::put_RedirectDrives(%s)"), BooleanToString(pRedirectDrives
));
1985 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_RedirectDrives(pRedirectDrives
);
1986 dbgprintf(TEXT("CAdvancedSettings::put_RedirectDrives -> %08X"), hr
);
1990 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_RedirectDrives(VARIANT_BOOL
* pRedirectDrives
)
1992 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
1993 dbgprintf(TEXT("CAdvancedSettings::get_RedirectDrives(%p)"), pRedirectDrives
);
1994 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_RedirectDrives(pRedirectDrives
);
1995 dbgprintf(TEXT("CAdvancedSettings::get_RedirectDrives -> %08X, RedirectDrives = %s"), hr
, BooleanToString(*pRedirectDrives
));
1999 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_RedirectPrinters(VARIANT_BOOL pRedirectPrinters
)
2001 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
2002 dbgprintf(TEXT("CAdvancedSettings::put_RedirectPrinters(%s)"), BooleanToString(pRedirectPrinters
));
2003 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_RedirectPrinters(pRedirectPrinters
);
2004 dbgprintf(TEXT("CAdvancedSettings::put_RedirectPrinters -> %08X"), hr
);
2008 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_RedirectPrinters(VARIANT_BOOL
* pRedirectPrinters
)
2010 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
2011 dbgprintf(TEXT("CAdvancedSettings::get_RedirectPrinters(%p)"), pRedirectPrinters
);
2012 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_RedirectPrinters(pRedirectPrinters
);
2013 dbgprintf(TEXT("CAdvancedSettings::get_RedirectPrinters -> %08X, RedirectPrinters = %s"), hr
, BooleanToString(*pRedirectPrinters
));
2017 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_RedirectPorts(VARIANT_BOOL pRedirectPorts
)
2019 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
2020 dbgprintf(TEXT("CAdvancedSettings::put_RedirectPorts(%s)"), BooleanToString(pRedirectPorts
));
2021 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_RedirectPorts(pRedirectPorts
);
2022 dbgprintf(TEXT("CAdvancedSettings::put_RedirectPorts -> %08X"), hr
);
2026 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_RedirectPorts(VARIANT_BOOL
* pRedirectPorts
)
2028 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
2029 dbgprintf(TEXT("CAdvancedSettings::get_RedirectPorts(%p)"), pRedirectPorts
);
2030 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_RedirectPorts(pRedirectPorts
);
2031 dbgprintf(TEXT("CAdvancedSettings::get_RedirectPorts -> %08X, RedirectPorts = %s"), hr
, BooleanToString(*pRedirectPorts
));
2035 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_RedirectSmartCards(VARIANT_BOOL pRedirectSmartCards
)
2037 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
2038 dbgprintf(TEXT("CAdvancedSettings::put_RedirectSmartCards(%s)"), BooleanToString(pRedirectSmartCards
));
2039 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_RedirectSmartCards(pRedirectSmartCards
);
2040 dbgprintf(TEXT("CAdvancedSettings::put_RedirectSmartCards -> %08X"), hr
);
2044 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_RedirectSmartCards(VARIANT_BOOL
* pRedirectSmartCards
)
2046 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
2047 dbgprintf(TEXT("CAdvancedSettings::get_RedirectSmartCards(%p)"), pRedirectSmartCards
);
2048 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_RedirectSmartCards(pRedirectSmartCards
);
2049 dbgprintf(TEXT("CAdvancedSettings::get_RedirectSmartCards -> %08X, RedirectSmartCards = %s"), hr
, BooleanToString(*pRedirectSmartCards
));
2053 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_BitmapVirtualCache16BppSize(long pBitmapVirtualCache16BppSize
)
2055 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
2056 dbgprintf(TEXT("CAdvancedSettings::put_BitmapVirtualCache16BppSize(%ld)"), pBitmapVirtualCache16BppSize
);
2057 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_BitmapVirtualCache16BppSize(pBitmapVirtualCache16BppSize
);
2058 dbgprintf(TEXT("CAdvancedSettings::put_BitmapVirtualCache16BppSize -> %08X"), hr
);
2062 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_BitmapVirtualCache16BppSize(long * pBitmapVirtualCache16BppSize
)
2064 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
2065 dbgprintf(TEXT("CAdvancedSettings::get_BitmapVirtualCache16BppSize(%p)"), pBitmapVirtualCache16BppSize
);
2066 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_BitmapVirtualCache16BppSize(pBitmapVirtualCache16BppSize
);
2067 dbgprintf(TEXT("CAdvancedSettings::get_BitmapVirtualCache16BppSize -> %08X, BitmapVirtualCache16BppSize = %ld"), hr
, *pBitmapVirtualCache16BppSize
);
2071 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_BitmapVirtualCache24BppSize(long pBitmapVirtualCache24BppSize
)
2073 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
2074 dbgprintf(TEXT("CAdvancedSettings::put_BitmapVirtualCache24BppSize(%ld)"), pBitmapVirtualCache24BppSize
);
2075 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_BitmapVirtualCache24BppSize(pBitmapVirtualCache24BppSize
);
2076 dbgprintf(TEXT("CAdvancedSettings::put_BitmapVirtualCache24BppSize -> %08X"), hr
);
2080 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_BitmapVirtualCache24BppSize(long * pBitmapVirtualCache24BppSize
)
2082 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
2083 dbgprintf(TEXT("CAdvancedSettings::get_BitmapVirtualCache24BppSize(%p)"), pBitmapVirtualCache24BppSize
);
2084 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_BitmapVirtualCache24BppSize(pBitmapVirtualCache24BppSize
);
2085 dbgprintf(TEXT("CAdvancedSettings::get_BitmapVirtualCache24BppSize -> %08X, BitmapVirtualCache24BppSize = %ld"), hr
, *pBitmapVirtualCache24BppSize
);
2089 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_PerformanceFlags(long pDisableList
)
2091 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
2092 dbgprintf(TEXT("CAdvancedSettings::put_PerformanceFlags(%ld)"), pDisableList
);
2093 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_PerformanceFlags(pDisableList
);
2094 dbgprintf(TEXT("CAdvancedSettings::put_PerformanceFlags -> %08X"), hr
);
2098 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_PerformanceFlags(long * pDisableList
)
2100 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
2101 dbgprintf(TEXT("CAdvancedSettings::get_PerformanceFlags(%p)"), pDisableList
);
2102 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_PerformanceFlags(pDisableList
);
2103 dbgprintf(TEXT("CAdvancedSettings::get_PerformanceFlags -> %08X, DisableList = %ld"), hr
, *pDisableList
);
2107 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_ConnectWithEndpoint(VARIANT
* rhs
)
2109 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
2110 dbgprintf(TEXT("CAdvancedSettings::put_ConnectWithEndpoint(%s)"), VariantToString(*rhs
).c_str());
2111 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_ConnectWithEndpoint(rhs
);
2112 dbgprintf(TEXT("CAdvancedSettings::put_ConnectWithEndpoint -> %08X"), hr
);
2116 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::put_NotifyTSPublicKey(VARIANT_BOOL pfNotify
)
2118 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
2119 dbgprintf(TEXT("CAdvancedSettings::put_NotifyTSPublicKey(%s)"), BooleanToString(pfNotify
));
2120 HRESULT hr
= pIMsRdpClientAdvancedSettings
->put_NotifyTSPublicKey(pfNotify
);
2121 dbgprintf(TEXT("CAdvancedSettings::put_NotifyTSPublicKey -> %08X"), hr
);
2125 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings::get_NotifyTSPublicKey(VARIANT_BOOL
* pfNotify
)
2127 IMsRdpClientAdvancedSettings
* pIMsRdpClientAdvancedSettings
= getIMsRdpClientAdvancedSettings();
2128 dbgprintf(TEXT("CAdvancedSettings::get_NotifyTSPublicKey(%p)"), pfNotify
);
2129 HRESULT hr
= pIMsRdpClientAdvancedSettings
->get_NotifyTSPublicKey(pfNotify
);
2130 dbgprintf(TEXT("CAdvancedSettings::get_NotifyTSPublicKey -> %08X, fNotify = %s"), hr
, BooleanToString(*pfNotify
));
2134 /* IMsRdpClientAdvancedSettings2 */
2135 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings2::get_CanAutoReconnect(VARIANT_BOOL
* pfCanAutoReconnect
)
2137 IMsRdpClientAdvancedSettings2
* pIMsRdpClientAdvancedSettings2
= getIMsRdpClientAdvancedSettings2();
2138 dbgprintf(TEXT("CAdvancedSettings::get_CanAutoReconnect(%p)"), pfCanAutoReconnect
);
2139 HRESULT hr
= pIMsRdpClientAdvancedSettings2
->get_CanAutoReconnect(pfCanAutoReconnect
);
2140 dbgprintf(TEXT("CAdvancedSettings::get_CanAutoReconnect -> %08X, fCanAutoReconnect = %s"), hr
, BooleanToString(*pfCanAutoReconnect
));
2144 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings2::put_EnableAutoReconnect(VARIANT_BOOL pfEnableAutoReconnect
)
2146 IMsRdpClientAdvancedSettings2
* pIMsRdpClientAdvancedSettings2
= getIMsRdpClientAdvancedSettings2();
2147 dbgprintf(TEXT("CAdvancedSettings::put_EnableAutoReconnect(%s)"), BooleanToString(pfEnableAutoReconnect
));
2148 HRESULT hr
= pIMsRdpClientAdvancedSettings2
->put_EnableAutoReconnect(pfEnableAutoReconnect
);
2149 dbgprintf(TEXT("CAdvancedSettings::put_EnableAutoReconnect -> %08X"), hr
);
2153 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings2::get_EnableAutoReconnect(VARIANT_BOOL
* pfEnableAutoReconnect
)
2155 IMsRdpClientAdvancedSettings2
* pIMsRdpClientAdvancedSettings2
= getIMsRdpClientAdvancedSettings2();
2156 dbgprintf(TEXT("CAdvancedSettings::get_EnableAutoReconnect(%p)"), pfEnableAutoReconnect
);
2157 HRESULT hr
= pIMsRdpClientAdvancedSettings2
->get_EnableAutoReconnect(pfEnableAutoReconnect
);
2158 dbgprintf(TEXT("CAdvancedSettings::get_EnableAutoReconnect -> %08X, fEnableAutoReconnect = %s"), hr
, BooleanToString(*pfEnableAutoReconnect
));
2162 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings2::put_MaxReconnectAttempts(long pMaxReconnectAttempts
)
2164 IMsRdpClientAdvancedSettings2
* pIMsRdpClientAdvancedSettings2
= getIMsRdpClientAdvancedSettings2();
2165 dbgprintf(TEXT("CAdvancedSettings::put_MaxReconnectAttempts(%ld)"), pMaxReconnectAttempts
);
2166 HRESULT hr
= pIMsRdpClientAdvancedSettings2
->put_MaxReconnectAttempts(pMaxReconnectAttempts
);
2167 dbgprintf(TEXT("CAdvancedSettings::put_MaxReconnectAttempts -> %08X"), hr
);
2171 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings2::get_MaxReconnectAttempts(long * pMaxReconnectAttempts
)
2173 IMsRdpClientAdvancedSettings2
* pIMsRdpClientAdvancedSettings2
= getIMsRdpClientAdvancedSettings2();
2174 dbgprintf(TEXT("CAdvancedSettings::get_MaxReconnectAttempts(%p)"), pMaxReconnectAttempts
);
2175 HRESULT hr
= pIMsRdpClientAdvancedSettings2
->get_MaxReconnectAttempts(pMaxReconnectAttempts
);
2176 dbgprintf(TEXT("CAdvancedSettings::get_MaxReconnectAttempts -> %08X, MaxReconnectAttempts = %ld"), hr
, *pMaxReconnectAttempts
);
2180 /* IMsRdpClientAdvancedSettings3 */
2181 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings3::put_ConnectionBarShowMinimizeButton(VARIANT_BOOL pfShowMinimize
)
2183 IMsRdpClientAdvancedSettings3
* pIMsRdpClientAdvancedSettings3
= getIMsRdpClientAdvancedSettings3();
2184 dbgprintf(TEXT("CAdvancedSettings::put_ConnectionBarShowMinimizeButton(%s)"), BooleanToString(pfShowMinimize
));
2185 HRESULT hr
= pIMsRdpClientAdvancedSettings3
->put_ConnectionBarShowMinimizeButton(pfShowMinimize
);
2186 dbgprintf(TEXT("CAdvancedSettings::put_ConnectionBarShowMinimizeButton -> %08X"), hr
);
2190 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings3::get_ConnectionBarShowMinimizeButton(VARIANT_BOOL
* pfShowMinimize
)
2192 IMsRdpClientAdvancedSettings3
* pIMsRdpClientAdvancedSettings3
= getIMsRdpClientAdvancedSettings3();
2193 dbgprintf(TEXT("CAdvancedSettings::get_ConnectionBarShowMinimizeButton(%p)"), pfShowMinimize
);
2194 HRESULT hr
= pIMsRdpClientAdvancedSettings3
->get_ConnectionBarShowMinimizeButton(pfShowMinimize
);
2195 dbgprintf(TEXT("CAdvancedSettings::get_ConnectionBarShowMinimizeButton -> %08X, fShowMinimize = %s"), hr
, BooleanToString(*pfShowMinimize
));
2199 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings3::put_ConnectionBarShowRestoreButton(VARIANT_BOOL pfShowRestore
)
2201 IMsRdpClientAdvancedSettings3
* pIMsRdpClientAdvancedSettings3
= getIMsRdpClientAdvancedSettings3();
2202 dbgprintf(TEXT("CAdvancedSettings::put_ConnectionBarShowRestoreButton(%s)"), BooleanToString(pfShowRestore
));
2203 HRESULT hr
= pIMsRdpClientAdvancedSettings3
->put_ConnectionBarShowRestoreButton(pfShowRestore
);
2204 dbgprintf(TEXT("CAdvancedSettings::put_ConnectionBarShowRestoreButton -> %08X"), hr
);
2208 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings3::get_ConnectionBarShowRestoreButton(VARIANT_BOOL
* pfShowRestore
)
2210 IMsRdpClientAdvancedSettings3
* pIMsRdpClientAdvancedSettings3
= getIMsRdpClientAdvancedSettings3();
2211 dbgprintf(TEXT("CAdvancedSettings::get_ConnectionBarShowRestoreButton(%p)"), pfShowRestore
);
2212 HRESULT hr
= pIMsRdpClientAdvancedSettings3
->get_ConnectionBarShowRestoreButton(pfShowRestore
);
2213 dbgprintf(TEXT("CAdvancedSettings::get_ConnectionBarShowRestoreButton -> %08X, fShowRestore = %s"), hr
, BooleanToString(*pfShowRestore
));
2217 /* IMsRdpClientAdvancedSettings4 */
2218 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings4::put_AuthenticationLevel(unsigned int puiAuthLevel
)
2220 IMsRdpClientAdvancedSettings4
* pIMsRdpClientAdvancedSettings4
= getIMsRdpClientAdvancedSettings4();
2221 dbgprintf(TEXT("CAdvancedSettings::put_AuthenticationLevel(%u)"), puiAuthLevel
);
2222 HRESULT hr
= pIMsRdpClientAdvancedSettings4
->put_AuthenticationLevel(puiAuthLevel
);
2223 dbgprintf(TEXT("CAdvancedSettings::put_AuthenticationLevel -> %08X"), hr
);
2226 virtual STDMETHODIMP
IMsRdpClientAdvancedSettings4::get_AuthenticationLevel(unsigned int * puiAuthLevel
)
2228 IMsRdpClientAdvancedSettings4
* pIMsRdpClientAdvancedSettings4
= getIMsRdpClientAdvancedSettings4();
2229 dbgprintf(TEXT("CAdvancedSettings::get_AuthenticationLevel(%p)"), puiAuthLevel
);
2230 HRESULT hr
= pIMsRdpClientAdvancedSettings4
->get_AuthenticationLevel(puiAuthLevel
);
2231 dbgprintf(TEXT("CAdvancedSettings::get_AuthenticationLevel -> %08X, uiAuthLevel = %ld"), hr
, *puiAuthLevel
);
2237 /* Standard interfaces */
2240 public IConnectionPointContainer
,
2242 public IObjectSafety
,
2244 public IOleInPlaceActiveObject
,
2245 public IOleInPlaceObject
,
2249 public IPersistPropertyBag
,
2250 public IPersistStorage
,
2251 public IPersistStreamInit
,
2252 public IProvideClassInfo
,
2253 public IProvideClassInfo2
,
2254 public IQuickActivate
,
2255 public ISpecifyPropertyPages
,
2257 public IViewObject2
,
2259 /* RDP client interfaces */
2260 public IMsRdpClient4
,
2261 public IMsRdpClientNonScriptable2
2266 IUnknown
* m_IUnknown
;
2268 IDispatch
* m_IDispatch
;
2269 IConnectionPointContainer
* m_IConnectionPointContainer
;
2270 IDataObject
* m_IDataObject
;
2271 IObjectSafety
* m_IObjectSafety
;
2272 IOleControl
* m_IOleControl
;
2273 IOleInPlaceActiveObject
* m_IOleInPlaceActiveObject
;
2274 IOleInPlaceObject
* m_IOleInPlaceObject
;
2275 IOleObject
* m_IOleObject
;
2276 IOleWindow
* m_IOleWindow
;
2277 IPersist
* m_IPersist
;
2278 IPersistPropertyBag
* m_IPersistPropertyBag
;
2279 IPersistStorage
* m_IPersistStorage
;
2280 IPersistStreamInit
* m_IPersistStreamInit
;
2281 IProvideClassInfo
* m_IProvideClassInfo
;
2282 IProvideClassInfo2
* m_IProvideClassInfo2
;
2283 IQuickActivate
* m_IQuickActivate
;
2284 ISpecifyPropertyPages
* m_ISpecifyPropertyPages
;
2285 IViewObject
* m_IViewObject
;
2286 IViewObject2
* m_IViewObject2
;
2288 IMsRdpClient
* m_IMsRdpClient
;
2289 IMsRdpClient2
* m_IMsRdpClient2
;
2290 IMsRdpClient3
* m_IMsRdpClient3
;
2291 IMsRdpClient4
* m_IMsRdpClient4
;
2292 IMsTscAx
* m_IMsTscAx
;
2293 IMsTscNonScriptable
* m_IMsTscNonScriptable
;
2294 IMsRdpClientNonScriptable
* m_IMsRdpClientNonScriptable
;
2295 IMsRdpClientNonScriptable2
* m_IMsRdpClientNonScriptable2
;
2297 IDispatch
* getIDispatch()
2303 m_IDispatch
= m_IMsRdpClient
;
2304 else if(m_IMsRdpClient2
)
2305 m_IDispatch
= m_IMsRdpClient2
;
2306 else if(m_IMsRdpClient3
)
2307 m_IDispatch
= m_IMsRdpClient3
;
2308 else if(m_IMsRdpClient4
)
2309 m_IDispatch
= m_IMsRdpClient4
;
2311 m_IDispatch
= m_IMsTscAx
;
2315 m_IDispatch
->AddRef();
2319 if(SUCCEEDED(m_IUnknown
->QueryInterface(&m_IDispatch
)))
2325 IConnectionPointContainer
* getIConnectionPointContainer()
2327 if(m_IConnectionPointContainer
)
2328 return m_IConnectionPointContainer
;
2330 m_IUnknown
->QueryInterface(&m_IConnectionPointContainer
);
2331 return m_IConnectionPointContainer
;
2335 IDataObject
* getIDataObject()
2338 return m_IDataObject
;
2340 m_IUnknown
->QueryInterface(&m_IDataObject
);
2341 return m_IDataObject
;
2344 IObjectSafety
* getIObjectSafety()
2347 return m_IObjectSafety
;
2349 m_IUnknown
->QueryInterface(&m_IObjectSafety
);
2350 return m_IObjectSafety
;
2353 IOleControl
* getIOleControl()
2356 return m_IOleControl
;
2358 m_IUnknown
->QueryInterface(&m_IOleControl
);
2359 return m_IOleControl
;
2362 IOleInPlaceActiveObject
* getIOleInPlaceActiveObject()
2364 if(m_IOleInPlaceActiveObject
)
2365 return m_IOleInPlaceActiveObject
;
2367 m_IUnknown
->QueryInterface(&m_IOleInPlaceActiveObject
);
2368 return m_IOleInPlaceActiveObject
;
2371 IOleInPlaceObject
* getIOleInPlaceObject()
2373 if(m_IOleInPlaceObject
)
2374 return m_IOleInPlaceObject
;
2376 m_IUnknown
->QueryInterface(&m_IOleInPlaceObject
);
2377 return m_IOleInPlaceObject
;
2380 IOleObject
* getIOleObject()
2383 return m_IOleObject
;
2385 m_IUnknown
->QueryInterface(&m_IOleObject
);
2386 return m_IOleObject
;
2389 IOleWindow
* getIOleWindow()
2392 return m_IOleWindow
;
2394 if(m_IOleInPlaceActiveObject
)
2395 m_IOleWindow
= m_IOleInPlaceActiveObject
;
2399 m_IOleWindow
->AddRef();
2400 return m_IOleWindow
;
2403 m_IUnknown
->QueryInterface(&m_IOleWindow
);
2404 return m_IOleWindow
;
2407 IPersist
* getIPersist()
2412 if(m_IPersistPropertyBag
)
2413 m_IPersist
= m_IPersistPropertyBag
;
2414 else if(m_IPersistStorage
)
2415 m_IPersist
= m_IPersistStorage
;
2416 else if(m_IPersistStreamInit
)
2417 m_IPersist
= m_IPersistStreamInit
;
2421 m_IPersist
->AddRef();
2425 m_IUnknown
->QueryInterface(&m_IPersist
);
2429 IPersistPropertyBag
* getIPersistPropertyBag()
2431 if(m_IPersistPropertyBag
)
2432 return m_IPersistPropertyBag
;
2434 m_IUnknown
->QueryInterface(&m_IPersistPropertyBag
);
2435 return m_IPersistPropertyBag
;
2438 IPersistStorage
* getIPersistStorage()
2440 if(m_IPersistStorage
)
2441 return m_IPersistStorage
;
2443 m_IUnknown
->QueryInterface(&m_IPersistStorage
);
2444 return m_IPersistStorage
;
2447 IPersistStreamInit
* getIPersistStreamInit()
2449 if(m_IPersistStreamInit
)
2450 return m_IPersistStreamInit
;
2452 m_IUnknown
->QueryInterface(&m_IPersistStreamInit
);
2453 return m_IPersistStreamInit
;
2456 IProvideClassInfo
* getIProvideClassInfo()
2458 if(m_IProvideClassInfo
)
2459 return m_IProvideClassInfo
;
2461 if(m_IProvideClassInfo2
)
2462 m_IProvideClassInfo
= m_IProvideClassInfo2
;
2464 if(m_IProvideClassInfo
)
2466 m_IProvideClassInfo
->AddRef();
2467 return m_IProvideClassInfo
;
2470 m_IUnknown
->QueryInterface(&m_IProvideClassInfo
);
2471 return m_IProvideClassInfo
;
2474 IProvideClassInfo2
* getIProvideClassInfo2()
2476 if(m_IProvideClassInfo2
)
2477 return m_IProvideClassInfo2
;
2479 m_IUnknown
->QueryInterface(&m_IProvideClassInfo2
);
2480 return m_IProvideClassInfo2
;
2483 IQuickActivate
* getIQuickActivate()
2485 if(m_IQuickActivate
)
2486 return m_IQuickActivate
;
2488 m_IUnknown
->QueryInterface(&m_IQuickActivate
);
2489 return m_IQuickActivate
;
2492 ISpecifyPropertyPages
* getISpecifyPropertyPages()
2494 if(m_ISpecifyPropertyPages
)
2495 return m_ISpecifyPropertyPages
;
2497 m_IUnknown
->QueryInterface(&m_ISpecifyPropertyPages
);
2498 return m_ISpecifyPropertyPages
;
2501 IViewObject
* getIViewObject()
2504 return m_IViewObject
;
2507 m_IViewObject
= m_IViewObject2
;
2511 m_IViewObject
->AddRef();
2512 return m_IViewObject
;
2515 m_IUnknown
->QueryInterface(&m_IViewObject
);
2516 return m_IViewObject
;
2519 IViewObject2
* getIViewObject2()
2522 return m_IViewObject2
;
2524 m_IUnknown
->QueryInterface(&m_IViewObject2
);
2525 return m_IViewObject2
;
2528 IMsRdpClient
* getIMsRdpClient()
2531 return m_IMsRdpClient
;
2534 m_IMsRdpClient
= m_IMsRdpClient2
;
2535 else if(m_IMsRdpClient3
)
2536 m_IMsRdpClient
= m_IMsRdpClient3
;
2537 else if(m_IMsRdpClient4
)
2538 m_IMsRdpClient
= m_IMsRdpClient4
;
2542 m_IMsRdpClient
->AddRef();
2543 return m_IMsRdpClient
;
2546 m_IUnknown
->QueryInterface(&m_IMsRdpClient
);
2547 return m_IMsRdpClient
;
2550 IMsRdpClient2
* getIMsRdpClient2()
2553 return m_IMsRdpClient2
;
2556 m_IMsRdpClient2
= m_IMsRdpClient3
;
2557 else if(m_IMsRdpClient4
)
2558 m_IMsRdpClient2
= m_IMsRdpClient4
;
2562 m_IMsRdpClient2
->AddRef();
2563 return m_IMsRdpClient2
;
2566 m_IUnknown
->QueryInterface(&m_IMsRdpClient2
);
2567 return m_IMsRdpClient2
;
2570 IMsRdpClient3
* getIMsRdpClient3()
2573 return m_IMsRdpClient3
;
2576 m_IMsRdpClient3
= m_IMsRdpClient4
;
2580 m_IMsRdpClient3
->AddRef();
2581 return m_IMsRdpClient3
;
2584 m_IUnknown
->QueryInterface(&m_IMsRdpClient3
);
2585 return m_IMsRdpClient3
;
2588 IMsRdpClient4
* getIMsRdpClient4()
2591 return m_IMsRdpClient4
;
2593 m_IUnknown
->QueryInterface(&m_IMsRdpClient4
);
2594 return m_IMsRdpClient4
;
2597 IMsTscAx
* getIMsTscAx()
2603 m_IMsTscAx
= m_IMsRdpClient
;
2604 else if(m_IMsRdpClient2
)
2605 m_IMsTscAx
= m_IMsRdpClient2
;
2606 else if(m_IMsRdpClient3
)
2607 m_IMsTscAx
= m_IMsRdpClient3
;
2608 else if(m_IMsRdpClient4
)
2609 m_IMsTscAx
= m_IMsRdpClient4
;
2613 m_IMsTscAx
->AddRef();
2617 m_IUnknown
->QueryInterface(&m_IMsTscAx
);
2621 IMsTscNonScriptable
* getIMsTscNonScriptable()
2623 if(m_IMsTscNonScriptable
)
2624 return m_IMsTscNonScriptable
;
2626 if(m_IMsRdpClientNonScriptable
)
2627 m_IMsTscNonScriptable
= m_IMsRdpClientNonScriptable
;
2628 else if(m_IMsRdpClientNonScriptable2
)
2629 m_IMsTscNonScriptable
= m_IMsRdpClientNonScriptable2
;
2631 if(m_IMsTscNonScriptable
)
2633 m_IMsTscNonScriptable
->AddRef();
2634 return m_IMsTscNonScriptable
;
2637 m_IUnknown
->QueryInterface(&m_IMsTscNonScriptable
);
2638 return m_IMsTscNonScriptable
;
2641 IMsRdpClientNonScriptable
* getIMsRdpClientNonScriptable()
2643 if(m_IMsRdpClientNonScriptable
)
2644 return m_IMsRdpClientNonScriptable
;
2646 if(m_IMsRdpClientNonScriptable2
)
2647 m_IMsRdpClientNonScriptable
= m_IMsRdpClientNonScriptable2
;
2649 if(m_IMsRdpClientNonScriptable
)
2651 m_IMsRdpClientNonScriptable
->AddRef();
2652 return m_IMsRdpClientNonScriptable
;
2655 m_IUnknown
->QueryInterface(&m_IMsRdpClientNonScriptable
);
2656 return m_IMsRdpClientNonScriptable
;
2659 IMsRdpClientNonScriptable2
* getIMsRdpClientNonScriptable2()
2661 if(m_IMsRdpClientNonScriptable2
)
2662 return m_IMsRdpClientNonScriptable2
;
2664 m_IUnknown
->QueryInterface(&m_IMsRdpClientNonScriptable2
);
2665 return m_IMsRdpClientNonScriptable2
;
2671 HRESULT
queryInterface(REFIID riid
, void ** ppvObject
)
2674 IUnknown
* pvObject
= NULL
;
2676 dbgprintf(TEXT("IUnknown::QueryInterface(%ls, %p)"), UUIDToString(riid
).c_str(), ppvObject
);
2679 if(riid == IID_IUnknown) \
2685 else if(riid == IID_ ## I) \
2689 m_ ## I->AddRef(); \
2694 hr = m_IUnknown->QueryInterface(&m_ ## I); \
2698 pvObject = static_cast<I *>(this); \
2704 hr = E_NOINTERFACE; \
2710 /* Standard interfaces */
2712 QI(IConnectionPointContainer
)
2716 QI(IOleInPlaceActiveObject
)
2717 QI(IOleInPlaceObject
)
2721 QI(IPersistPropertyBag
)
2723 QI(IPersistStreamInit
)
2724 QI(IProvideClassInfo
)
2725 QI(IProvideClassInfo2
)
2727 QI(ISpecifyPropertyPages
)
2731 /* Terminal services client */
2737 QI(IMsTscNonScriptable
)
2738 QI(IMsRdpClientNonScriptable
)
2739 QI(IMsRdpClientNonScriptable2
)
2753 assert(pvObject
== NULL
);
2756 *ppvObject
= pvObject
;
2758 dbgprintf(TEXT("IUnknown::QueryInterface -> %08X, ppvObject = %p"), hr
, *ppvObject
);
2764 return InterlockedIncrement(&m_refCount
);
2769 LONG n
= InterlockedDecrement(&m_refCount
);
2777 friend class CoClassInner
;
2779 class CoClassInner
: public IUnknown
2782 virtual HRESULT STDMETHODCALLTYPE
QueryInterface(REFIID riid
, void ** ppvObject
)
2784 if(riid
== IID_IUnknown
)
2791 return InnerToOuter(this)->queryInterface(riid
, ppvObject
);
2794 virtual ULONG STDMETHODCALLTYPE
AddRef()
2796 return InnerToOuter(this)->addRef();
2799 virtual ULONG STDMETHODCALLTYPE
Release()
2801 return InnerToOuter(this)->release();
2806 static CoClass
* InnerToOuter(CoClassInner
* inner
)
2808 return CONTAINING_RECORD(inner
, CoClass
, m_inner
);
2812 CoClass(IUnknown
* pUnknw
, IUnknown
* pUnkOuter
):
2817 m_IConnectionPointContainer(NULL
),
2818 m_IDataObject(NULL
),
2819 m_IObjectSafety(NULL
),
2820 m_IOleControl(NULL
),
2821 m_IOleInPlaceActiveObject(NULL
),
2822 m_IOleInPlaceObject(NULL
),
2826 m_IPersistPropertyBag(NULL
),
2827 m_IPersistStorage(NULL
),
2828 m_IPersistStreamInit(NULL
),
2829 m_IProvideClassInfo(NULL
),
2830 m_IProvideClassInfo2(NULL
),
2831 m_IQuickActivate(NULL
),
2832 m_ISpecifyPropertyPages(NULL
),
2833 m_IViewObject(NULL
),
2834 m_IViewObject2(NULL
),
2835 m_IMsRdpClient(NULL
),
2836 m_IMsRdpClient2(NULL
),
2837 m_IMsRdpClient3(NULL
),
2838 m_IMsRdpClient4(NULL
),
2840 m_IMsTscNonScriptable(NULL
),
2841 m_IMsRdpClientNonScriptable(NULL
),
2842 m_IMsRdpClientNonScriptable2(NULL
)
2849 static HRESULT
CreateInstance(IUnknown
* pUnknw
, IUnknown
* pUnkOuter
, REFIID riid
, void ** ppvObject
)
2853 if(pUnkOuter
&& riid
!= IID_IUnknown
)
2854 hr
= CLASS_E_NOAGGREGATION
;
2857 CoClass
* p
= new CoClass(pUnknw
, pUnkOuter
);
2863 hr
= p
->m_inner
.QueryInterface(riid
, ppvObject
);
2868 p
->m_inner
.Release();
2882 m_IUnknown
->Release();
2885 m_IDispatch
->Release();
2887 if(m_IConnectionPointContainer
)
2888 m_IConnectionPointContainer
->Release();
2891 m_IDataObject
->Release();
2894 m_IObjectSafety
->Release();
2897 m_IOleControl
->Release();
2899 if(m_IOleInPlaceActiveObject
)
2900 m_IOleInPlaceActiveObject
->Release();
2902 if(m_IOleInPlaceObject
)
2903 m_IOleInPlaceObject
->Release();
2906 m_IOleObject
->Release();
2909 m_IOleWindow
->Release();
2912 m_IPersist
->Release();
2914 if(m_IPersistPropertyBag
)
2915 m_IPersistPropertyBag
->Release();
2917 if(m_IPersistStorage
)
2918 m_IPersistStorage
->Release();
2920 if(m_IPersistStreamInit
)
2921 m_IPersistStreamInit
->Release();
2923 if(m_IProvideClassInfo
)
2924 m_IProvideClassInfo
->Release();
2926 if(m_IProvideClassInfo2
)
2927 m_IProvideClassInfo2
->Release();
2929 if(m_IQuickActivate
)
2930 m_IQuickActivate
->Release();
2932 if(m_ISpecifyPropertyPages
)
2933 m_ISpecifyPropertyPages
->Release();
2936 m_IViewObject
->Release();
2939 m_IViewObject2
->Release();
2942 m_IMsRdpClient
->Release();
2945 m_IMsRdpClient2
->Release();
2948 m_IMsRdpClient3
->Release();
2951 m_IMsRdpClient4
->Release();
2954 m_IMsTscAx
->Release();
2956 if(m_IMsTscNonScriptable
)
2957 m_IMsTscNonScriptable
->Release();
2959 if(m_IMsRdpClientNonScriptable
)
2960 m_IMsRdpClientNonScriptable
->Release();
2962 if(m_IMsRdpClientNonScriptable2
)
2963 m_IMsRdpClientNonScriptable2
->Release();
2968 virtual HRESULT STDMETHODCALLTYPE
QueryInterface(REFIID riid
, void ** ppvObject
)
2970 return m_outer
->QueryInterface(riid
, ppvObject
);
2973 virtual ULONG STDMETHODCALLTYPE
AddRef(void)
2975 return m_outer
->AddRef();
2978 virtual ULONG STDMETHODCALLTYPE
Release(void)
2980 return m_outer
->Release();
2985 static void FreeExcepInfo(const EXCEPINFO
& excepInfo
)
2987 if(excepInfo
.bstrSource
)
2988 SysFreeString(excepInfo
.bstrSource
);
2990 if(excepInfo
.bstrDescription
)
2991 SysFreeString(excepInfo
.bstrDescription
);
2993 if(excepInfo
.bstrHelpFile
)
2994 SysFreeString(excepInfo
.bstrHelpFile
);
2997 static std::basic_string
<TCHAR
> ExcepInfoToString(const EXCEPINFO
& excepInfo
)
2999 std::basic_ostringstream
<TCHAR
> o
;
3002 o
<< " code: " << excepInfo
.wCode
<< " from: " << std::basic_string
<OLECHAR
>(excepInfo
.bstrSource
, excepInfo
.bstrSource
+ SysStringLen(excepInfo
.bstrSource
));
3004 BSTR bstrDescription
= NULL
;
3006 if(excepInfo
.bstrDescription
)
3007 bstrDescription
= excepInfo
.bstrDescription
;
3008 else if(excepInfo
.pfnDeferredFillIn
)
3010 EXCEPINFO excepInfoCopy
= excepInfo
;
3012 if(SUCCEEDED(excepInfoCopy
.pfnDeferredFillIn(&excepInfoCopy
)) && excepInfoCopy
.bstrDescription
)
3014 bstrDescription
= excepInfoCopy
.bstrDescription
;
3015 excepInfoCopy
.bstrDescription
= NULL
;
3018 if(excepInfoCopy
.bstrSource
== excepInfo
.bstrSource
)
3019 excepInfoCopy
.bstrSource
= NULL
;
3021 if(excepInfoCopy
.bstrHelpFile
== excepInfo
.bstrDescription
)
3022 excepInfoCopy
.bstrDescription
= NULL
;
3024 FreeExcepInfo(excepInfoCopy
);
3029 o
<< " msg: " << std::basic_string
<OLECHAR
>(bstrDescription
, bstrDescription
+ SysStringLen(bstrDescription
));
3031 if(excepInfo
.bstrDescription
== NULL
)
3032 SysFreeString(bstrDescription
);
3037 return o
.str().c_str();
3041 virtual HRESULT STDMETHODCALLTYPE
GetTypeInfoCount(UINT
* pctinfo
)
3043 IDispatch
* pIDispatch
= getIDispatch();
3044 dbgprintf(TEXT("IDispatch::GetTypeInfoCount(%p)"), pctinfo
);
3045 HRESULT hr
= pIDispatch
->GetTypeInfoCount(pctinfo
);
3046 dbgprintf(TEXT("IDispatch::GetTypeInfoCount -> %08X, ctinfo = %lu"), hr
, *pctinfo
);
3050 virtual HRESULT STDMETHODCALLTYPE
GetTypeInfo(UINT iTInfo
, LCID lcid
, ITypeInfo
** ppTInfo
)
3052 IDispatch
* pIDispatch
= getIDispatch();
3053 dbgprintf(TEXT("IDispatch::GetTypeInfo(%lu, %08X, %p)"), iTInfo
, lcid
, ppTInfo
);
3054 HRESULT hr
= pIDispatch
->GetTypeInfo(iTInfo
, lcid
, ppTInfo
);
3055 dbgprintf(TEXT("IDispatch::GetTypeInfo -> %08X, pTInfo = %p"), hr
, *ppTInfo
);
3059 virtual HRESULT STDMETHODCALLTYPE
GetIDsOfNames(REFIID riid
, LPOLESTR
* rgszNames
, UINT cNames
, LCID lcid
, DISPID
* rgDispId
)
3061 IDispatch
* pIDispatch
= getIDispatch();
3062 std::wstring strtemp
;
3064 std::wostringstream strtempo
;
3069 for(UINT i
= 0; i
< cNames
; ++ i
)
3074 strtemp
+= rgszNames
[i
];
3079 dbgprintf(TEXT("IDispatch::GetIDsOfNames(%ls, %ls, %lu, %08X, %p)"), UUIDToString(riid
).c_str(), strtemp
.c_str(), cNames
, lcid
, rgDispId
);
3080 HRESULT hr
= pIDispatch
->GetIDsOfNames(riid
, rgszNames
, cNames
, lcid
, rgDispId
);
3083 strtempo
.str(strtemp
);
3087 for(UINT i
= 0; i
< cNames
; ++ i
)
3092 strtempo
<< rgDispId
[i
];
3097 dbgprintf(TEXT("IDispatch::GetIDsOfNames -> %08X, rgDispId = %ls"), hr
, strtempo
.str().c_str());
3102 virtual HRESULT STDMETHODCALLTYPE
Invoke(DISPID dispIdMember
, REFIID riid
, LCID lcid
, WORD wFlags
, DISPPARAMS
* pDispParams
, VARIANT
* pVarResult
, EXCEPINFO
* pExcepInfo
, UINT
* puArgErr
)
3104 IDispatch
* pIDispatch
= getIDispatch();
3106 std::basic_ostringstream
<TCHAR
> strtempo
;
3110 for(unsigned int i
= pDispParams
->cArgs
, j
= pDispParams
->cNamedArgs
; j
< pDispParams
->cArgs
; -- i
, ++ j
)
3113 strtempo
<< VariantToString(pDispParams
->rgvarg
[i
- 1]);
3117 for(unsigned int i
= pDispParams
->cArgs
- pDispParams
->cNamedArgs
; i
> 0; -- i
)
3120 strtempo
<< L
"["; strtempo
<< pDispParams
->rgdispidNamedArgs
[i
- 1]; strtempo
<< L
"] => ";
3121 strtempo
<< VariantToString(pDispParams
->rgvarg
[i
- 1]);
3127 dbgprintf(TEXT("IDispatch::Invoke(%ld, %ls, %08X, %04X, %s, %p, %p, %p)"), dispIdMember
, UUIDToString(riid
).c_str(), lcid
, wFlags
, strtempo
.str().c_str(), pVarResult
, pExcepInfo
, puArgErr
);
3129 VARIANT VarResult
= { };
3130 EXCEPINFO ExcepInfo
= { };
3132 if(pVarResult
== NULL
)
3133 pVarResult
= &VarResult
;
3135 if(pExcepInfo
== NULL
)
3136 pExcepInfo
= &ExcepInfo
;
3138 HRESULT hr
= pIDispatch
->Invoke(dispIdMember
, riid
, lcid
, wFlags
, pDispParams
, pVarResult
, pExcepInfo
, puArgErr
);
3140 dbgprintf(TEXT("IDispatch::Invoke -> %08X, returns %s, throws %s"), hr
, VariantToString(*pVarResult
).c_str(), ExcepInfoToString(*pExcepInfo
).c_str());
3142 FreeExcepInfo(ExcepInfo
);
3147 /* IConnectionPointContainer */
3149 virtual HRESULT STDMETHODCALLTYPE
EnumConnectionPoints(IEnumConnectionPoints
** ppEnum
)
3151 IConnectionPointContainer
* pIConnectionPointContainer
= getIConnectionPointContainer();
3152 dbgprintf(TEXT("IConnectionPointContainer::EnumConnectionPoints(%p)"), ppEnum
);
3153 HRESULT hr
= pIConnectionPointContainer
->EnumConnectionPoints(ppEnum
);
3154 dbgprintf(TEXT("IConnectionPointContainer::EnumConnectionPoints -> %08X, pEnum = %p"), hr
, *ppEnum
);
3157 *ppEnum
= HookIEnumConnectionPoints(*ppEnum
);
3162 virtual HRESULT STDMETHODCALLTYPE
FindConnectionPoint(REFIID riid
, IConnectionPoint
** ppCP
)
3164 IConnectionPointContainer
* pIConnectionPointContainer
= getIConnectionPointContainer();
3165 dbgprintf(TEXT("IConnectionPointContainer::FindConnectionPoint(%ls, %p)"), UUIDToString(riid
).c_str(), ppCP
);
3166 HRESULT hr
= pIConnectionPointContainer
->FindConnectionPoint(riid
, ppCP
);
3167 dbgprintf(TEXT("IConnectionPointContainer::FindConnectionPoint -> %08X, pCP = %p"), hr
, *ppCP
);
3170 *ppCP
= HookIConnectionPoint(*ppCP
);
3177 static std::basic_string
<TCHAR
> TargetDeviceToString(const DVTARGETDEVICE
& targetdev
)
3179 if(&targetdev
== NULL
)
3180 return TEXT("<null>");
3182 std::basic_ostringstream
<TCHAR
> o
;
3185 o
<< LPCWSTR(targetdev
.tdData
[targetdev
.tdDriverNameOffset
]);
3187 if(targetdev
.tdDeviceNameOffset
)
3190 o
<< LPCWSTR(targetdev
.tdData
[targetdev
.tdDeviceNameOffset
]);
3193 if(targetdev
.tdPortNameOffset
)
3196 o
<< LPCWSTR(targetdev
.tdData
[targetdev
.tdPortNameOffset
]);
3204 static LPCTSTR
AspectToString(DWORD aspect
)
3208 case DVASPECT_CONTENT
: return TEXT("content");
3209 case DVASPECT_THUMBNAIL
: return TEXT("thumbnail");
3210 case DVASPECT_ICON
: return TEXT("icon");
3211 case DVASPECT_DOCPRINT
: return TEXT("printable");
3212 default: return TEXT("<unknown>");
3216 static LPCTSTR
TymedToString(DWORD tymed
)
3220 case TYMED_HGLOBAL
: return TEXT("memory");
3221 case TYMED_FILE
: return TEXT("file");
3222 case TYMED_ISTREAM
: return TEXT("IStream");
3223 case TYMED_ISTORAGE
: return TEXT("IStorage");
3224 case TYMED_GDI
: return TEXT("bitmap");
3225 case TYMED_MFPICT
: return TEXT("metafile");
3226 case TYMED_ENHMF
: return TEXT("enhanced metafile");
3227 case TYMED_NULL
: return TEXT("<no data>");
3228 default: return TEXT("<unknown>");
3232 static std::basic_string
<TCHAR
> FormatEtcToString(const FORMATETC
& formatetc
)
3234 std::basic_ostringstream
<TCHAR
> o
;
3241 switch(formatetc
.cfFormat
)
3243 case CF_TEXT
: o
<< "ANSI text"; break;
3244 case CF_BITMAP
: o
<< "bitmap"; break;
3245 case CF_METAFILEPICT
: o
<< "metafile"; break;
3246 case CF_SYLK
: o
<< "symlink"; break;
3247 case CF_DIF
: o
<< "DIF"; break;
3248 case CF_TIFF
: o
<< "TIFF"; break;
3249 case CF_OEMTEXT
: o
<< "OEM text"; break;
3250 case CF_DIB
: o
<< "DIBv4"; break;
3251 case CF_PALETTE
: o
<< "palette"; break;
3252 case CF_PENDATA
: o
<< "pen data"; break;
3253 case CF_RIFF
: o
<< "RIFF"; break;
3254 case CF_WAVE
: o
<< "WAV"; break;
3255 case CF_UNICODETEXT
: o
<< "Unicode text"; break;
3256 case CF_ENHMETAFILE
: o
<< "enhanced metafile"; break;
3257 case CF_HDROP
: o
<< "list of files"; break;
3258 case CF_LOCALE
: o
<< "LCID"; break;
3259 case CF_DIBV5
: o
<< "DIBv5"; break;
3260 case CF_OWNERDISPLAY
: o
<< "<owner displayed>"; break;
3261 case CF_DSPTEXT
: o
<< "<display text>"; break;
3262 case CF_DSPBITMAP
: o
<< "<display bitmap>"; break;
3263 case CF_DSPMETAFILEPICT
: o
<< "<display metafile>"; break;
3264 case CF_DSPENHMETAFILE
: o
<< "<display enhanced metafile>"; break;
3269 if(formatetc
.cfFormat
>= CF_PRIVATEFIRST
&& formatetc
.cfFormat
<= CF_PRIVATELAST
)
3271 else if(formatetc
.cfFormat
>= CF_GDIOBJFIRST
&& formatetc
.cfFormat
<= CF_GDIOBJLAST
)
3276 o
<< " " << std::hex
<< formatetc
.cfFormat
<< std::dec
<< ">";
3281 o
<< " device: " << TargetDeviceToString(*formatetc
.ptd
);
3284 o
<< " aspect: " << AspectToString(formatetc
.dwAspect
);
3287 if(formatetc
.dwAspect
== DVASPECT_CONTENT
|| formatetc
.dwAspect
== DVASPECT_DOCPRINT
)
3288 o
<< " page split: " << formatetc
.lindex
;
3291 o
<< " medium: " << TymedToString(formatetc
.tymed
);
3296 static std::basic_string
<TCHAR
> MediumToString(const STGMEDIUM
& medium
)
3298 std::basic_ostringstream
<TCHAR
> o
;
3301 o
<< TymedToString(medium
.tymed
);
3308 virtual HRESULT STDMETHODCALLTYPE
GetData(FORMATETC
* pformatetcIn
, STGMEDIUM
* pmedium
)
3310 IDataObject
* pIDataObject
= getIDataObject();
3311 dbgprintf(TEXT("IDataObject::GetData(%s, %p)"), FormatEtcToString(*pformatetcIn
).c_str(), pmedium
);
3312 HRESULT hr
= pIDataObject
->GetData(pformatetcIn
, pmedium
);
3313 dbgprintf(TEXT("IDataObject::GetData -> %08X, %s"), hr
, MediumToString(*pmedium
).c_str());
3317 virtual HRESULT STDMETHODCALLTYPE
GetDataHere(FORMATETC
* pformatetc
, STGMEDIUM
* pmedium
)
3319 IDataObject
* pIDataObject
= getIDataObject();
3320 dbgprintf(TEXT("IDataObject::GetDataHere(%s, %p)"), FormatEtcToString(*pformatetc
).c_str(), pmedium
);
3321 HRESULT hr
= pIDataObject
->GetDataHere(pformatetc
, pmedium
);
3322 dbgprintf(TEXT("IDataObject::GetDataHere -> %08X, medium = %s"), hr
, MediumToString(*pmedium
).c_str());
3326 virtual HRESULT STDMETHODCALLTYPE
QueryGetData(FORMATETC
* pformatetc
)
3328 IDataObject
* pIDataObject
= getIDataObject();
3329 dbgprintf(TEXT("IDataObject::QueryGetData(%s)"), FormatEtcToString(*pformatetc
).c_str());
3330 HRESULT hr
= pIDataObject
->QueryGetData(pformatetc
);
3331 dbgprintf(TEXT("IDataObject::QueryGetData -> %08X"), hr
);
3335 virtual HRESULT STDMETHODCALLTYPE
GetCanonicalFormatEtc(FORMATETC
* pformatectIn
, FORMATETC
* pformatetcOut
)
3337 IDataObject
* pIDataObject
= getIDataObject();
3338 dbgprintf(TEXT("IDataObject::GetCanonicalFormatEtc(%s, %p)"), FormatEtcToString(*pformatectIn
).c_str(), pformatetcOut
);
3339 HRESULT hr
= pIDataObject
->GetCanonicalFormatEtc(pformatectIn
, pformatetcOut
);
3340 dbgprintf(TEXT("IDataObject::GetCanonicalFormatEtc -> %08X, formatetcOut = %s"), hr
, FormatEtcToString(*pformatetcOut
).c_str());
3344 virtual HRESULT STDMETHODCALLTYPE
SetData(FORMATETC
* pformatetc
, STGMEDIUM
* pmedium
, BOOL fRelease
)
3346 IDataObject
* pIDataObject
= getIDataObject();
3347 dbgprintf(TEXT("IDataObject::SetData(%s, %p, %s)"), FormatEtcToString(*pformatetc
).c_str(), MediumToString(*pmedium
).c_str(), fRelease
? TEXT("true") : TEXT("false"));
3348 HRESULT hr
= pIDataObject
->SetData(pformatetc
, pmedium
, fRelease
);
3349 dbgprintf(TEXT("IDataObject::SetData -> %08X"), hr
);
3353 virtual HRESULT STDMETHODCALLTYPE
EnumFormatEtc(DWORD dwDirection
, IEnumFORMATETC
** ppenumFormatEtc
)
3355 IDataObject
* pIDataObject
= getIDataObject();
3356 dbgprintf(TEXT("IDataObject::EnumFormatEtc(%lu, %p)"), dwDirection
, ppenumFormatEtc
);
3357 HRESULT hr
= pIDataObject
->EnumFormatEtc(dwDirection
, ppenumFormatEtc
);
3358 dbgprintf(TEXT("IDataObject::EnumFormatEtc -> %08X, penumFormatEtc = %p"), hr
, *ppenumFormatEtc
);
3363 virtual HRESULT STDMETHODCALLTYPE
DAdvise(FORMATETC
* pformatetc
, DWORD advf
, IAdviseSink
* pAdvSink
, DWORD
* pdwConnection
)
3365 IDataObject
* pIDataObject
= getIDataObject();
3366 dbgprintf(TEXT("IDataObject::DAdvise(%s, %lu, %p, %p)"), FormatEtcToString(*pformatetc
).c_str(), advf
, pAdvSink
, pdwConnection
);
3367 HRESULT hr
= pIDataObject
->DAdvise(pformatetc
, advf
, pAdvSink
, pdwConnection
);
3368 dbgprintf(TEXT("IDataObject::DAdvise -> %08X, dwConnection = %lu"), hr
, *pdwConnection
);
3373 virtual HRESULT STDMETHODCALLTYPE
DUnadvise(DWORD dwConnection
)
3375 IDataObject
* pIDataObject
= getIDataObject();
3376 dbgprintf(TEXT("IDataObject::DUnadvise(%lu)"), dwConnection
);
3377 HRESULT hr
= pIDataObject
->DUnadvise(dwConnection
);
3378 dbgprintf(TEXT("IDataObject::DUnadvise -> %08X"), hr
);
3382 virtual HRESULT STDMETHODCALLTYPE
EnumDAdvise(IEnumSTATDATA
** ppenumAdvise
)
3384 IDataObject
* pIDataObject
= getIDataObject();
3385 dbgprintf(TEXT("IDataObject::EnumDAdvise(%p)"), ppenumAdvise
);
3386 HRESULT hr
= pIDataObject
->EnumDAdvise(ppenumAdvise
);
3387 dbgprintf(TEXT("IDataObject::EnumDAdvise -> %08X, penumAdvise = %p"), hr
, *ppenumAdvise
);
3394 virtual HRESULT STDMETHODCALLTYPE
IObjectSafety::GetInterfaceSafetyOptions(REFIID riid
, DWORD
* pdwSupportedOptions
, DWORD
* pdwEnabledOptions
)
3396 IObjectSafety
* pIObjectSafety
= getIObjectSafety();
3397 dbgprintf(TEXT("IObjectSafety::GetInterfaceSafetyOptions(%ls, %p, %p)"), UUIDToString(riid
).c_str(), pdwSupportedOptions
, pdwEnabledOptions
);
3398 HRESULT hr
= pIObjectSafety
->GetInterfaceSafetyOptions(riid
, pdwSupportedOptions
, pdwEnabledOptions
);
3399 dbgprintf(TEXT("IObjectSafety::GetInterfaceSafetyOptions -> %08X, dwSupportedOptions = %08X, dwEnabledOptions = %08X"), hr
, *pdwSupportedOptions
, *pdwEnabledOptions
);
3403 virtual HRESULT STDMETHODCALLTYPE
IObjectSafety::SetInterfaceSafetyOptions(REFIID riid
, DWORD dwOptionSetMask
, DWORD dwEnabledOptions
)
3405 IObjectSafety
* pIObjectSafety
= getIObjectSafety();
3406 dbgprintf(TEXT("IObjectSafety::SetInterfaceSafetyOptions(%ls, %08X, %08X)"), UUIDToString(riid
).c_str(), dwOptionSetMask
, dwEnabledOptions
);
3407 HRESULT hr
= pIObjectSafety
->SetInterfaceSafetyOptions(riid
, dwOptionSetMask
, dwEnabledOptions
);
3408 dbgprintf(TEXT("IObjectSafety::SetInterfaceSafetyOptions -> %08X"), hr
);
3414 std::basic_string
<TCHAR
> ControlInfoToString(const CONTROLINFO
& ci
)
3416 std::basic_ostringstream
<TCHAR
> o
;
3422 if(ci
.cAccel
&& ci
.hAccel
)
3424 LPACCEL pAccel
= static_cast<LPACCEL
>(GlobalLock(ci
.hAccel
));
3428 for(USHORT i
= 0; i
< ci
.cAccel
; ++ i
)
3433 if(pAccel
[i
].fVirt
& FSHIFT
)
3436 if(pAccel
[i
].fVirt
& FCONTROL
)
3439 if(pAccel
[i
].fVirt
& FALT
)
3442 if(pAccel
[i
].fVirt
& FVIRTKEY
)
3443 o
<< "<vkey:" << std::hex
<< pAccel
[i
].key
<< std::dec
<< ">";
3445 o
<< wchar_t(pAccel
[i
].key
);
3447 o
<< " " << std::hex
<< pAccel
[i
].cmd
<< std::dec
;
3450 firstdone
= ci
.cAccel
;
3452 GlobalUnlock(pAccel
);
3456 if(ci
.dwFlags
& CTRLINFO_EATS_RETURN
)
3467 if(ci
.dwFlags
& CTRLINFO_EATS_ESCAPE
)
3486 std::basic_string
<TCHAR
> MnemonicToString(const MSG
& msg
)
3488 std::basic_ostringstream
<TCHAR
> o
;
3499 GetKeyNameText(LONG(msg
.lParam
), sz
, ARRAYSIZE(sz
));
3503 o
<< "<unknown message " << std::hex
<< msg
.message
<< std::dec
<< ">";
3512 virtual HRESULT STDMETHODCALLTYPE
GetControlInfo(CONTROLINFO
* pCI
)
3514 IOleControl
* pIOleControl
= getIOleControl();
3515 dbgprintf(TEXT("IOleControl::GetControlInfo(%p)"), pCI
);
3516 HRESULT hr
= pIOleControl
->GetControlInfo(pCI
);
3517 dbgprintf(TEXT("IOleControl::GetControlInfo -> %08X, %s"), hr
, ControlInfoToString(*pCI
).c_str());
3521 virtual HRESULT STDMETHODCALLTYPE
OnMnemonic(MSG
* pMsg
)
3523 IOleControl
* pIOleControl
= getIOleControl();
3524 dbgprintf(TEXT("IOleControl::OnMnemonic(%s)"), MnemonicToString(*pMsg
).c_str());
3525 HRESULT hr
= pIOleControl
->OnMnemonic(pMsg
);
3526 dbgprintf(TEXT("IOleControl::OnMnemonic -> %08X"), hr
);
3530 virtual HRESULT STDMETHODCALLTYPE
OnAmbientPropertyChange(DISPID dispID
)
3532 IOleControl
* pIOleControl
= getIOleControl();
3533 dbgprintf(TEXT("IOleControl::OnAmbientPropertyChange(%08X)"), dispID
);
3534 HRESULT hr
= pIOleControl
->OnAmbientPropertyChange(dispID
);
3535 dbgprintf(TEXT("IOleControl::OnAmbientPropertyChange -> %08X"), hr
);
3539 virtual HRESULT STDMETHODCALLTYPE
FreezeEvents(BOOL bFreeze
)
3541 IOleControl
* pIOleControl
= getIOleControl();
3542 dbgprintf(TEXT("IOleControl::FreezeEvents(%s)"), BooleanToString(bFreeze
));
3543 HRESULT hr
= pIOleControl
->FreezeEvents(bFreeze
);
3544 dbgprintf(TEXT("IOleControl::FreezeEvents -> %08X"), hr
);
3548 /* IOleInPlaceActiveObject */
3550 virtual HRESULT STDMETHODCALLTYPE
TranslateAccelerator(LPMSG lpmsg
)
3552 IOleInPlaceActiveObject
* pIOleInPlaceActiveObject
= getIOleInPlaceActiveObject();
3553 dbgprintf(TEXT("IOleInPlaceActiveObject::TranslateAccelerator(%s)"), MnemonicToString(*lpmsg
).c_str());
3554 HRESULT hr
= pIOleInPlaceActiveObject
->TranslateAccelerator(lpmsg
);
3555 dbgprintf(TEXT("IOleInPlaceActiveObject::TranslateAccelerator -> %08X"), hr
);
3559 virtual HRESULT STDMETHODCALLTYPE
OnFrameWindowActivate(BOOL fActivate
)
3561 IOleInPlaceActiveObject
* pIOleInPlaceActiveObject
= getIOleInPlaceActiveObject();
3562 dbgprintf(TEXT("IOleInPlaceActiveObject::OnFrameWindowActivate(%s)"), BooleanToString(fActivate
));
3563 HRESULT hr
= pIOleInPlaceActiveObject
->OnFrameWindowActivate(fActivate
);
3564 dbgprintf(TEXT("IOleInPlaceActiveObject::OnFrameWindowActivate -> %08X"), hr
);
3568 virtual HRESULT STDMETHODCALLTYPE
OnDocWindowActivate(BOOL fActivate
)
3570 IOleInPlaceActiveObject
* pIOleInPlaceActiveObject
= getIOleInPlaceActiveObject();
3571 dbgprintf(TEXT("IOleInPlaceActiveObject::OnDocWindowActivate(%s)"), BooleanToString(fActivate
));
3572 HRESULT hr
= pIOleInPlaceActiveObject
->OnDocWindowActivate(fActivate
);
3573 dbgprintf(TEXT("IOleInPlaceActiveObject::OnDocWindowActivate -> %08X"), hr
);
3577 virtual HRESULT STDMETHODCALLTYPE
ResizeBorder(LPCRECT prcBorder
, IOleInPlaceUIWindow
* pUIWindow
, BOOL fFrameWindow
)
3579 // TODO: hook pUIWindow
3580 IOleInPlaceActiveObject
* pIOleInPlaceActiveObject
= getIOleInPlaceActiveObject();
3581 dbgprintf(TEXT("IOleInPlaceActiveObject::ResizeBorder(%s)"), RectToString(*prcBorder
).c_str(), pUIWindow
, BooleanToString(fFrameWindow
));
3582 HRESULT hr
= pIOleInPlaceActiveObject
->ResizeBorder(prcBorder
, pUIWindow
, fFrameWindow
);
3583 dbgprintf(TEXT("IOleInPlaceActiveObject::ResizeBorder -> %08X"), hr
);
3587 virtual HRESULT STDMETHODCALLTYPE
EnableModeless(BOOL fEnable
)
3589 IOleInPlaceActiveObject
* pIOleInPlaceActiveObject
= getIOleInPlaceActiveObject();
3590 dbgprintf(TEXT("IOleInPlaceActiveObject::EnableModeless(%s)"), BooleanToString(fEnable
));
3591 HRESULT hr
= pIOleInPlaceActiveObject
->EnableModeless(fEnable
);
3592 dbgprintf(TEXT("IOleInPlaceActiveObject::EnableModeless -> %08X"), hr
);
3596 /* IOleInPlaceObject */
3598 virtual HRESULT STDMETHODCALLTYPE
InPlaceDeactivate(void)
3600 IOleInPlaceObject
* pIOleInPlaceObject
= getIOleInPlaceObject();
3601 dbgprintf(TEXT("IOleInPlaceObject::InPlaceDeactivate()"));
3602 HRESULT hr
= pIOleInPlaceObject
->InPlaceDeactivate();
3603 dbgprintf(TEXT("IOleInPlaceObject::InPlaceDeactivate -> %08X"), hr
);
3607 virtual HRESULT STDMETHODCALLTYPE
UIDeactivate(void)
3609 IOleInPlaceObject
* pIOleInPlaceObject
= getIOleInPlaceObject();
3610 dbgprintf(TEXT("IOleInPlaceObject::UIDeactivate()"));
3611 HRESULT hr
= pIOleInPlaceObject
->UIDeactivate();
3612 dbgprintf(TEXT("IOleInPlaceObject::UIDeactivate -> %08X"), hr
);
3616 virtual HRESULT STDMETHODCALLTYPE
SetObjectRects(LPCRECT lprcPosRect
, LPCRECT lprcClipRect
)
3618 IOleInPlaceObject
* pIOleInPlaceObject
= getIOleInPlaceObject();
3619 dbgprintf(TEXT("IOleInPlaceObject::SetObjectRects(%s, %s)"), RectToString(*lprcPosRect
).c_str(), RectToString(*lprcClipRect
).c_str());
3620 HRESULT hr
= pIOleInPlaceObject
->SetObjectRects(lprcPosRect
, lprcClipRect
);
3621 dbgprintf(TEXT("IOleInPlaceObject::SetObjectRects -> %08X"), hr
);
3625 virtual HRESULT STDMETHODCALLTYPE
ReactivateAndUndo(void)
3627 IOleInPlaceObject
* pIOleInPlaceObject
= getIOleInPlaceObject();
3628 dbgprintf(TEXT("IOleInPlaceObject::ReactivateAndUndo()"));
3629 HRESULT hr
= pIOleInPlaceObject
->ReactivateAndUndo();
3630 dbgprintf(TEXT("IOleInPlaceObject::ReactivateAndUndo -> %08X"), hr
);
3636 virtual HRESULT STDMETHODCALLTYPE
GetWindow(HWND
* phwnd
)
3638 IOleWindow
* pIOleWindow
= getIOleWindow();
3639 dbgprintf(TEXT("IOleWindow::GetWindow(%p)"), phwnd
);
3640 HRESULT hr
= pIOleWindow
->GetWindow(phwnd
);
3641 dbgprintf(TEXT("IOleWindow::GetWindow -> %08X, hwnd = %X"), hr
, *phwnd
);
3645 virtual HRESULT STDMETHODCALLTYPE
ContextSensitiveHelp(BOOL fEnterMode
)
3647 IOleWindow
* pIOleWindow
= getIOleWindow();
3648 dbgprintf(TEXT("IOleWindow::ContextSensitiveHelp(%s)"), BooleanToString(fEnterMode
));
3649 HRESULT hr
= pIOleWindow
->ContextSensitiveHelp(fEnterMode
);
3650 dbgprintf(TEXT("IOleWindow::ContextSensitiveHelp -> %08X"), hr
);
3656 virtual HRESULT STDMETHODCALLTYPE
SetClientSite(IOleClientSite
* pClientSite
)
3658 // TODO: hook pClientSite
3659 IOleObject
* pIOleObject
= getIOleObject();
3660 dbgprintf(TEXT("IOleObject::SetClientSite(%p)"), pClientSite
);
3661 HRESULT hr
= pIOleObject
->SetClientSite(pClientSite
);
3662 dbgprintf(TEXT("IOleObject::SetClientSite -> %08X"), hr
);
3666 virtual HRESULT STDMETHODCALLTYPE
GetClientSite(IOleClientSite
** ppClientSite
)
3668 IOleObject
* pIOleObject
= getIOleObject();
3669 dbgprintf(TEXT("IOleObject::GetClientSite(%s)"), ppClientSite
);
3670 HRESULT hr
= pIOleObject
->GetClientSite(ppClientSite
);
3671 dbgprintf(TEXT("IOleObject::GetClientSite -> %08X"), hr
, ppClientSite
);
3675 virtual HRESULT STDMETHODCALLTYPE
SetHostNames(LPCOLESTR szContainerApp
, LPCOLESTR szContainerObj
)
3677 IOleObject
* pIOleObject
= getIOleObject();
3678 dbgprintf(TEXT("IOleObject::SetHostNames(%ls, %ls)"), szContainerApp
, szContainerObj
);
3679 HRESULT hr
= pIOleObject
->SetHostNames(szContainerApp
, szContainerObj
);
3680 dbgprintf(TEXT("IOleObject::SetHostNames -> %08X"), hr
);
3684 virtual HRESULT STDMETHODCALLTYPE
Close(DWORD dwSaveOption
)
3686 IOleObject
* pIOleObject
= getIOleObject();
3687 dbgprintf(TEXT("IOleObject::Close(%lu)"), dwSaveOption
);
3688 HRESULT hr
= pIOleObject
->Close(dwSaveOption
);
3689 dbgprintf(TEXT("IOleObject::Close -> %08X"), hr
);
3693 virtual HRESULT STDMETHODCALLTYPE
SetMoniker(DWORD dwWhichMoniker
, IMoniker
* pmk
)
3695 IOleObject
* pIOleObject
= getIOleObject();
3696 dbgprintf(TEXT("IOleObject::SetMoniker(%lu, %p)"), dwWhichMoniker
, MonikerToString(pmk
).c_str());
3697 HRESULT hr
= pIOleObject
->SetMoniker(dwWhichMoniker
, pmk
);
3698 dbgprintf(TEXT("IOleObject::SetMoniker -> %08X"), hr
);
3702 virtual HRESULT STDMETHODCALLTYPE
GetMoniker(DWORD dwAssign
, DWORD dwWhichMoniker
, IMoniker
** ppmk
)
3704 IOleObject
* pIOleObject
= getIOleObject();
3705 dbgprintf(TEXT("IOleObject::GetMoniker(%lu, %lu, %p)"), dwAssign
, dwWhichMoniker
, ppmk
);
3706 HRESULT hr
= pIOleObject
->GetMoniker(dwAssign
, dwWhichMoniker
, ppmk
);
3707 dbgprintf(TEXT("IOleObject::GetMoniker -> %08X, pmk = %s"), hr
, SUCCEEDED(hr
) ? MonikerToString(*ppmk
).c_str() : TEXT("<null>"));
3711 virtual HRESULT STDMETHODCALLTYPE
InitFromData(IDataObject
* pDataObject
, BOOL fCreation
, DWORD dwReserved
)
3713 IOleObject
* pIOleObject
= getIOleObject();
3714 dbgprintf(TEXT("IOleObject::InitFromData(%p, %s, %lu)"), pDataObject
, BooleanToString(fCreation
), dwReserved
);
3715 HRESULT hr
= pIOleObject
->InitFromData(pDataObject
, fCreation
, dwReserved
);
3716 dbgprintf(TEXT("IOleObject::InitFromData -> %08X"), hr
);
3720 virtual HRESULT STDMETHODCALLTYPE
GetClipboardData(DWORD dwReserved
, IDataObject
** ppDataObject
)
3722 IOleObject
* pIOleObject
= getIOleObject();
3723 dbgprintf(TEXT("IOleObject::GetClipboardData(%lu, %p)"), dwReserved
, ppDataObject
);
3724 HRESULT hr
= pIOleObject
->GetClipboardData(dwReserved
, ppDataObject
);
3725 dbgprintf(TEXT("IOleObject::GetClipboardData -> %08X, pDataObject = %p"), hr
, *ppDataObject
);
3729 virtual HRESULT STDMETHODCALLTYPE
DoVerb(LONG iVerb
, LPMSG lpmsg
, IOleClientSite
* pActiveSite
, LONG lindex
, HWND hwndParent
, LPCRECT lprcPosRect
)
3731 IOleObject
* pIOleObject
= getIOleObject();
3732 dbgprintf(TEXT("IOleObject::DoVerb(%ld, %p, %p, %ld, %p, %s)"), iVerb
, lpmsg
, pActiveSite
, lindex
, hwndParent
, RectToString(*lprcPosRect
).c_str());
3733 HRESULT hr
= pIOleObject
->DoVerb(iVerb
, lpmsg
, pActiveSite
, lindex
, hwndParent
, lprcPosRect
);
3734 dbgprintf(TEXT("IOleObject::DoVerb -> %08X"), hr
);
3738 virtual HRESULT STDMETHODCALLTYPE
EnumVerbs(IEnumOLEVERB
** ppEnumOleVerb
)
3740 IOleObject
* pIOleObject
= getIOleObject();
3741 dbgprintf(TEXT("IOleObject::EnumVerbs(%p)"), ppEnumOleVerb
);
3742 HRESULT hr
= pIOleObject
->EnumVerbs(ppEnumOleVerb
);
3743 dbgprintf(TEXT("IOleObject::EnumVerbs -> %08X, pEnumOleVerb = %p"), hr
, *ppEnumOleVerb
);
3748 virtual HRESULT STDMETHODCALLTYPE
Update(void)
3750 IOleObject
* pIOleObject
= getIOleObject();
3751 dbgprintf(TEXT("IOleObject::Update(%s)"));
3752 HRESULT hr
= pIOleObject
->Update();
3753 dbgprintf(TEXT("IOleObject::Update -> %08X"), hr
);
3757 virtual HRESULT STDMETHODCALLTYPE
IsUpToDate(void)
3759 IOleObject
* pIOleObject
= getIOleObject();
3760 dbgprintf(TEXT("IOleObject::IsUpToDate(%s)"));
3761 HRESULT hr
= pIOleObject
->IsUpToDate();
3762 dbgprintf(TEXT("IOleObject::IsUpToDate -> %08X"), hr
);
3766 virtual HRESULT STDMETHODCALLTYPE
GetUserClassID(CLSID
* pClsid
)
3768 IOleObject
* pIOleObject
= getIOleObject();
3769 dbgprintf(TEXT("IOleObject::GetUserClassID(%p)"), pClsid
);
3770 HRESULT hr
= pIOleObject
->GetUserClassID(pClsid
);
3771 dbgprintf(TEXT("IOleObject::GetUserClassID -> %08X, Clsid = %ls"), hr
, UUIDToString(*pClsid
).c_str());
3775 virtual HRESULT STDMETHODCALLTYPE
GetUserType(DWORD dwFormOfType
, LPOLESTR
* pszUserType
)
3777 IOleObject
* pIOleObject
= getIOleObject();
3778 dbgprintf(TEXT("IOleObject::GetUserType(%lu, %p)"), dwFormOfType
, pszUserType
);
3779 HRESULT hr
= pIOleObject
->GetUserType(dwFormOfType
, pszUserType
);
3780 dbgprintf(TEXT("IOleObject::GetUserType -> %08X, szUserType = %s"), hr
, *pszUserType
);
3784 virtual HRESULT STDMETHODCALLTYPE
SetExtent(DWORD dwDrawAspect
, SIZEL
* psizel
)
3786 IOleObject
* pIOleObject
= getIOleObject();
3787 dbgprintf(TEXT("IOleObject::SetExtent(%lu, %s)"), dwDrawAspect
, SizeToString(*psizel
).c_str());
3788 HRESULT hr
= pIOleObject
->SetExtent(dwDrawAspect
, psizel
);
3789 dbgprintf(TEXT("IOleObject::SetExtent -> %08X"), hr
);
3793 virtual HRESULT STDMETHODCALLTYPE
GetExtent(DWORD dwDrawAspect
, SIZEL
* psizel
)
3795 IOleObject
* pIOleObject
= getIOleObject();
3796 dbgprintf(TEXT("IOleObject::GetExtent(%lu, %p)"), dwDrawAspect
, psizel
);
3797 HRESULT hr
= pIOleObject
->GetExtent(dwDrawAspect
, psizel
);
3798 dbgprintf(TEXT("IOleObject::GetExtent -> %08X"), hr
, SizeToString(*psizel
).c_str());
3802 virtual HRESULT STDMETHODCALLTYPE
Advise(IAdviseSink
* pAdvSink
, DWORD
* pdwConnection
)
3804 // TODO: hook pAdvSink
3805 IOleObject
* pIOleObject
= getIOleObject();
3806 dbgprintf(TEXT("IOleObject::Advise(%p, %p)"), pAdvSink
, pdwConnection
);
3807 HRESULT hr
= pIOleObject
->Advise(pAdvSink
, pdwConnection
);
3808 dbgprintf(TEXT("IOleObject::Advise -> %08X, dwConnection = %lu"), hr
, *pdwConnection
);
3812 virtual HRESULT STDMETHODCALLTYPE
Unadvise(DWORD dwConnection
)
3814 IOleObject
* pIOleObject
= getIOleObject();
3815 dbgprintf(TEXT("IOleObject::Unadvise(%lu)"), dwConnection
);
3816 HRESULT hr
= pIOleObject
->Unadvise(dwConnection
);
3817 dbgprintf(TEXT("IOleObject::Unadvise -> %08X"), hr
);
3821 virtual HRESULT STDMETHODCALLTYPE
EnumAdvise(IEnumSTATDATA
** ppenumAdvise
)
3823 IOleObject
* pIOleObject
= getIOleObject();
3824 dbgprintf(TEXT("IOleObject::EnumAdvise(%p)"), ppenumAdvise
);
3825 HRESULT hr
= pIOleObject
->EnumAdvise(ppenumAdvise
);
3826 dbgprintf(TEXT("IOleObject::EnumAdvise -> %08X, penumAdvise = %p"), hr
, *ppenumAdvise
);
3831 virtual HRESULT STDMETHODCALLTYPE
GetMiscStatus(DWORD dwAspect
, DWORD
* pdwStatus
)
3833 IOleObject
* pIOleObject
= getIOleObject();
3834 dbgprintf(TEXT("IOleObject::GetMiscStatus(%lu, %p)"), dwAspect
, pdwStatus
);
3835 HRESULT hr
= pIOleObject
->GetMiscStatus(dwAspect
, pdwStatus
);
3836 dbgprintf(TEXT("IOleObject::GetMiscStatus -> %08X, dwStatus = %08X"), hr
, *pdwStatus
);
3840 virtual HRESULT STDMETHODCALLTYPE
SetColorScheme(LOGPALETTE
* pLogpal
)
3842 IOleObject
* pIOleObject
= getIOleObject();
3843 dbgprintf(TEXT("IOleObject::SetColorScheme(%p)"), pLogpal
);
3844 HRESULT hr
= pIOleObject
->SetColorScheme(pLogpal
);
3845 dbgprintf(TEXT("IOleObject::SetColorScheme -> %08X"), hr
);
3851 virtual HRESULT STDMETHODCALLTYPE
GetClassID(CLSID
* pClassID
)
3853 IPersist
* pIPersist
= getIPersist();
3854 dbgprintf(TEXT("IPersist::GetClassID(%p)"), pClassID
);
3855 HRESULT hr
= pIPersist
->GetClassID(pClassID
);
3856 dbgprintf(TEXT("IPersist::GetClassID -> %08X, ClassId = %ls"), hr
, UUIDToString(*pClassID
).c_str());
3860 /* IPersistPropertyBag */
3862 virtual HRESULT STDMETHODCALLTYPE
InitNew(void)
3864 IPersistPropertyBag
* pIPersistPropertyBag
= getIPersistPropertyBag();
3865 dbgprintf(TEXT("IPersistPropertyBag::InitNew()"));
3866 HRESULT hr
= pIPersistPropertyBag
->InitNew();
3867 dbgprintf(TEXT("IPersistPropertyBag::InitNew -> %08X"), hr
);
3871 virtual HRESULT STDMETHODCALLTYPE
Load(IPropertyBag
* pPropBag
, IErrorLog
* pErrorLog
)
3873 // TODO: hook pPropBag, pErrorLog
3874 IPersistPropertyBag
* pIPersistPropertyBag
= getIPersistPropertyBag();
3875 dbgprintf(TEXT("IPersistPropertyBag::Load(%p, %p)"), pPropBag
, pErrorLog
);
3876 HRESULT hr
= pIPersistPropertyBag
->Load(pPropBag
, pErrorLog
);
3877 dbgprintf(TEXT("IPersistPropertyBag::Load -> %08X"), hr
);
3881 virtual HRESULT STDMETHODCALLTYPE
Save(IPropertyBag
* pPropBag
, BOOL fClearDirty
, BOOL fSaveAllProperties
)
3883 // TODO: hook pPropBag
3884 IPersistPropertyBag
* pIPersistPropertyBag
= getIPersistPropertyBag();
3885 dbgprintf(TEXT("IPersistPropertyBag::Save(%p, %s, %s)"), pPropBag
, BooleanToString(fClearDirty
), BooleanToString(fSaveAllProperties
));
3886 HRESULT hr
= pIPersistPropertyBag
->Save(pPropBag
, fClearDirty
, fSaveAllProperties
);
3887 dbgprintf(TEXT("IPersistPropertyBag::Save -> %08X"), hr
);
3891 /* IPersistStorage */
3893 virtual HRESULT STDMETHODCALLTYPE
IPersistStorage::IsDirty(void)
3895 IPersistStorage
* pIPersistStorage
= getIPersistStorage();
3896 dbgprintf(TEXT("IPersistStorage::IsDirty()"));
3897 HRESULT hr
= pIPersistStorage
->IsDirty();
3898 dbgprintf(TEXT("IPersistStorage::IsDirty -> %08X"), hr
);
3902 virtual HRESULT STDMETHODCALLTYPE
IPersistStorage::InitNew(IStorage
* pStg
)
3904 IPersistStorage
* pIPersistStorage
= getIPersistStorage();
3905 dbgprintf(TEXT("IPersistStorage::InitNew(%p)"), pStg
);
3906 HRESULT hr
= pIPersistStorage
->InitNew(pStg
);
3907 dbgprintf(TEXT("IPersistStorage::InitNew -> %08X"), hr
);
3911 virtual HRESULT STDMETHODCALLTYPE
IPersistStorage::Load(IStorage
* pStg
)
3913 IPersistStorage
* pIPersistStorage
= getIPersistStorage();
3914 dbgprintf(TEXT("IPersistStorage::Load(%p)"), pStg
);
3915 HRESULT hr
= pIPersistStorage
->Load(pStg
);
3916 dbgprintf(TEXT("IPersistStorage::Load -> %08X"), hr
);
3920 virtual HRESULT STDMETHODCALLTYPE
IPersistStorage::Save(IStorage
* pStgSave
, BOOL fSameAsLoad
)
3922 IPersistStorage
* pIPersistStorage
= getIPersistStorage();
3923 dbgprintf(TEXT("IPersistStorage::Save(%p, %s)"), pStgSave
, BooleanToString(fSameAsLoad
));
3924 HRESULT hr
= pIPersistStorage
->Save(pStgSave
, fSameAsLoad
);
3925 dbgprintf(TEXT("IPersistStorage::Save -> %08X"), hr
);
3929 virtual HRESULT STDMETHODCALLTYPE
SaveCompleted(IStorage
* pStgNew
)
3931 IPersistStorage
* pIPersistStorage
= getIPersistStorage();
3932 dbgprintf(TEXT("IPersistStorage::SaveCompleted(%p)"), pStgNew
);
3933 HRESULT hr
= pIPersistStorage
->SaveCompleted(pStgNew
);
3934 dbgprintf(TEXT("IPersistStorage::SaveCompleted -> %08X"), hr
);
3938 virtual HRESULT STDMETHODCALLTYPE
HandsOffStorage(void)
3940 IPersistStorage
* pIPersistStorage
= getIPersistStorage();
3941 dbgprintf(TEXT("IPersistStorage::HandsOffStorage()"));
3942 HRESULT hr
= pIPersistStorage
->HandsOffStorage();
3943 dbgprintf(TEXT("IPersistStorage::HandsOffStorage -> %08X"), hr
);
3947 /* IPersistStreamInit */
3949 virtual HRESULT STDMETHODCALLTYPE
IPersistStreamInit::IsDirty(void)
3951 IPersistStreamInit
* pIPersistStreamInit
= getIPersistStreamInit();
3952 dbgprintf(TEXT("IPersistStreamInit::IsDirty()"));
3953 HRESULT hr
= pIPersistStreamInit
->IsDirty();
3954 dbgprintf(TEXT("IPersistStreamInit::IsDirty -> %08X"), hr
);
3958 virtual HRESULT STDMETHODCALLTYPE
IPersistStreamInit::Load(LPSTREAM pStm
)
3960 IPersistStreamInit
* pIPersistStreamInit
= getIPersistStreamInit();
3961 dbgprintf(TEXT("IPersistStreamInit::Load(%p)"), pStm
);
3962 HRESULT hr
= pIPersistStreamInit
->Load(pStm
);
3963 dbgprintf(TEXT("IPersistStreamInit::Load -> %08X"), hr
);
3967 virtual HRESULT STDMETHODCALLTYPE
IPersistStreamInit::Save(LPSTREAM pStm
, BOOL fClearDirty
)
3969 IPersistStreamInit
* pIPersistStreamInit
= getIPersistStreamInit();
3970 dbgprintf(TEXT("IPersistStreamInit::Save(%p, %s)"), pStm
, BooleanToString(fClearDirty
));
3971 HRESULT hr
= pIPersistStreamInit
->Save(pStm
, fClearDirty
);
3972 dbgprintf(TEXT("IPersistStreamInit::Save -> %08X"), hr
);
3976 virtual HRESULT STDMETHODCALLTYPE
IPersistStreamInit::GetSizeMax(ULARGE_INTEGER
* pCbSize
)
3978 IPersistStreamInit
* pIPersistStreamInit
= getIPersistStreamInit();
3979 dbgprintf(TEXT("IPersistStreamInit::GetSizeMax(%p)"), pCbSize
);
3980 HRESULT hr
= pIPersistStreamInit
->GetSizeMax(pCbSize
);
3981 dbgprintf(TEXT("IPersistStreamInit::GetSizeMax -> %08X, CbSize = %llu"), hr
, pCbSize
->QuadPart
);
3985 virtual HRESULT STDMETHODCALLTYPE
IPersistStreamInit::InitNew(void)
3987 IPersistStreamInit
* pIPersistStreamInit
= getIPersistStreamInit();
3988 dbgprintf(TEXT("IPersistStreamInit::InitNew()"));
3989 HRESULT hr
= pIPersistStreamInit
->InitNew();
3990 dbgprintf(TEXT("IPersistStreamInit::InitNew -> %08X"), hr
);
3994 /* IProvideClassInfo */
3996 virtual HRESULT STDMETHODCALLTYPE
GetClassInfo(ITypeInfo
** ppTI
)
3998 IProvideClassInfo
* pIProvideClassInfo
= getIProvideClassInfo();
3999 dbgprintf(TEXT("IProvideClassInfo::GetClassInfo(%p)"), ppTI
);
4000 HRESULT hr
= pIProvideClassInfo
->GetClassInfo(ppTI
);
4001 dbgprintf(TEXT("IProvideClassInfo::GetClassInfo -> %08X, pTI = %p"), hr
, *ppTI
);
4005 /* IProvideClassInfo2 */
4007 virtual HRESULT STDMETHODCALLTYPE
IProvideClassInfo2::GetGUID(DWORD dwGuidKind
, GUID
* pGUID
)
4009 IProvideClassInfo2
* pIProvideClassInfo2
= getIProvideClassInfo2();
4010 dbgprintf(TEXT("IProvideClassInfo2::GetGUID(%lu, %p)"), dwGuidKind
, pGUID
);
4011 HRESULT hr
= pIProvideClassInfo2
->GetGUID(dwGuidKind
, pGUID
);
4012 dbgprintf(TEXT("IProvideClassInfo2::GetGUID -> %08X, GUID = %ls"), hr
, UUIDToString(*pGUID
).c_str());
4016 /* IQuickActivate */
4018 virtual HRESULT STDMETHODCALLTYPE
IQuickActivate::QuickActivate(QACONTAINER
* pQaContainer
, QACONTROL
* pQaControl
) // TODO
4020 IQuickActivate
* pIQuickActivate
= getIQuickActivate();
4022 std::basic_stringstream
<TCHAR
> o1
;
4025 o1
<< "pClientSite = " << (void *)pQaContainer
->pClientSite
<< ", ";
4026 o1
<< "pAdviseSink = " << (void *)pQaContainer
->pAdviseSink
<< ", ";
4027 o1
<< "pPropertyNotifySink = " << (void *)pQaContainer
->pPropertyNotifySink
<< ", ";
4028 o1
<< "pUnkEventSink = " << (void *)pQaContainer
->pUnkEventSink
<< ", ";
4031 o1
<< "dwAmbientFlags = " << pQaContainer
->dwAmbientFlags
<< ", ";
4032 o1
<< "colorFore = " << pQaContainer
->colorFore
<< ", ";
4033 o1
<< "colorBack = " << pQaContainer
->colorBack
<< ", ";
4036 o1
<< "pFont = " << (void *)pQaContainer
->pFont
<< ", ";
4037 o1
<< "pUndoMgr = " << (void *)pQaContainer
->pUndoMgr
<< ", ";
4040 o1
<< "dwAppearance = " << pQaContainer
->dwAppearance
<< ", ";
4041 o1
<< "lcid = " << pQaContainer
->lcid
<< ", ";
4044 o1
<< "hpal = " << (void *)pQaContainer
->hpal
<< ", ";
4045 o1
<< "pBindHost = " << (void *)pQaContainer
->pBindHost
<< ", ";
4046 o1
<< "pOleControlSite = " << (void *)pQaContainer
->pOleControlSite
<< ", ";
4047 o1
<< "pServiceProvider = " << (void *)pQaContainer
->pServiceProvider
<< ", ";
4050 dbgprintf(TEXT("IQuickActivate::QuickActivate(%s, %p)"), o1
.str().c_str(), pQaControl
);
4052 HRESULT hr
= pIQuickActivate
->QuickActivate(pQaContainer
, pQaControl
);
4054 std::basic_stringstream
<TCHAR
> o2
;
4058 o2
<< "dwMiscStatus = " << pQaControl
->dwMiscStatus
<< ", ";
4059 o2
<< "dwViewStatus = " << pQaControl
->dwViewStatus
<< ", ";
4060 o2
<< "dwEventCookie = " << pQaControl
->dwEventCookie
<< ", ";
4061 o2
<< "dwPropNotifyCookie = " << pQaControl
->dwPropNotifyCookie
<< ", ";
4062 o2
<< "dwPointerActivationPolicy = " << pQaControl
->dwPointerActivationPolicy
<< ", ";
4066 dbgprintf(TEXT("IQuickActivate::QuickActivate -> %08X, QaControl = %s"), hr
, o2
.str().c_str());
4071 virtual HRESULT STDMETHODCALLTYPE
IQuickActivate::SetContentExtent(LPSIZEL pSizel
)
4073 IQuickActivate
* pIQuickActivate
= getIQuickActivate();
4074 dbgprintf(TEXT("IQuickActivate::SetContentExtent(%s)"), SizeToString(*pSizel
).c_str());
4075 HRESULT hr
= pIQuickActivate
->SetContentExtent(pSizel
);
4076 dbgprintf(TEXT("IQuickActivate::SetContentExtent -> %08X"), hr
);
4080 virtual HRESULT STDMETHODCALLTYPE
IQuickActivate::GetContentExtent(LPSIZEL pSizel
)
4082 IQuickActivate
* pIQuickActivate
= getIQuickActivate();
4083 dbgprintf(TEXT("IQuickActivate::GetContentExtent(%p)"), pSizel
);
4084 HRESULT hr
= pIQuickActivate
->GetContentExtent(pSizel
);
4085 dbgprintf(TEXT("IQuickActivate::GetContentExtent -> %08X, Sizel = %s"), hr
, SizeToString(*pSizel
).c_str());
4089 /* ISpecifyPropertyPages */
4091 std::basic_string
<TCHAR
> CauuidToString(const CAUUID
& cauuid
)
4093 std::basic_ostringstream
<TCHAR
> o
;
4097 for(ULONG i
= 0; i
< cauuid
.cElems
; ++ i
)
4104 o
<< UUIDToString(cauuid
.pElems
[i
]);
4113 virtual HRESULT STDMETHODCALLTYPE
ISpecifyPropertyPages::GetPages(CAUUID
* pPages
)
4115 ISpecifyPropertyPages
* pISpecifyPropertyPages
= getISpecifyPropertyPages();
4116 dbgprintf(TEXT("ISpecifyPropertyPages::GetPages(%p)"), pPages
);
4117 HRESULT hr
= pISpecifyPropertyPages
->GetPages(pPages
);
4118 dbgprintf(TEXT("ISpecifyPropertyPages::GetPages -> %08X, Pages = %s"), hr
, CauuidToString(*pPages
).c_str());
4124 virtual HRESULT STDMETHODCALLTYPE
IViewObject::Draw(DWORD dwDrawAspect
, LONG lindex
, void * pvAspect
, DVTARGETDEVICE
* ptd
, HDC hdcTargetDev
, HDC hdcDraw
, LPCRECTL lprcBounds
, LPCRECTL lprcWBounds
, BOOL (STDMETHODCALLTYPE
* pfnContinue
)(ULONG_PTR dwContinue
), ULONG_PTR dwContinue
)
4126 IViewObject
* pIViewObject
= getIViewObject();
4127 dbgprintf(TEXT("IViewObject::Draw(%s, %ld, %p, %s, %p, %p, %s, %s, %p, %p)"), AspectToString(dwDrawAspect
), lindex
, pvAspect
, TargetDeviceToString(*ptd
).c_str(), hdcTargetDev
, hdcDraw
, RectToString(*lprcBounds
).c_str(), RectToString(*lprcWBounds
).c_str(), pfnContinue
, dwContinue
);
4128 HRESULT hr
= pIViewObject
->Draw(dwDrawAspect
, lindex
, pvAspect
, ptd
, hdcTargetDev
, hdcDraw
, lprcBounds
, lprcWBounds
, pfnContinue
, dwContinue
);
4129 dbgprintf(TEXT("IViewObject::Draw -> %08X"), hr
);
4133 virtual HRESULT STDMETHODCALLTYPE
IViewObject::GetColorSet(DWORD dwDrawAspect
, LONG lindex
, void * pvAspect
, DVTARGETDEVICE
* ptd
, HDC hicTargetDev
, LOGPALETTE
** ppColorSet
)
4135 IViewObject
* pIViewObject
= getIViewObject();
4136 dbgprintf(TEXT("IViewObject::GetColorSet(%s, %ld, %p, %s, %p, %p)"), AspectToString(dwDrawAspect
), lindex
, pvAspect
, TargetDeviceToString(*ptd
).c_str(), hicTargetDev
, ppColorSet
);
4137 HRESULT hr
= pIViewObject
->GetColorSet(dwDrawAspect
, lindex
, pvAspect
, ptd
, hicTargetDev
, ppColorSet
);
4138 dbgprintf(TEXT("IViewObject::GetColorSet -> %08X, pColorSet = %p"), hr
, *ppColorSet
);
4142 virtual HRESULT STDMETHODCALLTYPE
IViewObject::Freeze(DWORD dwDrawAspect
, LONG lindex
, void * pvAspect
, DWORD
* pdwFreeze
)
4144 IViewObject
* pIViewObject
= getIViewObject();
4145 dbgprintf(TEXT("IViewObject::Freeze(%s, %ld, %p, %p)"), AspectToString(dwDrawAspect
), lindex
, pvAspect
, pdwFreeze
);
4146 HRESULT hr
= pIViewObject
->Freeze(dwDrawAspect
, lindex
, pvAspect
, pdwFreeze
);
4147 dbgprintf(TEXT("IViewObject::Freeze -> %08X, dwFreeze = %08X"), hr
, *pdwFreeze
);
4151 virtual HRESULT STDMETHODCALLTYPE
IViewObject::Unfreeze(DWORD dwFreeze
)
4153 IViewObject
* pIViewObject
= getIViewObject();
4154 dbgprintf(TEXT("IViewObject::Unfreeze(%08X)"), dwFreeze
);
4155 HRESULT hr
= pIViewObject
->Unfreeze(dwFreeze
);
4156 dbgprintf(TEXT("IViewObject::Unfreeze -> %08X"), hr
);
4160 virtual HRESULT STDMETHODCALLTYPE
IViewObject::SetAdvise(DWORD aspects
, DWORD advf
, IAdviseSink
* pAdvSink
)
4162 IViewObject
* pIViewObject
= getIViewObject();
4163 dbgprintf(TEXT("IViewObject::SetAdvise(%s, %08X, %p)"), AspectToString(aspects
), advf
, pAdvSink
);
4164 HRESULT hr
= pIViewObject
->SetAdvise(aspects
, advf
, pAdvSink
);
4165 dbgprintf(TEXT("IViewObject::SetAdvise -> %08X"), hr
);
4169 virtual HRESULT STDMETHODCALLTYPE
IViewObject::GetAdvise(DWORD
* pAspects
, DWORD
* pAdvf
, IAdviseSink
** ppAdvSink
)
4171 IViewObject
* pIViewObject
= getIViewObject();
4172 dbgprintf(TEXT("IViewObject::GetAdvise(%p, %p, %p)"), pAspects
, pAdvf
, ppAdvSink
);
4173 HRESULT hr
= pIViewObject
->GetAdvise(pAspects
, pAdvf
, ppAdvSink
);
4174 dbgprintf(TEXT("IViewObject::GetAdvise -> %08X, aspects = %s, advf = %08X, pAdvSink %p"), hr
, AspectToString(*pAspects
), *pAdvf
, *ppAdvSink
);
4180 virtual HRESULT STDMETHODCALLTYPE
IViewObject2::GetExtent(DWORD dwDrawAspect
, LONG lindex
, DVTARGETDEVICE
* ptd
, LPSIZEL lpsizel
)
4182 IViewObject2
* pIViewObject2
= getIViewObject2();
4183 dbgprintf(TEXT("IViewObject2::GetExtent(%s, %ld, %s, %p)"), AspectToString(dwDrawAspect
), lindex
, TargetDeviceToString(*ptd
).c_str(), lpsizel
);
4184 HRESULT hr
= pIViewObject2
->GetExtent(dwDrawAspect
, lindex
, ptd
, lpsizel
);
4185 dbgprintf(TEXT("IViewObject2::GetExtent -> %08X, sizel = %s"), hr
, SizeToString(*lpsizel
).c_str());
4191 virtual HRESULT __stdcall
put_Server(BSTR pServer
)
4193 IMsTscAx
* pIMsTscAx
= getIMsTscAx();
4194 dbgprintf(TEXT("IMsTscAx::put_Server(%ls)"), pServer
);
4195 HRESULT hr
= pIMsTscAx
->put_Server(pServer
);
4196 dbgprintf(TEXT("IMsTscAx::put_Server -> %08X"), hr
);
4200 virtual HRESULT __stdcall
get_Server(BSTR
* pServer
)
4202 IMsTscAx
* pIMsTscAx
= getIMsTscAx();
4203 dbgprintf(TEXT("IMsTscAx::get_Server()"), pServer
);
4204 HRESULT hr
= pIMsTscAx
->get_Server(pServer
);
4205 dbgprintf(TEXT("IMsTscAx::get_Server -> %08X, server = %ls"), hr
, *pServer
);
4209 virtual HRESULT __stdcall
put_Domain(BSTR pDomain
)
4211 IMsTscAx
* pIMsTscAx
= getIMsTscAx();
4212 dbgprintf(TEXT("IMsTscAx::put_Domain(%ls)"), pDomain
);
4213 HRESULT hr
= pIMsTscAx
->put_Domain(pDomain
);
4214 dbgprintf(TEXT("IMsTscAx::put_Domain -> %08X"), hr
);
4218 virtual HRESULT __stdcall
get_Domain(BSTR
* pDomain
)
4220 IMsTscAx
* pIMsTscAx
= getIMsTscAx();
4221 dbgprintf(TEXT("IMsTscAx::get_Domain(%p)"), pDomain
);
4222 HRESULT hr
= pIMsTscAx
->get_Domain(pDomain
);
4223 dbgprintf(TEXT("IMsTscAx::get_Domain -> %08X, Domain = %ls"), hr
, *pDomain
);
4227 virtual HRESULT __stdcall
put_UserName(BSTR pUserName
)
4229 IMsTscAx
* pIMsTscAx
= getIMsTscAx();
4230 dbgprintf(TEXT("IMsTscAx::put_UserName(%ls)"), pUserName
);
4231 HRESULT hr
= pIMsTscAx
->put_UserName(pUserName
);
4232 dbgprintf(TEXT("IMsTscAx::put_UserName -> %08X"), hr
);
4236 virtual HRESULT __stdcall
get_UserName(BSTR
* pUserName
)
4238 IMsTscAx
* pIMsTscAx
= getIMsTscAx();
4239 dbgprintf(TEXT("IMsTscAx::get_UserName(%p)"), pUserName
);
4240 HRESULT hr
= pIMsTscAx
->get_UserName(pUserName
);
4241 dbgprintf(TEXT("IMsTscAx::get_UserName -> %08X, UserName = %ls"), hr
, *pUserName
);
4245 virtual HRESULT __stdcall
put_DisconnectedText(BSTR pDisconnectedText
)
4247 IMsTscAx
* pIMsTscAx
= getIMsTscAx();
4248 dbgprintf(TEXT("IMsTscAx::put_DisconnectedText(%ls)"), pDisconnectedText
);
4249 HRESULT hr
= pIMsTscAx
->put_DisconnectedText(pDisconnectedText
);
4250 dbgprintf(TEXT("IMsTscAx::put_DisconnectedText -> %08X"), hr
);
4254 virtual HRESULT __stdcall
get_DisconnectedText(BSTR
* pDisconnectedText
)
4256 IMsTscAx
* pIMsTscAx
= getIMsTscAx();
4257 dbgprintf(TEXT("IMsTscAx::get_DisconnectedText(%p)"), pDisconnectedText
);
4258 HRESULT hr
= pIMsTscAx
->get_DisconnectedText(pDisconnectedText
);
4259 dbgprintf(TEXT("IMsTscAx::get_DisconnectedText -> %08X, DisconnectedText = %ls"), hr
, *pDisconnectedText
);
4263 virtual HRESULT __stdcall
put_ConnectingText(BSTR pConnectingText
)
4265 IMsTscAx
* pIMsTscAx
= getIMsTscAx();
4266 dbgprintf(TEXT("IMsTscAx::put_ConnectingText(%ls)"), pConnectingText
);
4267 HRESULT hr
= pIMsTscAx
->put_ConnectingText(pConnectingText
);
4268 dbgprintf(TEXT("IMsTscAx::put_ConnectingText -> %08X"), hr
);
4272 virtual HRESULT __stdcall
get_ConnectingText(BSTR
* pConnectingText
)
4274 IMsTscAx
* pIMsTscAx
= getIMsTscAx();
4275 dbgprintf(TEXT("IMsTscAx::get_ConnectingText(%p)"), pConnectingText
);
4276 HRESULT hr
= pIMsTscAx
->get_ConnectingText(pConnectingText
);
4277 dbgprintf(TEXT("IMsTscAx::get_ConnectingText -> %08X, ConnectingText = %ls"), hr
, *pConnectingText
);
4281 virtual HRESULT __stdcall
get_Connected(short * pIsConnected
)
4283 IMsTscAx
* pIMsTscAx
= getIMsTscAx();
4284 dbgprintf(TEXT("IMsTscAx::get_Connected(%p)"), pIsConnected
);
4285 HRESULT hr
= pIMsTscAx
->get_Connected(pIsConnected
);
4286 dbgprintf(TEXT("IMsTscAx::get_Connected -> %08X, IsConnected = %s"), hr
, BooleanToString(*pIsConnected
));
4290 virtual HRESULT __stdcall
put_DesktopWidth(long pVal
)
4292 IMsTscAx
* pIMsTscAx
= getIMsTscAx();
4293 dbgprintf(TEXT("IMsTscAx::put_DesktopWidth(%ld)"), pVal
);
4294 HRESULT hr
= pIMsTscAx
->put_DesktopWidth(pVal
);
4295 dbgprintf(TEXT("IMsTscAx::put_DesktopWidth -> %08X"), hr
);
4299 virtual HRESULT __stdcall
get_DesktopWidth(long * pVal
)
4301 IMsTscAx
* pIMsTscAx
= getIMsTscAx();
4302 dbgprintf(TEXT("IMsTscAx::get_DesktopWidth(%p)"), pVal
);
4303 HRESULT hr
= pIMsTscAx
->get_DesktopWidth(pVal
);
4304 dbgprintf(TEXT("IMsTscAx::get_DesktopWidth -> %08X, Val = %lu"), hr
, *pVal
);
4308 virtual HRESULT __stdcall
put_DesktopHeight(long pVal
)
4310 IMsTscAx
* pIMsTscAx
= getIMsTscAx();
4311 dbgprintf(TEXT("IMsTscAx::put_DesktopHeight(%ld)"), pVal
);
4312 HRESULT hr
= pIMsTscAx
->put_DesktopHeight(pVal
);
4313 dbgprintf(TEXT("IMsTscAx::put_DesktopHeight -> %08X"), hr
);
4317 virtual HRESULT __stdcall
get_DesktopHeight(long * pVal
)
4319 IMsTscAx
* pIMsTscAx
= getIMsTscAx();
4320 dbgprintf(TEXT("IMsTscAx::get_DesktopHeight(%p)"), pVal
);
4321 HRESULT hr
= pIMsTscAx
->get_DesktopHeight(pVal
);
4322 dbgprintf(TEXT("IMsTscAx::get_DesktopHeight -> %08X, Val = %lu"), hr
, *pVal
);
4326 virtual HRESULT __stdcall
put_StartConnected(long pfStartConnected
)
4328 IMsTscAx
* pIMsTscAx
= getIMsTscAx();
4329 dbgprintf(TEXT("IMsTscAx::put_StartConnected(%s)"), BooleanToString(pfStartConnected
));
4330 HRESULT hr
= pIMsTscAx
->put_StartConnected(pfStartConnected
);
4331 dbgprintf(TEXT("IMsTscAx::put_StartConnected -> %08X"), hr
);
4335 virtual HRESULT __stdcall
get_StartConnected(long * pfStartConnected
)
4337 IMsTscAx
* pIMsTscAx
= getIMsTscAx();
4338 dbgprintf(TEXT("IMsTscAx::get_StartConnected(%p)"), pfStartConnected
);
4339 HRESULT hr
= pIMsTscAx
->get_StartConnected(pfStartConnected
);
4340 dbgprintf(TEXT("IMsTscAx::get_StartConnected -> %08X, fStartConnected = %s"), hr
, BooleanToString(*pfStartConnected
));
4344 virtual HRESULT __stdcall
get_HorizontalScrollBarVisible(long * pfHScrollVisible
)
4346 IMsTscAx
* pIMsTscAx
= getIMsTscAx();
4347 dbgprintf(TEXT("IMsTscAx::get_HorizontalScrollBarVisible(%p)"), pfHScrollVisible
);
4348 HRESULT hr
= pIMsTscAx
->get_HorizontalScrollBarVisible(pfHScrollVisible
);
4349 dbgprintf(TEXT("IMsTscAx::get_HorizontalScrollBarVisible -> %08X, fHScrollVisible = %s"), hr
, BooleanToString(*pfHScrollVisible
));
4353 virtual HRESULT __stdcall
get_VerticalScrollBarVisible(long * pfVScrollVisible
)
4355 IMsTscAx
* pIMsTscAx
= getIMsTscAx();
4356 dbgprintf(TEXT("IMsTscAx::get_VerticalScrollBarVisible(%p)"), pfVScrollVisible
);
4357 HRESULT hr
= pIMsTscAx
->get_VerticalScrollBarVisible(pfVScrollVisible
);
4358 dbgprintf(TEXT("IMsTscAx::get_VerticalScrollBarVisible -> %08X, fVScrollVisible"), hr
, *pfVScrollVisible
);
4362 virtual HRESULT __stdcall
put_FullScreenTitle(BSTR _arg1
)
4364 IMsTscAx
* pIMsTscAx
= getIMsTscAx();
4365 dbgprintf(TEXT("IMsTscAx::put_FullScreenTitle(%ls)"), _arg1
);
4366 HRESULT hr
= pIMsTscAx
->put_FullScreenTitle(_arg1
);
4367 dbgprintf(TEXT("IMsTscAx::put_FullScreenTitle -> %08X"), hr
);
4371 virtual HRESULT __stdcall
get_CipherStrength(long * pCipherStrength
)
4373 IMsTscAx
* pIMsTscAx
= getIMsTscAx();
4374 dbgprintf(TEXT("IMsTscAx::get_CipherStrength(%p)"), pCipherStrength
);
4375 HRESULT hr
= pIMsTscAx
->get_CipherStrength(pCipherStrength
);
4376 dbgprintf(TEXT("IMsTscAx::get_CipherStrength -> %08X, CipherStrength = %ld"), hr
, *pCipherStrength
);
4380 virtual HRESULT __stdcall
get_Version(BSTR
* pVersion
)
4382 IMsTscAx
* pIMsTscAx
= getIMsTscAx();
4383 dbgprintf(TEXT("IMsTscAx::get_Version(%p)"), pVersion
);
4384 HRESULT hr
= pIMsTscAx
->get_Version(pVersion
);
4385 dbgprintf(TEXT("IMsTscAx::get_Version -> %08X, Version = %ls"), hr
, *pVersion
);
4389 virtual HRESULT __stdcall
get_SecuredSettingsEnabled(long * pSecuredSettingsEnabled
)
4391 IMsTscAx
* pIMsTscAx
= getIMsTscAx();
4392 dbgprintf(TEXT("IMsTscAx::get_SecuredSettingsEnabled(%p)"), pSecuredSettingsEnabled
);
4393 HRESULT hr
= pIMsTscAx
->get_SecuredSettingsEnabled(pSecuredSettingsEnabled
);
4394 dbgprintf(TEXT("IMsTscAx::get_SecuredSettingsEnabled -> %08X, SecuredSettingsEnabled = %s"), hr
, BooleanToString(*pSecuredSettingsEnabled
));
4398 virtual HRESULT __stdcall
get_SecuredSettings(IMsTscSecuredSettings
** ppSecuredSettings
)
4400 IMsTscAx
* pIMsTscAx
= getIMsTscAx();
4401 dbgprintf(TEXT("IMsTscAx::get_SecuredSettings(%p)"), ppSecuredSettings
);
4402 HRESULT hr
= pIMsTscAx
->get_SecuredSettings(ppSecuredSettings
);
4403 dbgprintf(TEXT("IMsTscAx::get_SecuredSettings -> %08X, pSecuredSettings = %p"), hr
, *ppSecuredSettings
);
4407 virtual HRESULT __stdcall
get_AdvancedSettings(IMsTscAdvancedSettings
** ppAdvSettings
)
4409 IMsTscAx
* pIMsTscAx
= getIMsTscAx();
4410 dbgprintf(TEXT("IMsTscAx::get_AdvancedSettings(%p)"), ppAdvSettings
);
4411 HRESULT hr
= pIMsTscAx
->get_AdvancedSettings(ppAdvSettings
);
4412 dbgprintf(TEXT("IMsTscAx::get_AdvancedSettings -> %08X, pAdvSettings = %p"), hr
, *ppAdvSettings
);
4415 *ppAdvSettings
= new CAdvancedSettings(*ppAdvSettings
);
4420 virtual HRESULT __stdcall
get_Debugger(IMsTscDebug
** ppDebugger
)
4422 IMsTscAx
* pIMsTscAx
= getIMsTscAx();
4423 dbgprintf(TEXT("IMsTscAx::get_Debugger(%p)"), ppDebugger
);
4424 HRESULT hr
= pIMsTscAx
->get_Debugger(ppDebugger
);
4425 dbgprintf(TEXT("IMsTscAx::get_Debugger -> %08X, pDebugger = %p"), hr
, *ppDebugger
);
4429 virtual HRESULT __stdcall
Connect()
4431 IMsTscAx
* pIMsTscAx
= getIMsTscAx();
4432 dbgprintf(TEXT("IMsTscAx::Connect()"));
4433 HRESULT hr
= pIMsTscAx
->Connect();
4434 dbgprintf(TEXT("IMsTscAx::Connect -> %08X"), hr
);
4438 virtual HRESULT __stdcall
Disconnect()
4440 IMsTscAx
* pIMsTscAx
= getIMsTscAx();
4441 dbgprintf(TEXT("IMsTscAx::Disconnect()"));
4442 HRESULT hr
= pIMsTscAx
->Disconnect();
4443 dbgprintf(TEXT("IMsTscAx::Disconnect -> %08X"), hr
);
4447 virtual HRESULT __stdcall
CreateVirtualChannels(BSTR newVal
)
4449 IMsTscAx
* pIMsTscAx
= getIMsTscAx();
4450 dbgprintf(TEXT("IMsTscAx::CreateVirtualChannels(%ls)"), newVal
);
4451 HRESULT hr
= pIMsTscAx
->CreateVirtualChannels(newVal
);
4452 dbgprintf(TEXT("IMsTscAx::CreateVirtualChannels -> %08X"), hr
);
4456 virtual HRESULT __stdcall
SendOnVirtualChannel(BSTR chanName
, BSTR ChanData
)
4458 IMsTscAx
* pIMsTscAx
= getIMsTscAx();
4459 dbgprintf(TEXT("IMsTscAx::SendOnVirtualChannel(%ls, %p)"), chanName
, ChanData
);
4460 HRESULT hr
= pIMsTscAx
->SendOnVirtualChannel(chanName
, ChanData
);
4461 dbgprintf(TEXT("IMsTscAx::SendOnVirtualChannel -> %08X"), hr
);
4467 virtual HRESULT __stdcall
put_ColorDepth(long pcolorDepth
)
4469 IMsRdpClient
* pIMsRdpClient
= getIMsRdpClient();
4470 dbgprintf(TEXT("IMsRdpClient::put_ColorDepth(%ld)"), pcolorDepth
);
4471 HRESULT hr
= pIMsRdpClient
->put_ColorDepth(pcolorDepth
);
4472 dbgprintf(TEXT("IMsRdpClient::put_ColorDepth -> %08X"), hr
);
4476 virtual HRESULT __stdcall
get_ColorDepth(long * pcolorDepth
)
4478 IMsRdpClient
* pIMsRdpClient
= getIMsRdpClient();
4479 dbgprintf(TEXT("IMsRdpClient::get_ColorDepth(%p)"), pcolorDepth
);
4480 HRESULT hr
= pIMsRdpClient
->get_ColorDepth(pcolorDepth
);
4481 dbgprintf(TEXT("IMsRdpClient::get_ColorDepth -> %08X, colorDepth = %ld"), hr
, *pcolorDepth
);
4485 virtual HRESULT __stdcall
get_AdvancedSettings2(IMsRdpClientAdvancedSettings
** ppAdvSettings
)
4487 IMsRdpClient
* pIMsRdpClient
= getIMsRdpClient();
4488 dbgprintf(TEXT("IMsRdpClient::get_AdvancedSettings2(%p)"), ppAdvSettings
);
4489 HRESULT hr
= pIMsRdpClient
->get_AdvancedSettings2(ppAdvSettings
);
4490 dbgprintf(TEXT("IMsRdpClient::get_AdvancedSettings2 -> %08X, pAdvSettings = %p"), hr
, *ppAdvSettings
);
4493 *ppAdvSettings
= new CAdvancedSettings(*ppAdvSettings
);
4498 virtual HRESULT __stdcall
get_SecuredSettings2(IMsRdpClientSecuredSettings
** ppSecuredSettings
)
4500 IMsRdpClient
* pIMsRdpClient
= getIMsRdpClient();
4501 dbgprintf(TEXT("IMsRdpClient::get_SecuredSettings2(%p)"), ppSecuredSettings
);
4502 HRESULT hr
= pIMsRdpClient
->get_SecuredSettings2(ppSecuredSettings
);
4503 dbgprintf(TEXT("IMsRdpClient::get_SecuredSettings2 -> %08X, pSecuredSettings = %p"), hr
, *ppSecuredSettings
);
4507 virtual HRESULT __stdcall
get_ExtendedDisconnectReason(ExtendedDisconnectReasonCode
* pExtendedDisconnectReason
)
4509 IMsRdpClient
* pIMsRdpClient
= getIMsRdpClient();
4510 dbgprintf(TEXT("IMsRdpClient::get_ExtendedDisconnectReason(%p)"), pExtendedDisconnectReason
);
4511 HRESULT hr
= pIMsRdpClient
->get_ExtendedDisconnectReason(pExtendedDisconnectReason
);
4512 dbgprintf(TEXT("IMsRdpClient::get_ExtendedDisconnectReason -> %08X, ExtendedDisconnectReason = %u"), hr
, *pExtendedDisconnectReason
);
4516 virtual HRESULT __stdcall
put_FullScreen(VARIANT_BOOL pfFullScreen
)
4518 IMsRdpClient
* pIMsRdpClient
= getIMsRdpClient();
4519 dbgprintf(TEXT("IMsRdpClient::put_FullScreen(%s)"), BooleanToString(pfFullScreen
));
4520 HRESULT hr
= pIMsRdpClient
->put_FullScreen(pfFullScreen
);
4521 dbgprintf(TEXT("IMsRdpClient::put_FullScreen -> %08X"), hr
);
4525 virtual HRESULT __stdcall
get_FullScreen(VARIANT_BOOL
* pfFullScreen
)
4527 IMsRdpClient
* pIMsRdpClient
= getIMsRdpClient();
4528 dbgprintf(TEXT("IMsRdpClient::get_FullScreen(%p)"), pfFullScreen
);
4529 HRESULT hr
= pIMsRdpClient
->get_FullScreen(pfFullScreen
);
4530 dbgprintf(TEXT("IMsRdpClient::get_FullScreen -> %08X, pfFullScreen = %s"), hr
, BooleanToString(*pfFullScreen
));
4534 virtual HRESULT __stdcall
SetVirtualChannelOptions(BSTR chanName
, long chanOptions
)
4536 IMsRdpClient
* pIMsRdpClient
= getIMsRdpClient();
4537 dbgprintf(TEXT("IMsRdpClient::SetVirtualChannelOptions(%ls, %08X)"), chanName
, chanOptions
);
4538 HRESULT hr
= pIMsRdpClient
->SetVirtualChannelOptions(chanName
, chanOptions
);
4539 dbgprintf(TEXT("IMsRdpClient::SetVirtualChannelOptions -> %08X"), hr
);
4543 virtual HRESULT __stdcall
GetVirtualChannelOptions(BSTR chanName
, long * pChanOptions
)
4545 IMsRdpClient
* pIMsRdpClient
= getIMsRdpClient();
4546 dbgprintf(TEXT("IMsRdpClient::GetVirtualChannelOptions(%ls, %p)"), chanName
, pChanOptions
);
4547 HRESULT hr
= pIMsRdpClient
->GetVirtualChannelOptions(chanName
, pChanOptions
);
4548 dbgprintf(TEXT("IMsRdpClient::GetVirtualChannelOptions -> %08X, ChanOptions = %08X"), hr
, *pChanOptions
);
4552 virtual HRESULT __stdcall
RequestClose(ControlCloseStatus
* pCloseStatus
)
4554 IMsRdpClient
* pIMsRdpClient
= getIMsRdpClient();
4555 dbgprintf(TEXT("IMsRdpClient::RequestClose(%p)"), pCloseStatus
);
4556 HRESULT hr
= pIMsRdpClient
->RequestClose(pCloseStatus
);
4557 dbgprintf(TEXT("IMsRdpClient::RequestClose -> %08X, CloseStatus = %ld"), hr
, *pCloseStatus
);
4563 virtual HRESULT __stdcall
get_AdvancedSettings3(IMsRdpClientAdvancedSettings2
** ppAdvSettings
)
4565 IMsRdpClient2
* pIMsRdpClient2
= getIMsRdpClient2();
4566 dbgprintf(TEXT("IMsRdpClient2::get_AdvancedSettings3(%p)"), ppAdvSettings
);
4567 HRESULT hr
= pIMsRdpClient2
->get_AdvancedSettings3(ppAdvSettings
);
4568 dbgprintf(TEXT("IMsRdpClient2::get_AdvancedSettings3 -> %08X, pAdvSettings = %p"), hr
, *ppAdvSettings
);
4571 *ppAdvSettings
= new CAdvancedSettings(*ppAdvSettings
);
4576 virtual HRESULT __stdcall
put_ConnectedStatusText(BSTR pConnectedStatusText
)
4578 IMsRdpClient2
* pIMsRdpClient2
= getIMsRdpClient2();
4579 dbgprintf(TEXT("IMsRdpClient2::put_ConnectedStatusText(%ls)"), pConnectedStatusText
);
4580 HRESULT hr
= pIMsRdpClient2
->put_ConnectedStatusText(pConnectedStatusText
);
4581 dbgprintf(TEXT("IMsRdpClient2::put_ConnectedStatusText -> %08X"), hr
);
4585 virtual HRESULT __stdcall
get_ConnectedStatusText(BSTR
* pConnectedStatusText
)
4587 IMsRdpClient2
* pIMsRdpClient2
= getIMsRdpClient2();
4588 dbgprintf(TEXT("IMsRdpClient2::get_ConnectedStatusText(%p)"), pConnectedStatusText
);
4589 HRESULT hr
= pIMsRdpClient2
->get_ConnectedStatusText(pConnectedStatusText
);
4590 dbgprintf(TEXT("IMsRdpClient2::get_ConnectedStatusText -> %08X, ConnectedStatusText = %ls"), hr
, *pConnectedStatusText
);
4596 virtual HRESULT __stdcall
get_AdvancedSettings4(IMsRdpClientAdvancedSettings3
** ppAdvSettings
)
4598 IMsRdpClient3
* pIMsRdpClient3
= getIMsRdpClient3();
4599 dbgprintf(TEXT("IMsRdpClient3::get_AdvancedSettings4(%p)"), ppAdvSettings
);
4600 HRESULT hr
= pIMsRdpClient3
->get_AdvancedSettings4(ppAdvSettings
);
4601 dbgprintf(TEXT("IMsRdpClient3::get_AdvancedSettings4 -> %08X, pAdvSettings = %p"), hr
, *ppAdvSettings
);
4604 *ppAdvSettings
= new CAdvancedSettings(*ppAdvSettings
);
4611 virtual HRESULT __stdcall
get_AdvancedSettings5(IMsRdpClientAdvancedSettings4
** ppAdvSettings5
)
4613 IMsRdpClient4
* pIMsRdpClient4
= getIMsRdpClient4();
4614 dbgprintf(TEXT("IMsRdpClient4::get_AdvancedSettings5(%p)"), ppAdvSettings5
);
4615 HRESULT hr
= pIMsRdpClient4
->get_AdvancedSettings5(ppAdvSettings5
);
4616 dbgprintf(TEXT("IMsRdpClient4::get_AdvancedSettings5 -> %08X, pAdvSettings5 = %p"), hr
, *ppAdvSettings5
);
4619 *ppAdvSettings5
= new CAdvancedSettings(*ppAdvSettings5
);
4624 /* IMsTscNonScriptable */
4626 virtual HRESULT __stdcall
put_ClearTextPassword(BSTR _arg1
)
4628 IMsTscNonScriptable
* pIMsTscNonScriptable
= getIMsTscNonScriptable();
4629 dbgprintf(TEXT("IMsTscNonScriptable::put_ClearTextPassword(%ls)"), _arg1
);
4630 HRESULT hr
= pIMsTscNonScriptable
->put_ClearTextPassword(_arg1
);
4631 dbgprintf(TEXT("IMsTscNonScriptable::put_ClearTextPassword -> %08X"), hr
);
4635 virtual HRESULT __stdcall
put_PortablePassword(BSTR pPortablePass
)
4637 IMsTscNonScriptable
* pIMsTscNonScriptable
= getIMsTscNonScriptable();
4638 dbgprintf(TEXT("IMsTscNonScriptable::put_PortablePassword(%ls)"), pPortablePass
);
4639 HRESULT hr
= pIMsTscNonScriptable
->put_PortablePassword(pPortablePass
);
4640 dbgprintf(TEXT("IMsTscNonScriptable::put_PortablePassword -> %08X"), hr
);
4644 virtual HRESULT __stdcall
get_PortablePassword(BSTR
* pPortablePass
)
4646 IMsTscNonScriptable
* pIMsTscNonScriptable
= getIMsTscNonScriptable();
4647 dbgprintf(TEXT("IMsTscNonScriptable::get_PortablePassword(%p)"), pPortablePass
);
4648 HRESULT hr
= pIMsTscNonScriptable
->get_PortablePassword(pPortablePass
);
4649 dbgprintf(TEXT("IMsTscNonScriptable::get_PortablePassword -> %08X, PortablePass = %ls"), hr
, *pPortablePass
);
4653 virtual HRESULT __stdcall
put_PortableSalt(BSTR pPortableSalt
)
4655 IMsTscNonScriptable
* pIMsTscNonScriptable
= getIMsTscNonScriptable();
4656 dbgprintf(TEXT("IMsTscNonScriptable::put_PortableSalt(%ls)"), pPortableSalt
);
4657 HRESULT hr
= pIMsTscNonScriptable
->put_PortableSalt(pPortableSalt
);
4658 dbgprintf(TEXT("IMsTscNonScriptable::put_PortableSalt -> %08X"), hr
);
4662 virtual HRESULT __stdcall
get_PortableSalt(BSTR
* pPortableSalt
)
4664 IMsTscNonScriptable
* pIMsTscNonScriptable
= getIMsTscNonScriptable();
4665 dbgprintf(TEXT("IMsTscNonScriptable::get_PortableSalt()"), pPortableSalt
);
4666 HRESULT hr
= pIMsTscNonScriptable
->get_PortableSalt(pPortableSalt
);
4667 dbgprintf(TEXT("IMsTscNonScriptable::get_PortableSalt -> %08X, PortableSalt = %ls"), hr
, *pPortableSalt
);
4671 virtual HRESULT __stdcall
put_BinaryPassword(BSTR pBinaryPassword
)
4673 IMsTscNonScriptable
* pIMsTscNonScriptable
= getIMsTscNonScriptable();
4674 dbgprintf(TEXT("IMsTscNonScriptable::put_BinaryPassword(%p)"), pBinaryPassword
);
4675 HRESULT hr
= pIMsTscNonScriptable
->put_BinaryPassword(pBinaryPassword
);
4676 dbgprintf(TEXT("IMsTscNonScriptable::put_BinaryPassword -> %08X"), hr
);
4680 virtual HRESULT __stdcall
get_BinaryPassword(BSTR
* pBinaryPassword
)
4682 IMsTscNonScriptable
* pIMsTscNonScriptable
= getIMsTscNonScriptable();
4683 dbgprintf(TEXT("IMsTscNonScriptable::get_BinaryPassword()"), pBinaryPassword
);
4684 HRESULT hr
= pIMsTscNonScriptable
->get_BinaryPassword(pBinaryPassword
);
4685 dbgprintf(TEXT("IMsTscNonScriptable::get_BinaryPassword -> %08X, BinaryPassword = %ls"), hr
, *pBinaryPassword
);
4689 virtual HRESULT __stdcall
put_BinarySalt(BSTR pSalt
)
4691 IMsTscNonScriptable
* pIMsTscNonScriptable
= getIMsTscNonScriptable();
4692 dbgprintf(TEXT("IMsTscNonScriptable::put_BinarySalt(%p)"), pSalt
);
4693 HRESULT hr
= pIMsTscNonScriptable
->put_BinarySalt(pSalt
);
4694 dbgprintf(TEXT("IMsTscNonScriptable::put_BinarySalt -> %08X"), hr
);
4698 virtual HRESULT __stdcall
get_BinarySalt(BSTR
* pSalt
)
4700 IMsTscNonScriptable
* pIMsTscNonScriptable
= getIMsTscNonScriptable();
4701 dbgprintf(TEXT("IMsTscNonScriptable::get_BinarySalt()"), pSalt
);
4702 HRESULT hr
= pIMsTscNonScriptable
->get_BinarySalt(pSalt
);
4703 dbgprintf(TEXT("IMsTscNonScriptable::get_BinarySalt -> %08X, pSalt = %ls"), hr
, *pSalt
);
4707 virtual HRESULT __stdcall
ResetPassword()
4709 IMsTscNonScriptable
* pIMsTscNonScriptable
= getIMsTscNonScriptable();
4710 dbgprintf(TEXT("IMsTscNonScriptable::ResetPassword()"));
4711 HRESULT hr
= pIMsTscNonScriptable
->ResetPassword();
4712 dbgprintf(TEXT("IMsTscNonScriptable::ResetPassword -> %08X"), hr
);
4717 /* IMsRdpClientNonScriptable */
4719 virtual HRESULT __stdcall
IMsRdpClientNonScriptable::NotifyRedirectDeviceChange(UINT_PTR wParam
, LONG_PTR lParam
)
4721 IMsRdpClientNonScriptable
* pIMsRdpClientNonScriptable
= getIMsRdpClientNonScriptable();
4722 dbgprintf(TEXT("IMsRdpClientNonScriptable::NotifyRedirectDeviceChange(%p, %p)"), wParam
, lParam
);
4723 HRESULT hr
= pIMsRdpClientNonScriptable
->NotifyRedirectDeviceChange(wParam
, lParam
);
4724 dbgprintf(TEXT("IMsRdpClientNonScriptable::NotifyRedirectDeviceChange -> %08X"), hr
);
4728 virtual HRESULT __stdcall
IMsRdpClientNonScriptable::SendKeys(long numKeys
, VARIANT_BOOL
* pbArrayKeyUp
, long * plKeyData
) // TBD
4730 IMsRdpClientNonScriptable
* pIMsRdpClientNonScriptable
= getIMsRdpClientNonScriptable();
4731 dbgprintf(TEXT("IMsRdpClientNonScriptable::SendKeys(%ld, %p, %p)"), numKeys
, pbArrayKeyUp
, plKeyData
);
4732 HRESULT hr
= pIMsRdpClientNonScriptable
->SendKeys(numKeys
, pbArrayKeyUp
, plKeyData
);
4733 dbgprintf(TEXT("IMsRdpClientNonScriptable::SendKeys -> %08X"), hr
);
4737 /* IMsRdpClientNonScriptable2 */
4739 virtual HRESULT __stdcall
IMsRdpClientNonScriptable2::put_UIParentWindowHandle(wireHWND phwndUIParentWindowHandle
)
4741 IMsRdpClientNonScriptable2
* pIMsRdpClientNonScriptable2
= getIMsRdpClientNonScriptable2();
4742 dbgprintf(TEXT("IMsRdpClientNonScriptable2::put_UIParentWindowHandle(%p)"), phwndUIParentWindowHandle
);
4743 HRESULT hr
= pIMsRdpClientNonScriptable2
->put_UIParentWindowHandle(phwndUIParentWindowHandle
);
4744 dbgprintf(TEXT("IMsRdpClientNonScriptable2::put_UIParentWindowHandle -> %08X"), hr
);
4748 virtual HRESULT __stdcall
IMsRdpClientNonScriptable2::get_UIParentWindowHandle(wireHWND
* phwndUIParentWindowHandle
)
4750 IMsRdpClientNonScriptable2
* pIMsRdpClientNonScriptable2
= getIMsRdpClientNonScriptable2();
4751 dbgprintf(TEXT("IMsRdpClientNonScriptable2::get_UIParentWindowHandle(%p)"), phwndUIParentWindowHandle
);
4752 HRESULT hr
= pIMsRdpClientNonScriptable2
->get_UIParentWindowHandle(phwndUIParentWindowHandle
);
4753 dbgprintf(TEXT("IMsRdpClientNonScriptable2::get_UIParentWindowHandle -> %08X, hwndUIParentWindowHandle = %p"), hr
, *phwndUIParentWindowHandle
);
4760 dbgprintf(TEXT("::()"), );
4762 dbgprintf(TEXT(":: -> %08X, "), hr, );
4768 class ClassFactory
: public IClassFactory2
4772 IUnknown
* m_IUnknown
;
4773 IClassFactory
* m_IClassFactory
;
4774 IClassFactory2
* m_IClassFactory2
;
4776 IClassFactory
* getIClassFactory()
4779 return m_IClassFactory
;
4781 if(m_IClassFactory2
)
4782 m_IClassFactory
= m_IClassFactory2
;
4786 m_IClassFactory
->AddRef();
4787 return m_IClassFactory
;
4790 m_IUnknown
->QueryInterface(&m_IClassFactory
);
4791 return m_IClassFactory
;
4794 IClassFactory2
* getIClassFactory2()
4796 if(m_IClassFactory2
)
4797 return m_IClassFactory2
;
4799 m_IUnknown
->QueryInterface(&m_IClassFactory2
);
4800 return m_IClassFactory2
;
4804 ClassFactory(IUnknown
* pUnknwn
):
4806 m_IUnknown(pUnknwn
),
4807 m_IClassFactory(NULL
),
4808 m_IClassFactory2(NULL
)
4810 m_IUnknown
->AddRef();
4816 m_IUnknown
->Release();
4819 m_IClassFactory
->Release();
4821 if(m_IClassFactory2
)
4822 m_IClassFactory2
->Release();
4827 virtual HRESULT STDMETHODCALLTYPE
QueryInterface(REFIID riid
, void ** ppvObject
)
4830 IUnknown
* pvObject
= NULL
;
4832 dbgprintf(TEXT("IUnknown::QueryInterface(%ls, %p)"), UUIDToString(riid
).c_str(), ppvObject
);
4835 if(riid == IID_IUnknown) \
4838 pvObject = (IUnknown *)(this); \
4842 else if(riid == IID_ ## I) \
4846 m_ ## I->AddRef(); \
4851 hr = m_IUnknown->QueryInterface(&m_ ## I); \
4855 pvObject = static_cast<I *>(this); \
4861 hr = E_NOINTERFACE; \
4881 assert(pvObject
== NULL
);
4884 *ppvObject
= pvObject
;
4886 dbgprintf(TEXT("IUnknown::QueryInterface -> %08X, ppvObject = %p"), hr
, *ppvObject
);
4890 virtual ULONG STDMETHODCALLTYPE
AddRef(void)
4892 return InterlockedIncrement(&m_refCount
);
4895 virtual ULONG STDMETHODCALLTYPE
Release(void)
4897 LONG n
= InterlockedDecrement(&m_refCount
);
4907 virtual HRESULT STDMETHODCALLTYPE
CreateInstance(IUnknown
* pUnkOuter
, REFIID riid
, void ** ppvObject
)
4909 IClassFactory
* pIClassFactory
= getIClassFactory();
4910 dbgprintf(TEXT("IClassFactory::CreateInstance(%p, %ls, %p)"), pUnkOuter
, UUIDToString(riid
).c_str(), ppvObject
);
4911 HRESULT hr
= pIClassFactory
->CreateInstance(NULL
, riid
, ppvObject
);
4912 dbgprintf(TEXT("IClassFactory::CreateInstance -> %08X, pvObject = %p"), hr
, *ppvObject
);
4913 return CoClass::CreateInstance((IUnknown
*)*ppvObject
, pUnkOuter
, riid
, ppvObject
);
4916 virtual HRESULT STDMETHODCALLTYPE
LockServer(BOOL fLock
)
4918 IClassFactory
* pIClassFactory
= getIClassFactory();
4919 dbgprintf(TEXT("IClassFactory::LockServer(%s)"), BooleanToString(fLock
));
4920 HRESULT hr
= pIClassFactory
->LockServer(fLock
);
4921 dbgprintf(TEXT("IClassFactory::LockServer -> %08X"), hr
);
4925 /* IClassFactory2 */
4927 virtual HRESULT STDMETHODCALLTYPE
GetLicInfo(LICINFO
* pLicInfo
)
4929 IClassFactory2
* pIClassFactory2
= getIClassFactory2();
4930 dbgprintf(TEXT("IClassFactory2::GetLicInfo(%p)"), pLicInfo
);
4931 HRESULT hr
= pIClassFactory2
->GetLicInfo(pLicInfo
);
4932 dbgprintf(TEXT("IClassFactory2::GetLicInfo -> %08X, LicInfo = %p"), hr
, pLicInfo
);
4936 virtual HRESULT STDMETHODCALLTYPE
RequestLicKey(DWORD dwReserved
, BSTR
* pBstrKey
)
4938 IClassFactory2
* pIClassFactory2
= getIClassFactory2();
4939 dbgprintf(TEXT("IClassFactory2::RequestLicKey(%lu, %p)"), dwReserved
, pBstrKey
);
4940 HRESULT hr
= pIClassFactory2
->RequestLicKey(dwReserved
, pBstrKey
);
4941 dbgprintf(TEXT("IClassFactory2::RequestLicKey -> %08X, bstrKey = %ls"), hr
, *pBstrKey
);
4945 virtual HRESULT STDMETHODCALLTYPE
CreateInstanceLic(IUnknown
* pUnkOuter
, IUnknown
* pUnkReserved
, REFIID riid
, BSTR bstrKey
, PVOID
* ppvObj
)
4947 IClassFactory2
* pIClassFactory2
= getIClassFactory2();
4948 dbgprintf(TEXT("IClassFactory2::CreateInstanceLic(%p, %p, %ls, %ls, %p)"), pUnkOuter
, pUnkReserved
, UUIDToString(riid
).c_str(), bstrKey
, ppvObj
);
4949 HRESULT hr
= pIClassFactory2
->CreateInstanceLic(NULL
, pUnkReserved
, riid
, bstrKey
, ppvObj
);
4950 dbgprintf(TEXT("IClassFactory2::CreateInstanceLic -> %08X, pvObj = %p"), hr
, *ppvObj
);
4951 return CoClass::CreateInstance((IUnknown
*)*ppvObj
, pUnkOuter
, riid
, ppvObj
);
4955 STDAPI
DllGetClassObject(IN REFCLSID rclsid
, IN REFIID riid
, OUT LPVOID
* ppv
)
4959 dbgprintf(TEXT("DllGetClassObject(%ls, %ls, %p)"), UUIDToString(rclsid
).c_str(), UUIDToString(riid
).c_str(), ppv
);
4960 HRESULT hr
= pfnDllGetClassObject(rclsid
, IID_IUnknown
, ppv
);
4961 dbgprintf(TEXT("DllGetClassObject -> %08X, pv = %p"), hr
, *ppv
);
4963 IUnknown
* pv
= NULL
;
4967 IUnknown
* punk
= (IUnknown
*)*ppv
;
4969 if(rclsid
== CLSID_MsTscAx
|| rclsid
== CLSID_MsRdpClient
|| rclsid
== CLSID_MsRdpClient2
|| rclsid
== CLSID_MsRdpClient3
|| rclsid
== CLSID_MsRdpClient4
)
4970 pv
= new ClassFactory(punk
);
4972 hr
= CLASS_E_CLASSNOTAVAILABLE
;
4979 hr
= pv
->QueryInterface(riid
, ppv
);
4988 STDAPI
DllCanUnloadNow(void)
4992 dbgprintf(TEXT("DllCanUnloadNow()"));
4993 HRESULT hr
= pfnDllCanUnloadNow();
4994 dbgprintf(TEXT("DllCanUnloadNow -> %08X"), hr
);
4999 STDAPI_(ULONG
) DllGetTscCtlVer(void)
5003 dbgprintf(TEXT("DllGetTscCtlVer()"));
5004 ULONG ul
= pfnDllGetTscCtlVer();
5005 dbgprintf(TEXT("DllGetTscCtlVer-> %08X"), ul
);