mirror of
https://github.com/ApfelTeeSaft/reactos.git
synced 2026-09-02 12:23:31 +00:00
modified porting-tools/mstscax/mstscax.cpp
Guard against NULL pointers in certain methods Append a newline to debug messages Support a couple forgotten VARIANT types Corrected implementations of IUnknown::QueryInterface Better debug output for IDispatch::GetIDsOfNames and IDispatch::Invoke Debug output for IQuickActivate modified porting-tools/rdesktop-core-tester/activex.cpp Way too many changes to list. Basically, I wrote an ActiveX control without any help from third party libraries such as ATL. It was educative, but not terribly fun. Very nearly there All properties of the control are now supported, aligned to the behavior of the original control, version 5.2. Parameter validation and range enforcement eveeywhere modified porting-tools/rdesktop-core-tester/mstsclib.idl Reindented Removed explicit __stdcall convention Added alternate interface ids/class ids for compatibility with the msrdp.ocx redistributable. Code does not support this yet modified porting-tools/rdesktop-core-tester/mstsclib.rc added porting-tools/rdesktop-core-tester/mstsclib_redist.idl added porting-tools/rdesktop-core-tester/mstsclib_redist.rc modified porting-tools/rdesktop-core-tester/rdesktop-core-tester.vcproj added porting-tools/rdesktop-core-tester/typelib.rh Support two type libraries for compatibility with the msrdp.ocx redistributable. Code does not support this yet modified porting-tools/rdesktop-core-tester/mstsclib_h.h modified porting-tools/rdesktop-core-tester/mstsclib_i.c added porting-tools/rdesktop-core-tester/mstsclib_redist_h.h added porting-tools/rdesktop-core-tester/mstsclib_redist_i.c Auto-generated files, for the poor souls without MIDL modified porting-tools/rdesktop-core-tester/stdafx.h Added missing OLE header Corrected typo svn path=/trunk/; revision=23564
This commit is contained in:
@@ -31,7 +31,7 @@ namespace
|
||||
std::basic_string<TCHAR>::const_iterator endPath = std::find(begin, end, TEXT('\\')).base();
|
||||
|
||||
std::basic_string<TCHAR> strPath(strFileName.begin(), endPath);
|
||||
strPath.append(TEXT("mstscax_.dll"));
|
||||
strPath.append(TEXT("original\\mstscax.dll"));
|
||||
|
||||
hmMstscax = LoadLibrary(strPath.c_str());
|
||||
pfnDllGetClassObject = (PFNDLLGETCLASSOBJECT)GetProcAddress(hmMstscax, "DllGetClassObject");
|
||||
@@ -48,6 +48,8 @@ namespace
|
||||
StringCbVPrintf(buf, sizeof(buf), fmt, args);
|
||||
va_end(args);
|
||||
|
||||
StringCbCat(buf, sizeof(buf), TEXT("\n"));
|
||||
|
||||
OutputDebugString(buf);
|
||||
}
|
||||
|
||||
@@ -131,6 +133,9 @@ namespace
|
||||
|
||||
std::basic_string<TCHAR> RectToString(const RECT& rc)
|
||||
{
|
||||
if(&rc == NULL)
|
||||
return TEXT("<null>");
|
||||
|
||||
std::basic_ostringstream<TCHAR> o;
|
||||
o << "{" << " left:" << rc.left << " top:" << rc.top << " right:" << rc.right << " bottom:" << rc.bottom << " }";
|
||||
return o.str();
|
||||
@@ -138,6 +143,9 @@ namespace
|
||||
|
||||
std::basic_string<TCHAR> RectToString(const RECTL& rc)
|
||||
{
|
||||
if(&rc == NULL)
|
||||
return TEXT("<null>");
|
||||
|
||||
std::basic_ostringstream<TCHAR> o;
|
||||
o << "{" << " left:" << rc.left << " top:" << rc.top << " right:" << rc.right << " bottom:" << rc.bottom << " }";
|
||||
return o.str();
|
||||
@@ -145,6 +153,9 @@ namespace
|
||||
|
||||
std::basic_string<TCHAR> SizeToString(const SIZE& sz)
|
||||
{
|
||||
if(&sz == NULL)
|
||||
return TEXT("<null>");
|
||||
|
||||
std::basic_ostringstream<TCHAR> o;
|
||||
o << "{ " << " cx:" << sz.cx << " cy:" << sz.cy << " }";
|
||||
return o.str();
|
||||
@@ -254,6 +265,11 @@ namespace
|
||||
case VT_HRESULT:
|
||||
o << std::hex << var.ulVal; break;
|
||||
|
||||
case VT_EMPTY:
|
||||
case VT_NULL:
|
||||
case VT_VOID:
|
||||
break;
|
||||
|
||||
default:
|
||||
assert(0);
|
||||
}
|
||||
@@ -842,7 +858,7 @@ namespace
|
||||
else \
|
||||
{ \
|
||||
hr = E_NOINTERFACE; \
|
||||
pvObject = (IUnknown *)(this); \
|
||||
pvObject = NULL; \
|
||||
}
|
||||
|
||||
QIBEGIN()
|
||||
@@ -3043,7 +3059,7 @@ namespace
|
||||
virtual HRESULT STDMETHODCALLTYPE GetIDsOfNames(REFIID riid, LPOLESTR * rgszNames, UINT cNames, LCID lcid, DISPID * rgDispId)
|
||||
{
|
||||
IDispatch * pIDispatch = getIDispatch();
|
||||
std::wstring strtemp;
|
||||
std::wstring strtemp;
|
||||
|
||||
std::wostringstream strtempo;
|
||||
|
||||
@@ -3078,7 +3094,7 @@ namespace
|
||||
|
||||
strtempo << L" ]";
|
||||
|
||||
dbgprintf(TEXT("IDispatch::GetIDsOfNames -> %08X, rgDispId = [%ls]"), hr, strtemp.c_str());
|
||||
dbgprintf(TEXT("IDispatch::GetIDsOfNames -> %08X, rgDispId = %ls"), hr, strtempo.str().c_str());
|
||||
|
||||
return hr;
|
||||
}
|
||||
@@ -3089,26 +3105,26 @@ namespace
|
||||
|
||||
std::basic_ostringstream<TCHAR> strtempo;
|
||||
|
||||
strtempo << L"{\n";
|
||||
strtempo << L"{";
|
||||
|
||||
for(unsigned int i = pDispParams->cArgs, j = pDispParams->cNamedArgs; j < pDispParams->cArgs; -- i, ++ j)
|
||||
{
|
||||
strtempo << L"\t";
|
||||
strtempo << L" ";
|
||||
strtempo << VariantToString(pDispParams->rgvarg[i - 1]);
|
||||
strtempo << L"\n";
|
||||
strtempo << L",";
|
||||
}
|
||||
|
||||
for(unsigned int i = pDispParams->cArgs - pDispParams->cNamedArgs; i > 0; -- i)
|
||||
{
|
||||
strtempo << L"\t";
|
||||
strtempo << L" ";
|
||||
strtempo << L"["; strtempo << pDispParams->rgdispidNamedArgs[i - 1]; strtempo << L"] => ";
|
||||
strtempo << VariantToString(pDispParams->rgvarg[i - 1]);
|
||||
strtempo << L"\n";
|
||||
strtempo << L",";
|
||||
}
|
||||
|
||||
strtempo << L"}";
|
||||
strtempo << L" }";
|
||||
|
||||
dbgprintf(TEXT("IDispatch::Invoke(%ld, %ls, %08X, %04X, %s, %p, %p, %p)"), dispIdMember, UUIDToString(riid), lcid, wFlags, strtempo.str().c_str(), pVarResult, pExcepInfo, puArgErr);
|
||||
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);
|
||||
|
||||
VARIANT VarResult = { };
|
||||
EXCEPINFO ExcepInfo = { };
|
||||
@@ -3160,6 +3176,9 @@ namespace
|
||||
private:
|
||||
static std::basic_string<TCHAR> TargetDeviceToString(const DVTARGETDEVICE& targetdev)
|
||||
{
|
||||
if(&targetdev == NULL)
|
||||
return TEXT("<null>");
|
||||
|
||||
std::basic_ostringstream<TCHAR> o;
|
||||
|
||||
o << "{";
|
||||
@@ -3999,9 +4018,53 @@ namespace
|
||||
virtual HRESULT STDMETHODCALLTYPE IQuickActivate::QuickActivate(QACONTAINER * pQaContainer, QACONTROL * pQaControl) // TODO
|
||||
{
|
||||
IQuickActivate * pIQuickActivate = getIQuickActivate();
|
||||
dbgprintf(TEXT("IQuickActivate::QuickActivate(%p, %p)"), pQaContainer, pQaControl);
|
||||
|
||||
std::basic_stringstream<TCHAR> o1;
|
||||
|
||||
o1 << "{ ";
|
||||
o1 << "pClientSite = " << (void *)pQaContainer->pClientSite << ", ";
|
||||
o1 << "pAdviseSink = " << (void *)pQaContainer->pAdviseSink << ", ";
|
||||
o1 << "pPropertyNotifySink = " << (void *)pQaContainer->pPropertyNotifySink << ", ";
|
||||
o1 << "pUnkEventSink = " << (void *)pQaContainer->pUnkEventSink << ", ";
|
||||
|
||||
o1 << std::hex;
|
||||
o1 << "dwAmbientFlags = " << pQaContainer->dwAmbientFlags << ", ";
|
||||
o1 << "colorFore = " << pQaContainer->colorFore << ", ";
|
||||
o1 << "colorBack = " << pQaContainer->colorBack << ", ";
|
||||
o1 << std::dec;
|
||||
|
||||
o1 << "pFont = " << (void *)pQaContainer->pFont << ", ";
|
||||
o1 << "pUndoMgr = " << (void *)pQaContainer->pUndoMgr << ", ";
|
||||
|
||||
o1 << std::hex;
|
||||
o1 << "dwAppearance = " << pQaContainer->dwAppearance << ", ";
|
||||
o1 << "lcid = " << pQaContainer->lcid << ", ";
|
||||
o1 << std::dec;
|
||||
|
||||
o1 << "hpal = " << (void *)pQaContainer->hpal << ", ";
|
||||
o1 << "pBindHost = " << (void *)pQaContainer->pBindHost << ", ";
|
||||
o1 << "pOleControlSite = " << (void *)pQaContainer->pOleControlSite << ", ";
|
||||
o1 << "pServiceProvider = " << (void *)pQaContainer->pServiceProvider << ", ";
|
||||
o1 << "}";
|
||||
|
||||
dbgprintf(TEXT("IQuickActivate::QuickActivate(%s, %p)"), o1.str().c_str(), pQaControl);
|
||||
|
||||
HRESULT hr = pIQuickActivate->QuickActivate(pQaContainer, pQaControl);
|
||||
dbgprintf(TEXT("IQuickActivate::QuickActivate -> %08X, pQaControl = %p"), hr, pQaControl);
|
||||
|
||||
std::basic_stringstream<TCHAR> o2;
|
||||
|
||||
o2 << "{ ";
|
||||
o2 << std::hex;
|
||||
o2 << "dwMiscStatus = " << pQaControl->dwMiscStatus << ", ";
|
||||
o2 << "dwViewStatus = " << pQaControl->dwViewStatus << ", ";
|
||||
o2 << "dwEventCookie = " << pQaControl->dwEventCookie << ", ";
|
||||
o2 << "dwPropNotifyCookie = " << pQaControl->dwPropNotifyCookie << ", ";
|
||||
o2 << "dwPointerActivationPolicy = " << pQaControl->dwPointerActivationPolicy << ", ";
|
||||
o2 << std::dec;
|
||||
o2 << "}";
|
||||
|
||||
dbgprintf(TEXT("IQuickActivate::QuickActivate -> %08X, QaControl = %s"), hr, o2.str().c_str());
|
||||
|
||||
return hr;
|
||||
}
|
||||
|
||||
@@ -4764,7 +4827,7 @@ namespace
|
||||
virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void ** ppvObject)
|
||||
{
|
||||
HRESULT hr;
|
||||
IUnknown * pvObject;
|
||||
IUnknown * pvObject = NULL;
|
||||
|
||||
dbgprintf(TEXT("IUnknown::QueryInterface(%ls, %p)"), UUIDToString(riid).c_str(), ppvObject);
|
||||
|
||||
@@ -4796,7 +4859,7 @@ namespace
|
||||
else \
|
||||
{ \
|
||||
hr = E_NOINTERFACE; \
|
||||
pvObject = (IUnknown *)(this); \
|
||||
pvObject = NULL; \
|
||||
}
|
||||
|
||||
QIBEGIN()
|
||||
|
||||
+1545
-618
File diff suppressed because it is too large
Load Diff
+520
-731
File diff suppressed because it is too large
Load Diff
@@ -1,9 +1,3 @@
|
||||
#define TOSTRING_(X) # X
|
||||
#define TOSTRING(X) TOSTRING_(X)
|
||||
|
||||
LANGUAGE 0, 0
|
||||
|
||||
// NOTE: TYPELIB_PATH__ is defined on the command line (-D TYPELIB_PATH__=<path>)
|
||||
1 TYPELIB TOSTRING(TYPELIB_PATH__)
|
||||
|
||||
#define TYPELIB_RESOURCEID__ 1
|
||||
#include "./typelib.rh"
|
||||
// EOF
|
||||
|
||||
+52
-52
@@ -4,10 +4,10 @@
|
||||
|
||||
|
||||
/* File created by MIDL compiler version 7.00.0493 */
|
||||
/* at Mon Jul 31 17:27:49 2006
|
||||
/* at Sat Aug 12 22:21:54 2006
|
||||
*/
|
||||
/* Compiler settings for .\mstsclib.idl:
|
||||
Oicf, W1, Zp8, env=Win32 (32b run)
|
||||
Oicf, W2, Zp8, env=Win32 (32b run)
|
||||
protocol : dce , ms_ext, c_ext, robust
|
||||
error checks: allocation ref bounds_check enum stub_data
|
||||
VC __declspec() decoration level:
|
||||
@@ -2518,34 +2518,34 @@ EXTERN_C const IID IID_IMsTscNonScriptable;
|
||||
IMsTscNonScriptable : public IUnknown
|
||||
{
|
||||
public:
|
||||
virtual /* [propput] */ HRESULT __stdcall put_ClearTextPassword(
|
||||
virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_ClearTextPassword(
|
||||
/* [in] */ BSTR rhs) = 0;
|
||||
|
||||
virtual /* [propput] */ HRESULT __stdcall put_PortablePassword(
|
||||
virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_PortablePassword(
|
||||
/* [in] */ BSTR pPortablePass) = 0;
|
||||
|
||||
virtual /* [propget] */ HRESULT __stdcall get_PortablePassword(
|
||||
virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_PortablePassword(
|
||||
/* [retval][out] */ BSTR *pPortablePass) = 0;
|
||||
|
||||
virtual /* [propput] */ HRESULT __stdcall put_PortableSalt(
|
||||
virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_PortableSalt(
|
||||
/* [in] */ BSTR pPortableSalt) = 0;
|
||||
|
||||
virtual /* [propget] */ HRESULT __stdcall get_PortableSalt(
|
||||
virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_PortableSalt(
|
||||
/* [retval][out] */ BSTR *pPortableSalt) = 0;
|
||||
|
||||
virtual /* [propput] */ HRESULT __stdcall put_BinaryPassword(
|
||||
virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_BinaryPassword(
|
||||
/* [in] */ BSTR pBinaryPassword) = 0;
|
||||
|
||||
virtual /* [propget] */ HRESULT __stdcall get_BinaryPassword(
|
||||
virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_BinaryPassword(
|
||||
/* [retval][out] */ BSTR *pBinaryPassword) = 0;
|
||||
|
||||
virtual /* [propput] */ HRESULT __stdcall put_BinarySalt(
|
||||
virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_BinarySalt(
|
||||
/* [in] */ BSTR pSalt) = 0;
|
||||
|
||||
virtual /* [propget] */ HRESULT __stdcall get_BinarySalt(
|
||||
virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_BinarySalt(
|
||||
/* [retval][out] */ BSTR *pSalt) = 0;
|
||||
|
||||
virtual HRESULT __stdcall ResetPassword( void) = 0;
|
||||
virtual HRESULT STDMETHODCALLTYPE ResetPassword( void) = 0;
|
||||
|
||||
};
|
||||
|
||||
@@ -2567,43 +2567,43 @@ EXTERN_C const IID IID_IMsTscNonScriptable;
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IMsTscNonScriptable * This);
|
||||
|
||||
/* [propput] */ HRESULT ( __stdcall *put_ClearTextPassword )(
|
||||
/* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_ClearTextPassword )(
|
||||
IMsTscNonScriptable * This,
|
||||
/* [in] */ BSTR rhs);
|
||||
|
||||
/* [propput] */ HRESULT ( __stdcall *put_PortablePassword )(
|
||||
/* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_PortablePassword )(
|
||||
IMsTscNonScriptable * This,
|
||||
/* [in] */ BSTR pPortablePass);
|
||||
|
||||
/* [propget] */ HRESULT ( __stdcall *get_PortablePassword )(
|
||||
/* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PortablePassword )(
|
||||
IMsTscNonScriptable * This,
|
||||
/* [retval][out] */ BSTR *pPortablePass);
|
||||
|
||||
/* [propput] */ HRESULT ( __stdcall *put_PortableSalt )(
|
||||
/* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_PortableSalt )(
|
||||
IMsTscNonScriptable * This,
|
||||
/* [in] */ BSTR pPortableSalt);
|
||||
|
||||
/* [propget] */ HRESULT ( __stdcall *get_PortableSalt )(
|
||||
/* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PortableSalt )(
|
||||
IMsTscNonScriptable * This,
|
||||
/* [retval][out] */ BSTR *pPortableSalt);
|
||||
|
||||
/* [propput] */ HRESULT ( __stdcall *put_BinaryPassword )(
|
||||
/* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_BinaryPassword )(
|
||||
IMsTscNonScriptable * This,
|
||||
/* [in] */ BSTR pBinaryPassword);
|
||||
|
||||
/* [propget] */ HRESULT ( __stdcall *get_BinaryPassword )(
|
||||
/* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BinaryPassword )(
|
||||
IMsTscNonScriptable * This,
|
||||
/* [retval][out] */ BSTR *pBinaryPassword);
|
||||
|
||||
/* [propput] */ HRESULT ( __stdcall *put_BinarySalt )(
|
||||
/* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_BinarySalt )(
|
||||
IMsTscNonScriptable * This,
|
||||
/* [in] */ BSTR pSalt);
|
||||
|
||||
/* [propget] */ HRESULT ( __stdcall *get_BinarySalt )(
|
||||
/* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BinarySalt )(
|
||||
IMsTscNonScriptable * This,
|
||||
/* [retval][out] */ BSTR *pSalt);
|
||||
|
||||
HRESULT ( __stdcall *ResetPassword )(
|
||||
HRESULT ( STDMETHODCALLTYPE *ResetPassword )(
|
||||
IMsTscNonScriptable * This);
|
||||
|
||||
END_INTERFACE
|
||||
@@ -2685,11 +2685,11 @@ EXTERN_C const IID IID_IMsRdpClientNonScriptable;
|
||||
IMsRdpClientNonScriptable : public IMsTscNonScriptable
|
||||
{
|
||||
public:
|
||||
virtual HRESULT __stdcall NotifyRedirectDeviceChange(
|
||||
virtual HRESULT STDMETHODCALLTYPE NotifyRedirectDeviceChange(
|
||||
/* [in] */ UINT_PTR wParam,
|
||||
/* [in] */ LONG_PTR lParam) = 0;
|
||||
|
||||
virtual HRESULT __stdcall SendKeys(
|
||||
virtual HRESULT STDMETHODCALLTYPE SendKeys(
|
||||
/* [in] */ long numKeys,
|
||||
/* [in] */ VARIANT_BOOL *pbArrayKeyUp,
|
||||
/* [in] */ long *plKeyData) = 0;
|
||||
@@ -2714,51 +2714,51 @@ EXTERN_C const IID IID_IMsRdpClientNonScriptable;
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IMsRdpClientNonScriptable * This);
|
||||
|
||||
/* [propput] */ HRESULT ( __stdcall *put_ClearTextPassword )(
|
||||
/* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_ClearTextPassword )(
|
||||
IMsRdpClientNonScriptable * This,
|
||||
/* [in] */ BSTR rhs);
|
||||
|
||||
/* [propput] */ HRESULT ( __stdcall *put_PortablePassword )(
|
||||
/* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_PortablePassword )(
|
||||
IMsRdpClientNonScriptable * This,
|
||||
/* [in] */ BSTR pPortablePass);
|
||||
|
||||
/* [propget] */ HRESULT ( __stdcall *get_PortablePassword )(
|
||||
/* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PortablePassword )(
|
||||
IMsRdpClientNonScriptable * This,
|
||||
/* [retval][out] */ BSTR *pPortablePass);
|
||||
|
||||
/* [propput] */ HRESULT ( __stdcall *put_PortableSalt )(
|
||||
/* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_PortableSalt )(
|
||||
IMsRdpClientNonScriptable * This,
|
||||
/* [in] */ BSTR pPortableSalt);
|
||||
|
||||
/* [propget] */ HRESULT ( __stdcall *get_PortableSalt )(
|
||||
/* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PortableSalt )(
|
||||
IMsRdpClientNonScriptable * This,
|
||||
/* [retval][out] */ BSTR *pPortableSalt);
|
||||
|
||||
/* [propput] */ HRESULT ( __stdcall *put_BinaryPassword )(
|
||||
/* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_BinaryPassword )(
|
||||
IMsRdpClientNonScriptable * This,
|
||||
/* [in] */ BSTR pBinaryPassword);
|
||||
|
||||
/* [propget] */ HRESULT ( __stdcall *get_BinaryPassword )(
|
||||
/* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BinaryPassword )(
|
||||
IMsRdpClientNonScriptable * This,
|
||||
/* [retval][out] */ BSTR *pBinaryPassword);
|
||||
|
||||
/* [propput] */ HRESULT ( __stdcall *put_BinarySalt )(
|
||||
/* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_BinarySalt )(
|
||||
IMsRdpClientNonScriptable * This,
|
||||
/* [in] */ BSTR pSalt);
|
||||
|
||||
/* [propget] */ HRESULT ( __stdcall *get_BinarySalt )(
|
||||
/* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BinarySalt )(
|
||||
IMsRdpClientNonScriptable * This,
|
||||
/* [retval][out] */ BSTR *pSalt);
|
||||
|
||||
HRESULT ( __stdcall *ResetPassword )(
|
||||
HRESULT ( STDMETHODCALLTYPE *ResetPassword )(
|
||||
IMsRdpClientNonScriptable * This);
|
||||
|
||||
HRESULT ( __stdcall *NotifyRedirectDeviceChange )(
|
||||
HRESULT ( STDMETHODCALLTYPE *NotifyRedirectDeviceChange )(
|
||||
IMsRdpClientNonScriptable * This,
|
||||
/* [in] */ UINT_PTR wParam,
|
||||
/* [in] */ LONG_PTR lParam);
|
||||
|
||||
HRESULT ( __stdcall *SendKeys )(
|
||||
HRESULT ( STDMETHODCALLTYPE *SendKeys )(
|
||||
IMsRdpClientNonScriptable * This,
|
||||
/* [in] */ long numKeys,
|
||||
/* [in] */ VARIANT_BOOL *pbArrayKeyUp,
|
||||
@@ -2850,10 +2850,10 @@ EXTERN_C const IID IID_IMsRdpClientNonScriptable2;
|
||||
IMsRdpClientNonScriptable2 : public IMsRdpClientNonScriptable
|
||||
{
|
||||
public:
|
||||
virtual /* [propput] */ HRESULT __stdcall put_UIParentWindowHandle(
|
||||
virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_UIParentWindowHandle(
|
||||
/* [in] */ HWND phwndUIParentWindowHandle) = 0;
|
||||
|
||||
virtual /* [propget] */ HRESULT __stdcall get_UIParentWindowHandle(
|
||||
virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_UIParentWindowHandle(
|
||||
/* [retval][out] */ HWND *phwndUIParentWindowHandle) = 0;
|
||||
|
||||
};
|
||||
@@ -2876,61 +2876,61 @@ EXTERN_C const IID IID_IMsRdpClientNonScriptable2;
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IMsRdpClientNonScriptable2 * This);
|
||||
|
||||
/* [propput] */ HRESULT ( __stdcall *put_ClearTextPassword )(
|
||||
/* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_ClearTextPassword )(
|
||||
IMsRdpClientNonScriptable2 * This,
|
||||
/* [in] */ BSTR rhs);
|
||||
|
||||
/* [propput] */ HRESULT ( __stdcall *put_PortablePassword )(
|
||||
/* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_PortablePassword )(
|
||||
IMsRdpClientNonScriptable2 * This,
|
||||
/* [in] */ BSTR pPortablePass);
|
||||
|
||||
/* [propget] */ HRESULT ( __stdcall *get_PortablePassword )(
|
||||
/* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PortablePassword )(
|
||||
IMsRdpClientNonScriptable2 * This,
|
||||
/* [retval][out] */ BSTR *pPortablePass);
|
||||
|
||||
/* [propput] */ HRESULT ( __stdcall *put_PortableSalt )(
|
||||
/* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_PortableSalt )(
|
||||
IMsRdpClientNonScriptable2 * This,
|
||||
/* [in] */ BSTR pPortableSalt);
|
||||
|
||||
/* [propget] */ HRESULT ( __stdcall *get_PortableSalt )(
|
||||
/* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PortableSalt )(
|
||||
IMsRdpClientNonScriptable2 * This,
|
||||
/* [retval][out] */ BSTR *pPortableSalt);
|
||||
|
||||
/* [propput] */ HRESULT ( __stdcall *put_BinaryPassword )(
|
||||
/* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_BinaryPassword )(
|
||||
IMsRdpClientNonScriptable2 * This,
|
||||
/* [in] */ BSTR pBinaryPassword);
|
||||
|
||||
/* [propget] */ HRESULT ( __stdcall *get_BinaryPassword )(
|
||||
/* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BinaryPassword )(
|
||||
IMsRdpClientNonScriptable2 * This,
|
||||
/* [retval][out] */ BSTR *pBinaryPassword);
|
||||
|
||||
/* [propput] */ HRESULT ( __stdcall *put_BinarySalt )(
|
||||
/* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_BinarySalt )(
|
||||
IMsRdpClientNonScriptable2 * This,
|
||||
/* [in] */ BSTR pSalt);
|
||||
|
||||
/* [propget] */ HRESULT ( __stdcall *get_BinarySalt )(
|
||||
/* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BinarySalt )(
|
||||
IMsRdpClientNonScriptable2 * This,
|
||||
/* [retval][out] */ BSTR *pSalt);
|
||||
|
||||
HRESULT ( __stdcall *ResetPassword )(
|
||||
HRESULT ( STDMETHODCALLTYPE *ResetPassword )(
|
||||
IMsRdpClientNonScriptable2 * This);
|
||||
|
||||
HRESULT ( __stdcall *NotifyRedirectDeviceChange )(
|
||||
HRESULT ( STDMETHODCALLTYPE *NotifyRedirectDeviceChange )(
|
||||
IMsRdpClientNonScriptable2 * This,
|
||||
/* [in] */ UINT_PTR wParam,
|
||||
/* [in] */ LONG_PTR lParam);
|
||||
|
||||
HRESULT ( __stdcall *SendKeys )(
|
||||
HRESULT ( STDMETHODCALLTYPE *SendKeys )(
|
||||
IMsRdpClientNonScriptable2 * This,
|
||||
/* [in] */ long numKeys,
|
||||
/* [in] */ VARIANT_BOOL *pbArrayKeyUp,
|
||||
/* [in] */ long *plKeyData);
|
||||
|
||||
/* [propput] */ HRESULT ( __stdcall *put_UIParentWindowHandle )(
|
||||
/* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_UIParentWindowHandle )(
|
||||
IMsRdpClientNonScriptable2 * This,
|
||||
/* [in] */ HWND phwndUIParentWindowHandle);
|
||||
|
||||
/* [propget] */ HRESULT ( __stdcall *get_UIParentWindowHandle )(
|
||||
/* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_UIParentWindowHandle )(
|
||||
IMsRdpClientNonScriptable2 * This,
|
||||
/* [retval][out] */ HWND *phwndUIParentWindowHandle);
|
||||
|
||||
|
||||
@@ -6,10 +6,10 @@
|
||||
|
||||
|
||||
/* File created by MIDL compiler version 7.00.0493 */
|
||||
/* at Mon Jul 31 17:27:49 2006
|
||||
/* at Sat Aug 12 22:21:54 2006
|
||||
*/
|
||||
/* Compiler settings for .\mstsclib.idl:
|
||||
Oicf, W1, Zp8, env=Win32 (32b run)
|
||||
Oicf, W2, Zp8, env=Win32 (32b run)
|
||||
protocol : dce , ms_ext, c_ext, robust
|
||||
error checks: allocation ref bounds_check enum stub_data
|
||||
VC __declspec() decoration level:
|
||||
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
#define MSTSCLIB_REDIST_
|
||||
#include "./mstsclib.idl"
|
||||
// EOF
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
#define TYPELIB_RESOURCEID__ 2
|
||||
#include "./typelib.rh"
|
||||
// EOF
|
||||
+8946
File diff suppressed because it is too large
Load Diff
+145
@@ -0,0 +1,145 @@
|
||||
|
||||
|
||||
/* this ALWAYS GENERATED file contains the IIDs and CLSIDs */
|
||||
|
||||
/* link this file in with the server and any clients */
|
||||
|
||||
|
||||
/* File created by MIDL compiler version 7.00.0493 */
|
||||
/* at Sat Aug 12 22:21:53 2006
|
||||
*/
|
||||
/* Compiler settings for .\mstsclib_redist.idl:
|
||||
Oicf, W2, Zp8, env=Win32 (32b run)
|
||||
protocol : dce , ms_ext, c_ext, robust
|
||||
error checks: allocation ref bounds_check enum stub_data
|
||||
VC __declspec() decoration level:
|
||||
__declspec(uuid()), __declspec(selectany), __declspec(novtable)
|
||||
DECLSPEC_UUID(), MIDL_INTERFACE()
|
||||
*/
|
||||
//@@MIDL_FILE_HEADING( )
|
||||
|
||||
#pragma warning( disable: 4049 ) /* more than 64k source lines */
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"{
|
||||
#endif
|
||||
|
||||
|
||||
#include <rpc.h>
|
||||
#include <rpcndr.h>
|
||||
|
||||
#ifdef _MIDL_USE_GUIDDEF_
|
||||
|
||||
#ifndef INITGUID
|
||||
#define INITGUID
|
||||
#include <guiddef.h>
|
||||
#undef INITGUID
|
||||
#else
|
||||
#include <guiddef.h>
|
||||
#endif
|
||||
|
||||
#define MIDL_DEFINE_GUID(type,name,l,w1,w2,b1,b2,b3,b4,b5,b6,b7,b8) \
|
||||
DEFINE_GUID(name,l,w1,w2,b1,b2,b3,b4,b5,b6,b7,b8)
|
||||
|
||||
#else // !_MIDL_USE_GUIDDEF_
|
||||
|
||||
#ifndef __IID_DEFINED__
|
||||
#define __IID_DEFINED__
|
||||
|
||||
typedef struct _IID
|
||||
{
|
||||
unsigned long x;
|
||||
unsigned short s1;
|
||||
unsigned short s2;
|
||||
unsigned char c[8];
|
||||
} IID;
|
||||
|
||||
#endif // __IID_DEFINED__
|
||||
|
||||
#ifndef CLSID_DEFINED
|
||||
#define CLSID_DEFINED
|
||||
typedef IID CLSID;
|
||||
#endif // CLSID_DEFINED
|
||||
|
||||
#define MIDL_DEFINE_GUID(type,name,l,w1,w2,b1,b2,b3,b4,b5,b6,b7,b8) \
|
||||
const type name = {l,w1,w2,{b1,b2,b3,b4,b5,b6,b7,b8}}
|
||||
|
||||
#endif !_MIDL_USE_GUIDDEF_
|
||||
|
||||
MIDL_DEFINE_GUID(IID, LIBID_MSTSCLib,0xAF586AAE,0xB62A,0x420E,0xB7,0x96,0x29,0x4E,0x7E,0xE6,0x4C,0x70);
|
||||
|
||||
|
||||
MIDL_DEFINE_GUID(IID, DIID_IMsTscAxEvents,0x336D5562,0xEFA8,0x482E,0x8C,0xB3,0xC5,0xC0,0xFC,0x7A,0x7D,0xB6);
|
||||
|
||||
|
||||
MIDL_DEFINE_GUID(IID, IID_IMsTscAx,0x327BB5CD,0x834E,0x4400,0xAE,0xF2,0xB3,0x0E,0x15,0xE5,0xD6,0x82);
|
||||
|
||||
|
||||
MIDL_DEFINE_GUID(IID, IID_IMsRdpClient,0x92B4A539,0x7115,0x4B7C,0xA5,0xA9,0xE5,0xD9,0xEF,0xC2,0x78,0x0A);
|
||||
|
||||
|
||||
MIDL_DEFINE_GUID(IID, IID_IMsRdpClient2,0xE7E17DC4,0x3B71,0x4BA7,0xA8,0xE6,0x28,0x1F,0xFA,0xDC,0xA2,0x8F);
|
||||
|
||||
|
||||
MIDL_DEFINE_GUID(IID, IID_IMsRdpClient3,0x91B7CBC5,0xA72E,0x4FA0,0x93,0x00,0xD6,0x47,0xD7,0xE8,0x97,0xFF);
|
||||
|
||||
|
||||
MIDL_DEFINE_GUID(IID, IID_IMsRdpClient4,0x095E0738,0xD97D,0x488B,0xB9,0xF6,0xDD,0x0E,0x8D,0x66,0xC0,0xDE);
|
||||
|
||||
|
||||
MIDL_DEFINE_GUID(IID, IID_IMsTscNonScriptable,0xC1E6743A,0x41C1,0x4A74,0x83,0x2A,0x0D,0xD0,0x6C,0x1C,0x7A,0x0E);
|
||||
|
||||
|
||||
MIDL_DEFINE_GUID(IID, IID_IMsRdpClientNonScriptable,0x2F079C4C,0x87B2,0x4AFD,0x97,0xAB,0x20,0xCD,0xB4,0x30,0x38,0xAE);
|
||||
|
||||
|
||||
MIDL_DEFINE_GUID(IID, IID_IMsRdpClientNonScriptable2,0x17A5E535,0x4072,0x4FA4,0xAF,0x32,0xC8,0xD0,0xD4,0x73,0x45,0xE9);
|
||||
|
||||
|
||||
MIDL_DEFINE_GUID(IID, IID_IMsTscAdvancedSettings,0x809945CC,0x4B3B,0x4A92,0xA6,0xB0,0xDB,0xF9,0xB5,0xF2,0xEF,0x2D);
|
||||
|
||||
|
||||
MIDL_DEFINE_GUID(IID, IID_IMsRdpClientAdvancedSettings,0x3C65B4AB,0x12B3,0x465B,0xAC,0xD4,0xB8,0xDA,0xD3,0xBF,0xF9,0xE2);
|
||||
|
||||
|
||||
MIDL_DEFINE_GUID(IID, IID_IMsRdpClientAdvancedSettings2,0x9AC42117,0x2B76,0x4320,0xAA,0x44,0x0E,0x61,0x6A,0xB8,0x43,0x7B);
|
||||
|
||||
|
||||
MIDL_DEFINE_GUID(IID, IID_IMsRdpClientAdvancedSettings3,0x19CD856B,0xC542,0x4C53,0xAC,0xEE,0xF1,0x27,0xE3,0xBE,0x1A,0x59);
|
||||
|
||||
|
||||
MIDL_DEFINE_GUID(IID, IID_IMsRdpClientAdvancedSettings4,0xFBA7F64E,0x7345,0x4405,0xAE,0x50,0xFA,0x4A,0x76,0x3D,0xC0,0xDE);
|
||||
|
||||
|
||||
MIDL_DEFINE_GUID(IID, IID_IMsTscSecuredSettings,0xC9D65442,0xA0F9,0x45B2,0x8F,0x73,0xD6,0x1D,0x2D,0xB8,0xCB,0xB6);
|
||||
|
||||
|
||||
MIDL_DEFINE_GUID(IID, IID_IMsRdpClientSecuredSettings,0x605BEFCF,0x39C1,0x45CC,0xA8,0x11,0x06,0x8F,0xB7,0xBE,0x34,0x6D);
|
||||
|
||||
|
||||
MIDL_DEFINE_GUID(IID, IID_IMsTscDebug,0x209D0EB9,0x6254,0x47B1,0x90,0x33,0xA9,0x8D,0xAE,0x55,0xBB,0x27);
|
||||
|
||||
|
||||
MIDL_DEFINE_GUID(CLSID, CLSID_MsTscAx,0x1FB464C8,0x09BB,0x4017,0xA2,0xF5,0xEB,0x74,0x2F,0x04,0x39,0x2F);
|
||||
|
||||
|
||||
MIDL_DEFINE_GUID(CLSID, CLSID_MsRdpClient,0x791FA017,0x2DE3,0x492E,0xAC,0xC5,0x53,0xC6,0x7A,0x2B,0x94,0xD0);
|
||||
|
||||
|
||||
MIDL_DEFINE_GUID(CLSID, CLSID_MsRdpClient2,0x9059F30F,0x4EB1,0x4BD2,0x9F,0xDC,0x36,0xF4,0x3A,0x21,0x8F,0x4A);
|
||||
|
||||
|
||||
MIDL_DEFINE_GUID(CLSID, CLSID_MsRdpClient3,0x7584C670,0x2274,0x4EFB,0xB0,0x0B,0xD6,0xAA,0xBA,0x6D,0x38,0x50);
|
||||
|
||||
|
||||
MIDL_DEFINE_GUID(CLSID, CLSID_MsRdpClient4,0x6AE29350,0x321B,0x42BE,0xBB,0xE5,0x12,0xFB,0x52,0x70,0xC0,0xDE);
|
||||
|
||||
#undef MIDL_DEFINE_GUID
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
+86
-6
@@ -62,7 +62,7 @@
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="kernel32.lib user32.lib gdi32.lib ws2_32.lib libeay32.lib advapi32.lib msimg32.lib $(NoInherit)"
|
||||
AdditionalDependencies="kernel32.lib user32.lib gdi32.lib ws2_32.lib libeay32.lib advapi32.lib msimg32.lib ole32.lib oleaut32.lib $(NoInherit)"
|
||||
LinkIncremental="2"
|
||||
AdditionalLibraryDirectories=""C:\Documents and Settings\All Users\Documenti\openssl-0.9.8b\out32""
|
||||
GenerateDebugInformation="true"
|
||||
@@ -139,7 +139,7 @@
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="kernel32.lib user32.lib gdi32.lib ws2_32.lib libeay32.lib advapi32.lib msimg32.lib $(NoInherit)"
|
||||
AdditionalDependencies="kernel32.lib user32.lib gdi32.lib ws2_32.lib libeay32.lib advapi32.lib msimg32.lib ole32.lib oleaut32.lib $(NoInherit)"
|
||||
LinkIncremental="1"
|
||||
AdditionalLibraryDirectories=""C:\Documents and Settings\All Users\Documenti\openssl-0.9.8b\out32""
|
||||
GenerateDebugInformation="true"
|
||||
@@ -242,7 +242,7 @@
|
||||
>
|
||||
<Tool
|
||||
Name="VCMIDLTool"
|
||||
TypeLibraryName="$(IntDir)/mstsclib.tlb"
|
||||
TypeLibraryName="$(IntDir)/$(InputName).tlb"
|
||||
/>
|
||||
</FileConfiguration>
|
||||
<FileConfiguration
|
||||
@@ -250,7 +250,7 @@
|
||||
>
|
||||
<Tool
|
||||
Name="VCMIDLTool"
|
||||
TypeLibraryName="$(IntDir)/mstsclib.tlb"
|
||||
TypeLibraryName="$(IntDir)/$(InputName).tlb"
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
@@ -262,7 +262,7 @@
|
||||
>
|
||||
<Tool
|
||||
Name="VCResourceCompilerTool"
|
||||
PreprocessorDefinitions="TYPELIB_PATH__=./$(IntDir)/mstsclib.tlb"
|
||||
PreprocessorDefinitions="TYPELIB_PATH__=$(IntDir)/$(InputName).tlb"
|
||||
/>
|
||||
</FileConfiguration>
|
||||
<FileConfiguration
|
||||
@@ -270,7 +270,7 @@
|
||||
>
|
||||
<Tool
|
||||
Name="VCResourceCompilerTool"
|
||||
PreprocessorDefinitions="TYPELIB_PATH__=./$(IntDir)/mstsclib.tlb"
|
||||
PreprocessorDefinitions="TYPELIB_PATH__=$(IntDir)/$(InputName).tlb"
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
@@ -286,9 +286,89 @@
|
||||
>
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
PreprocessorDefinitions="_MIDL_USE_GUIDDEF_"
|
||||
UsePrecompiledHeader="0"
|
||||
/>
|
||||
</FileConfiguration>
|
||||
<FileConfiguration
|
||||
Name="Release|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
PreprocessorDefinitions="_MIDL_USE_GUIDDEF_"
|
||||
UsePrecompiledHeader="0"
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\mstsclib_redist.idl"
|
||||
>
|
||||
<FileConfiguration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCMIDLTool"
|
||||
TypeLibraryName="$(IntDir)/$(InputName).tlb"
|
||||
/>
|
||||
</FileConfiguration>
|
||||
<FileConfiguration
|
||||
Name="Release|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCMIDLTool"
|
||||
TypeLibraryName="$(IntDir)/$(InputName).tlb"
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\mstsclib_redist.rc"
|
||||
>
|
||||
<FileConfiguration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCResourceCompilerTool"
|
||||
PreprocessorDefinitions="TYPELIB_PATH__=$(IntDir)/$(InputName).tlb"
|
||||
/>
|
||||
</FileConfiguration>
|
||||
<FileConfiguration
|
||||
Name="Release|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCResourceCompilerTool"
|
||||
PreprocessorDefinitions="TYPELIB_PATH__=$(IntDir)/$(InputName).tlb"
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\mstsclib_redist_h.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\mstsclib_redist_i.c"
|
||||
>
|
||||
<FileConfiguration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
PreprocessorDefinitions="_MIDL_USE_GUIDDEF_"
|
||||
UsePrecompiledHeader="0"
|
||||
/>
|
||||
</FileConfiguration>
|
||||
<FileConfiguration
|
||||
Name="Release|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
PreprocessorDefinitions="_MIDL_USE_GUIDDEF_"
|
||||
UsePrecompiledHeader="0"
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\typelib.rh"
|
||||
>
|
||||
</File>
|
||||
</Filter>
|
||||
</Files>
|
||||
|
||||
@@ -1,9 +1,10 @@
|
||||
#pragma once
|
||||
|
||||
#define _CRT_SECURE_NO_DEPRECATE
|
||||
#define _SCL_SECURE 0
|
||||
#define _SECURE_SCL 0
|
||||
|
||||
#include <new>
|
||||
#include <algorithm>
|
||||
|
||||
#include <assert.h>
|
||||
#include <stdio.h>
|
||||
@@ -22,6 +23,7 @@
|
||||
|
||||
#include <objbase.h>
|
||||
#include <oleauto.h>
|
||||
#include <olectl.h>
|
||||
#include <ocidl.h>
|
||||
#include <objsafe.h>
|
||||
|
||||
|
||||
@@ -0,0 +1,21 @@
|
||||
#define TOSTRING_(X) #X
|
||||
#define TOSTRING(X) TOSTRING_(X)
|
||||
|
||||
LANGUAGE 0, 0
|
||||
|
||||
#ifndef TYPELIB_PATH__
|
||||
#error TYPELIB_PATH__ not defined
|
||||
#endif
|
||||
|
||||
#ifndef TYPELIB_RESOURCEID__
|
||||
#error TYPELIB_RESOURCEID__ not defined
|
||||
#endif
|
||||
|
||||
/*
|
||||
NOTE:
|
||||
TYPELIB_PATH__ is defined on the command line (-D TYPELIB_PATH__=<path>)
|
||||
TYPELIB_RESOURCEID__ is defined before this file is included
|
||||
*/
|
||||
TYPELIB_RESOURCEID__ TYPELIB TOSTRING(TYPELIB_PATH__)
|
||||
|
||||
// EOF
|
||||
Reference in New Issue
Block a user