Skip to content
Projeler
Gruplar
Parçacıklar
Yardım
Yükleniyor...
Oturum aç / Kaydol
Gezinmeyi değiştir
C
core
Proje
Proje
Ayrıntılar
Etkinlik
Cycle Analytics
Depo (repository)
Depo (repository)
Dosyalar
Kayıtlar (commit)
Dallar (branch)
Etiketler
Katkıda bulunanlar
Grafik
Karşılaştır
Grafikler
Konular (issue)
0
Konular (issue)
0
Liste
Pano
Etiketler
Kilometre Taşları
Birleştirme (merge) Talepleri
0
Birleştirme (merge) Talepleri
0
CI / CD
CI / CD
İş akışları (pipeline)
İşler
Zamanlamalar
Grafikler
Paketler
Paketler
Wiki
Wiki
Parçacıklar
Parçacıklar
Üyeler
Üyeler
Collapse sidebar
Close sidebar
Etkinlik
Grafik
Grafikler
Yeni bir konu (issue) oluştur
İşler
Kayıtlar (commit)
Konu (issue) Panoları
Kenar çubuğunu aç
LibreOffice
core
Commits
af04ae6b
Kaydet (Commit)
af04ae6b
authored
Mar 04, 2016
tarafından
Stephan Bergmann
Dosyalara gözat
Seçenekler
Dosyalara Gözat
İndir
Eposta Yamaları
Sade Fark
Constness issues
Change-Id: Ib72b6225f20e1e53e9d811ddb2d266f17f57404b
üst
1590a19c
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
31 additions
and
31 deletions
+31
-31
SOActiveX.cxx
extensions/source/activex/SOActiveX.cxx
+20
-20
SOActiveX.h
extensions/source/activex/SOActiveX.h
+4
-4
SODispatchInterceptor.cxx
extensions/source/activex/SODispatchInterceptor.cxx
+5
-5
com_uno_helper.h
extensions/source/activex/com_uno_helper.h
+2
-2
No files found.
extensions/source/activex/SOActiveX.cxx
Dosyayı görüntüle @
af04ae6b
...
@@ -60,7 +60,7 @@ void OutputError_Impl( HWND hw, HRESULT ErrorCode )
...
@@ -60,7 +60,7 @@ void OutputError_Impl( HWND hw, HRESULT ErrorCode )
}
}
HRESULT
ExecuteFunc
(
IDispatch
*
idispUnoObject
,
HRESULT
ExecuteFunc
(
IDispatch
*
idispUnoObject
,
OLECHAR
*
sFuncName
,
OLECHAR
const
*
sFuncName
,
CComVariant
*
params
,
CComVariant
*
params
,
unsigned
int
count
,
unsigned
int
count
,
CComVariant
*
pResult
)
CComVariant
*
pResult
)
...
@@ -69,7 +69,7 @@ HRESULT ExecuteFunc( IDispatch* idispUnoObject,
...
@@ -69,7 +69,7 @@ HRESULT ExecuteFunc( IDispatch* idispUnoObject,
return
E_FAIL
;
return
E_FAIL
;
DISPID
id
;
DISPID
id
;
HRESULT
hr
=
idispUnoObject
->
GetIDsOfNames
(
IID_NULL
,
&
sFuncName
,
1
,
LOCALE_USER_DEFAULT
,
&
id
);
HRESULT
hr
=
idispUnoObject
->
GetIDsOfNames
(
IID_NULL
,
const_cast
<
OLECHAR
**>
(
&
sFuncName
)
,
1
,
LOCALE_USER_DEFAULT
,
&
id
);
if
(
!
SUCCEEDED
(
hr
)
)
return
hr
;
if
(
!
SUCCEEDED
(
hr
)
)
return
hr
;
DISPPARAMS
dispparams
=
{
params
,
0
,
count
,
0
};
DISPPARAMS
dispparams
=
{
params
,
0
,
count
,
0
};
...
@@ -88,7 +88,7 @@ HRESULT ExecuteFunc( IDispatch* idispUnoObject,
...
@@ -88,7 +88,7 @@ HRESULT ExecuteFunc( IDispatch* idispUnoObject,
}
}
HRESULT
GetIDispByFunc
(
IDispatch
*
idispUnoObject
,
HRESULT
GetIDispByFunc
(
IDispatch
*
idispUnoObject
,
OLECHAR
*
sFuncName
,
OLECHAR
const
*
sFuncName
,
CComVariant
*
params
,
CComVariant
*
params
,
unsigned
int
count
,
unsigned
int
count
,
CComPtr
<
IDispatch
>&
pdispResult
)
CComPtr
<
IDispatch
>&
pdispResult
)
...
@@ -109,14 +109,14 @@ HRESULT GetIDispByFunc( IDispatch* idispUnoObject,
...
@@ -109,14 +109,14 @@ HRESULT GetIDispByFunc( IDispatch* idispUnoObject,
}
}
HRESULT
PutPropertiesToIDisp
(
IDispatch
*
pdispObject
,
HRESULT
PutPropertiesToIDisp
(
IDispatch
*
pdispObject
,
OLECHAR
**
sMemberNames
,
OLECHAR
const
**
sMemberNames
,
CComVariant
*
pVariant
,
CComVariant
*
pVariant
,
unsigned
int
count
)
unsigned
int
count
)
{
{
for
(
unsigned
int
ind
=
0
;
ind
<
count
;
ind
++
)
for
(
unsigned
int
ind
=
0
;
ind
<
count
;
ind
++
)
{
{
DISPID
id
;
DISPID
id
;
HRESULT
hr
=
pdispObject
->
GetIDsOfNames
(
IID_NULL
,
&
sMemberNames
[
ind
]
,
1
,
LOCALE_USER_DEFAULT
,
&
id
);
HRESULT
hr
=
pdispObject
->
GetIDsOfNames
(
IID_NULL
,
const_cast
<
OLECHAR
**>
(
&
sMemberNames
[
ind
])
,
1
,
LOCALE_USER_DEFAULT
,
&
id
);
if
(
!
SUCCEEDED
(
hr
)
)
return
hr
;
if
(
!
SUCCEEDED
(
hr
)
)
return
hr
;
hr
=
CComDispatchDriver
::
PutProperty
(
pdispObject
,
id
,
&
pVariant
[
ind
]
);
hr
=
CComDispatchDriver
::
PutProperty
(
pdispObject
,
id
,
&
pVariant
[
ind
]
);
...
@@ -127,14 +127,14 @@ HRESULT PutPropertiesToIDisp( IDispatch* pdispObject,
...
@@ -127,14 +127,14 @@ HRESULT PutPropertiesToIDisp( IDispatch* pdispObject,
}
}
HRESULT
GetPropertiesFromIDisp
(
IDispatch
*
pdispObject
,
HRESULT
GetPropertiesFromIDisp
(
IDispatch
*
pdispObject
,
OLECHAR
**
sMemberNames
,
OLECHAR
const
**
sMemberNames
,
CComVariant
*
pVariant
,
CComVariant
*
pVariant
,
unsigned
int
count
)
unsigned
int
count
)
{
{
for
(
unsigned
int
ind
=
0
;
ind
<
count
;
ind
++
)
for
(
unsigned
int
ind
=
0
;
ind
<
count
;
ind
++
)
{
{
DISPID
id
;
DISPID
id
;
HRESULT
hr
=
pdispObject
->
GetIDsOfNames
(
IID_NULL
,
&
sMemberNames
[
ind
]
,
1
,
LOCALE_USER_DEFAULT
,
&
id
);
HRESULT
hr
=
pdispObject
->
GetIDsOfNames
(
IID_NULL
,
const_cast
<
OLECHAR
**>
(
&
sMemberNames
[
ind
])
,
1
,
LOCALE_USER_DEFAULT
,
&
id
);
if
(
!
SUCCEEDED
(
hr
)
)
return
hr
;
if
(
!
SUCCEEDED
(
hr
)
)
return
hr
;
hr
=
CComDispatchDriver
::
GetProperty
(
pdispObject
,
id
,
&
pVariant
[
ind
]
);
hr
=
CComDispatchDriver
::
GetProperty
(
pdispObject
,
id
,
&
pVariant
[
ind
]
);
...
@@ -390,7 +390,7 @@ STDMETHODIMP CSOActiveX::Load( LPPROPERTYBAG pPropBag, LPERRORLOG /*pErrorLog*/
...
@@ -390,7 +390,7 @@ STDMETHODIMP CSOActiveX::Load( LPPROPERTYBAG pPropBag, LPERRORLOG /*pErrorLog*/
return
hr
;
return
hr
;
mbReadyForActivation
=
FALSE
;
mbReadyForActivation
=
FALSE
;
hr
=
CBindStatusCallback
<
CSOActiveX
>::
Download
(
this
,
&
CSOActiveX
::
CallbackCreateXInputStream
,
mCurFileUrl
,
m_spClientSite
,
FALSE
);
hr
=
CBindStatusCallback
<
CSOActiveX
>::
Download
(
this
,
&
CSOActiveX
::
CallbackCreateXInputStream
,
const_cast
<
OLECHAR
*>
(
mCurFileUrl
)
,
m_spClientSite
,
FALSE
);
if
(
hr
==
MK_S_ASYNCHRONOUS
)
if
(
hr
==
MK_S_ASYNCHRONOUS
)
hr
=
S_OK
;
hr
=
S_OK
;
...
@@ -406,20 +406,20 @@ STDMETHODIMP CSOActiveX::Load( LPPROPERTYBAG pPropBag, LPERRORLOG /*pErrorLog*/
...
@@ -406,20 +406,20 @@ STDMETHODIMP CSOActiveX::Load( LPPROPERTYBAG pPropBag, LPERRORLOG /*pErrorLog*/
return
hr
;
return
hr
;
}
}
HRESULT
CSOActiveX
::
GetUnoStruct
(
OLECHAR
*
sStructName
,
CComPtr
<
IDispatch
>&
pdispResult
)
HRESULT
CSOActiveX
::
GetUnoStruct
(
OLECHAR
const
*
sStructName
,
CComPtr
<
IDispatch
>&
pdispResult
)
{
{
CComVariant
aComStruct
(
sStructName
);
CComVariant
aComStruct
(
sStructName
);
return
GetIDispByFunc
(
mpDispFactory
,
L"Bridge_GetStruct"
,
&
aComStruct
,
1
,
pdispResult
);
return
GetIDispByFunc
(
mpDispFactory
,
L"Bridge_GetStruct"
,
&
aComStruct
,
1
,
pdispResult
);
}
}
HRESULT
CSOActiveX
::
GetUrlStruct
(
OLECHAR
*
sUrl
,
CComPtr
<
IDispatch
>&
pdispUrl
)
HRESULT
CSOActiveX
::
GetUrlStruct
(
OLECHAR
const
*
sUrl
,
CComPtr
<
IDispatch
>&
pdispUrl
)
{
{
HRESULT
hr
=
GetUnoStruct
(
L"com.sun.star.util.URL"
,
pdispUrl
);
HRESULT
hr
=
GetUnoStruct
(
L"com.sun.star.util.URL"
,
pdispUrl
);
if
(
!
SUCCEEDED
(
hr
)
)
return
hr
;
if
(
!
SUCCEEDED
(
hr
)
)
return
hr
;
OLECHAR
*
sURLMemberName
=
L"Complete"
;
OLECHAR
const
*
sURLMemberName
=
L"Complete"
;
DISPID
nURLID
;
DISPID
nURLID
;
hr
=
pdispUrl
->
GetIDsOfNames
(
IID_NULL
,
&
sURLMemberName
,
1
,
LOCALE_USER_DEFAULT
,
&
nURLID
);
hr
=
pdispUrl
->
GetIDsOfNames
(
IID_NULL
,
const_cast
<
OLECHAR
**>
(
&
sURLMemberName
)
,
1
,
LOCALE_USER_DEFAULT
,
&
nURLID
);
if
(
!
SUCCEEDED
(
hr
)
)
return
hr
;
if
(
!
SUCCEEDED
(
hr
)
)
return
hr
;
CComVariant
aComUrl
(
sUrl
);
CComVariant
aComUrl
(
sUrl
);
hr
=
CComDispatchDriver
::
PutProperty
(
pdispUrl
,
nURLID
,
&
aComUrl
);
hr
=
CComDispatchDriver
::
PutProperty
(
pdispUrl
,
nURLID
,
&
aComUrl
);
...
@@ -452,7 +452,7 @@ HRESULT CSOActiveX::SetLayoutManagerProps()
...
@@ -452,7 +452,7 @@ HRESULT CSOActiveX::SetLayoutManagerProps()
return
E_FAIL
;
return
E_FAIL
;
CComVariant
pVarLayoutMgr
;
CComVariant
pVarLayoutMgr
;
OLECHAR
*
sLMPropName
=
L"LayoutManager"
;
OLECHAR
const
*
sLMPropName
=
L"LayoutManager"
;
HRESULT
hr
=
GetPropertiesFromIDisp
(
mpDispFrame
,
&
sLMPropName
,
&
pVarLayoutMgr
,
1
);
HRESULT
hr
=
GetPropertiesFromIDisp
(
mpDispFrame
,
&
sLMPropName
,
&
pVarLayoutMgr
,
1
);
if
(
pVarLayoutMgr
.
vt
!=
VT_DISPATCH
||
pVarLayoutMgr
.
pdispVal
==
NULL
)
if
(
pVarLayoutMgr
.
vt
!=
VT_DISPATCH
||
pVarLayoutMgr
.
pdispVal
==
NULL
)
return
E_FAIL
;
return
E_FAIL
;
...
@@ -463,7 +463,7 @@ HRESULT CSOActiveX::SetLayoutManagerProps()
...
@@ -463,7 +463,7 @@ HRESULT CSOActiveX::SetLayoutManagerProps()
if
(
!
SUCCEEDED
(
hr
)
||
!
pdispLM
)
if
(
!
SUCCEEDED
(
hr
)
||
!
pdispLM
)
return
E_FAIL
;
return
E_FAIL
;
OLECHAR
*
sATName
=
L"AutomaticToolbars"
;
OLECHAR
const
*
sATName
=
L"AutomaticToolbars"
;
CComVariant
pATProp
;
CComVariant
pATProp
;
pATProp
.
vt
=
VT_BOOL
;
pATProp
.
boolVal
=
VARIANT_FALSE
;
pATProp
.
vt
=
VT_BOOL
;
pATProp
.
boolVal
=
VARIANT_FALSE
;
hr
=
PutPropertiesToIDisp
(
pdispLM
,
&
sATName
,
&
pATProp
,
1
);
hr
=
PutPropertiesToIDisp
(
pdispLM
,
&
sATName
,
&
pATProp
,
1
);
...
@@ -486,7 +486,7 @@ HRESULT CSOActiveX::CreateFrameOldWay( HWND hwnd, int width, int height )
...
@@ -486,7 +486,7 @@ HRESULT CSOActiveX::CreateFrameOldWay( HWND hwnd, int width, int height )
HRESULT
hr
=
GetUnoStruct
(
L"com.sun.star.awt.Rectangle"
,
pdispRectangle
);
HRESULT
hr
=
GetUnoStruct
(
L"com.sun.star.awt.Rectangle"
,
pdispRectangle
);
if
(
!
SUCCEEDED
(
hr
)
)
return
hr
;
if
(
!
SUCCEEDED
(
hr
)
)
return
hr
;
OLECHAR
*
sRectMemberNames
[
4
]
=
{
L"X"
,
OLECHAR
const
*
sRectMemberNames
[
4
]
=
{
L"X"
,
L"Y"
,
L"Y"
,
L"Width"
,
L"Width"
,
L"Height"
};
L"Height"
};
...
@@ -502,7 +502,7 @@ HRESULT CSOActiveX::CreateFrameOldWay( HWND hwnd, int width, int height )
...
@@ -502,7 +502,7 @@ HRESULT CSOActiveX::CreateFrameOldWay( HWND hwnd, int width, int height )
if
(
!
SUCCEEDED
(
hr
)
)
return
hr
;
if
(
!
SUCCEEDED
(
hr
)
)
return
hr
;
// fill in descriptor with info
// fill in descriptor with info
OLECHAR
*
sDescriptorMemberNames
[
6
]
=
{
L"Type"
,
OLECHAR
const
*
sDescriptorMemberNames
[
6
]
=
{
L"Type"
,
L"WindowServiceName"
,
L"WindowServiceName"
,
L"ParentIndex"
,
L"ParentIndex"
,
L"Parent"
,
L"Parent"
,
...
@@ -636,7 +636,7 @@ HRESULT CSOActiveX::CallLoadComponentFromURL1PBool( OLECHAR* sUrl, OLECHAR* sArg
...
@@ -636,7 +636,7 @@ HRESULT CSOActiveX::CallLoadComponentFromURL1PBool( OLECHAR* sUrl, OLECHAR* sArg
HRESULT
hr
=
GetUnoStruct
(
L"com.sun.star.beans.PropertyValue"
,
pdispPropVal
);
HRESULT
hr
=
GetUnoStruct
(
L"com.sun.star.beans.PropertyValue"
,
pdispPropVal
);
if
(
!
SUCCEEDED
(
hr
)
)
return
hr
;
if
(
!
SUCCEEDED
(
hr
)
)
return
hr
;
OLECHAR
*
sPropMemberNames
[
2
]
=
{
L"Name"
,
L"Value"
};
OLECHAR
const
*
sPropMemberNames
[
2
]
=
{
L"Name"
,
L"Value"
};
CComVariant
pPropVar
[
2
];
CComVariant
pPropVar
[
2
];
pPropVar
[
0
]
=
CComVariant
(
sArgName
);
pPropVar
[
0
]
=
CComVariant
(
sArgName
);
pPropVar
[
1
].
vt
=
VT_BOOL
;
pPropVar
[
1
].
boolVal
=
sArgVal
?
VARIANT_TRUE
:
VARIANT_FALSE
;
pPropVar
[
1
].
vt
=
VT_BOOL
;
pPropVar
[
1
].
boolVal
=
sArgVal
?
VARIANT_TRUE
:
VARIANT_FALSE
;
...
@@ -659,7 +659,7 @@ HRESULT CSOActiveX::CallLoadComponentFromURL1PBool( OLECHAR* sUrl, OLECHAR* sArg
...
@@ -659,7 +659,7 @@ HRESULT CSOActiveX::CallLoadComponentFromURL1PBool( OLECHAR* sUrl, OLECHAR* sArg
return
S_OK
;
return
S_OK
;
}
}
HRESULT
CSOActiveX
::
CallDispatchMethod
(
OLECHAR
*
sUrl
,
HRESULT
CSOActiveX
::
CallDispatchMethod
(
OLECHAR
const
*
sUrl
,
CComVariant
*
aArgNames
,
CComVariant
*
aArgNames
,
CComVariant
*
aArgVals
,
CComVariant
*
aArgVals
,
unsigned
int
count
)
unsigned
int
count
)
...
@@ -687,7 +687,7 @@ HRESULT CSOActiveX::CallDispatchMethod( OLECHAR* sUrl,
...
@@ -687,7 +687,7 @@ HRESULT CSOActiveX::CallDispatchMethod( OLECHAR* sUrl,
hr
=
GetUnoStruct
(
L"com.sun.star.beans.PropertyValue"
,
pdispPropVal
);
hr
=
GetUnoStruct
(
L"com.sun.star.beans.PropertyValue"
,
pdispPropVal
);
if
(
!
SUCCEEDED
(
hr
)
)
return
hr
;
if
(
!
SUCCEEDED
(
hr
)
)
return
hr
;
OLECHAR
*
sPropMemberNames
[
2
]
=
{
L"Name"
,
L"Value"
};
OLECHAR
const
*
sPropMemberNames
[
2
]
=
{
L"Name"
,
L"Value"
};
CComVariant
pPropVar
[
2
];
CComVariant
pPropVar
[
2
];
pPropVar
[
0
]
=
aArgNames
[
ix
];
pPropVar
[
0
]
=
aArgNames
[
ix
];
pPropVar
[
1
]
=
aArgVals
[
ix
];
pPropVar
[
1
]
=
aArgVals
[
ix
];
...
@@ -822,7 +822,7 @@ HRESULT CSOActiveX::LoadURLToFrame( )
...
@@ -822,7 +822,7 @@ HRESULT CSOActiveX::LoadURLToFrame( )
{
{
// this is a presentation
// this is a presentation
// let the slide show be shown in the document window
// let the slide show be shown in the document window
OLECHAR
*
pPropName
=
L"IsFullScreen"
;
OLECHAR
const
*
pPropName
=
L"IsFullScreen"
;
CComVariant
pPresProp
;
CComVariant
pPresProp
;
pPresProp
.
vt
=
VT_BOOL
;
pPresProp
.
boolVal
=
VARIANT_FALSE
;
pPresProp
.
vt
=
VT_BOOL
;
pPresProp
.
boolVal
=
VARIANT_FALSE
;
hr
=
PutPropertiesToIDisp
(
pdispPres
,
&
pPropName
,
&
pPresProp
,
1
);
hr
=
PutPropertiesToIDisp
(
pdispPres
,
&
pPropName
,
&
pPresProp
,
1
);
...
...
extensions/source/activex/SOActiveX.h
Dosyayı görüntüle @
af04ae6b
...
@@ -87,7 +87,7 @@ protected:
...
@@ -87,7 +87,7 @@ protected:
CComPtr
<
IDispatch
>
mpDispFrame
;
CComPtr
<
IDispatch
>
mpDispFrame
;
CComPtr
<
IDispatch
>
mpInstanceLocker
;
CComPtr
<
IDispatch
>
mpInstanceLocker
;
CComPtr
<
IDispatch
>
mpDispWin
;
CComPtr
<
IDispatch
>
mpDispWin
;
OLECHAR
*
mCurFileUrl
;
OLECHAR
const
*
mCurFileUrl
;
BOOL
mbLoad
;
BOOL
mbLoad
;
BOOL
mbViewOnly
;
BOOL
mbViewOnly
;
WNDCLASS
mPWinClass
;
WNDCLASS
mPWinClass
;
...
@@ -185,11 +185,11 @@ public:
...
@@ -185,11 +185,11 @@ public:
HRESULT
SetLayoutManagerProps
();
HRESULT
SetLayoutManagerProps
();
HRESULT
CreateFrameOldWay
(
HWND
hwnd
,
int
width
,
int
height
);
HRESULT
CreateFrameOldWay
(
HWND
hwnd
,
int
width
,
int
height
);
HRESULT
GetUnoStruct
(
OLECHAR
*
sStructName
,
CComPtr
<
IDispatch
>&
pdispResult
);
HRESULT
GetUnoStruct
(
OLECHAR
const
*
sStructName
,
CComPtr
<
IDispatch
>&
pdispResult
);
HRESULT
LoadURLToFrame
();
HRESULT
LoadURLToFrame
();
HRESULT
CallDispatchMethod
(
OLECHAR
*
sUrl
,
CComVariant
*
sArgNames
,
CComVariant
*
sArgVal
,
unsigned
int
count
);
HRESULT
CallDispatchMethod
(
OLECHAR
const
*
sUrl
,
CComVariant
*
sArgNames
,
CComVariant
*
sArgVal
,
unsigned
int
count
);
HRESULT
CallLoadComponentFromURL1PBool
(
OLECHAR
*
sUrl
,
OLECHAR
*
sArgName
,
BOOL
sArgVal
);
HRESULT
CallLoadComponentFromURL1PBool
(
OLECHAR
*
sUrl
,
OLECHAR
*
sArgName
,
BOOL
sArgVal
);
HRESULT
GetUrlStruct
(
OLECHAR
*
sUrl
,
CComPtr
<
IDispatch
>&
pdispUrl
);
HRESULT
GetUrlStruct
(
OLECHAR
const
*
sUrl
,
CComPtr
<
IDispatch
>&
pdispUrl
);
HRESULT
Cleanup
();
HRESULT
Cleanup
();
HRESULT
TerminateOffice
();
HRESULT
TerminateOffice
();
HRESULT
GetURL
(
const
OLECHAR
*
url
,
HRESULT
GetURL
(
const
OLECHAR
*
url
,
...
...
extensions/source/activex/SODispatchInterceptor.cxx
Dosyayı görüntüle @
af04ae6b
...
@@ -66,9 +66,9 @@ STDMETHODIMP SODispatchInterceptor::queryDispatch( IDispatch FAR* aURL,
...
@@ -66,9 +66,9 @@ STDMETHODIMP SODispatchInterceptor::queryDispatch( IDispatch FAR* aURL,
if
(
!
aURL
||
!
retVal
)
return
E_FAIL
;
if
(
!
aURL
||
!
retVal
)
return
E_FAIL
;
CComVariant
aTargetUrl
;
CComVariant
aTargetUrl
;
OLECHAR
*
sURLMemberName
=
L"Complete"
;
OLECHAR
const
*
sURLMemberName
=
L"Complete"
;
DISPID
nURLID
;
DISPID
nURLID
;
HRESULT
hr
=
aURL
->
GetIDsOfNames
(
IID_NULL
,
&
sURLMemberName
,
1
,
LOCALE_USER_DEFAULT
,
&
nURLID
);
HRESULT
hr
=
aURL
->
GetIDsOfNames
(
IID_NULL
,
const_cast
<
OLECHAR
**>
(
&
sURLMemberName
)
,
1
,
LOCALE_USER_DEFAULT
,
&
nURLID
);
if
(
!
SUCCEEDED
(
hr
)
)
return
hr
;
if
(
!
SUCCEEDED
(
hr
)
)
return
hr
;
hr
=
CComDispatchDriver
::
GetProperty
(
aURL
,
nURLID
,
&
aTargetUrl
);
hr
=
CComDispatchDriver
::
GetProperty
(
aURL
,
nURLID
,
&
aTargetUrl
);
...
@@ -139,7 +139,7 @@ STDMETHODIMP SODispatchInterceptor::queryDispatches( SAFEARRAY FAR* aDescripts,
...
@@ -139,7 +139,7 @@ STDMETHODIMP SODispatchInterceptor::queryDispatches( SAFEARRAY FAR* aDescripts,
SafeArrayGetElement
(
aDescripts
,
&
ind
,
pElem
);
SafeArrayGetElement
(
aDescripts
,
&
ind
,
pElem
);
if
(
pElem
)
if
(
pElem
)
{
{
OLECHAR
*
pMemberNames
[
3
]
=
{
L"FeatureURL"
,
L"FrameName"
,
L"SearchFlags"
};
OLECHAR
const
*
pMemberNames
[
3
]
=
{
L"FeatureURL"
,
L"FrameName"
,
L"SearchFlags"
};
CComVariant
pValues
[
3
];
CComVariant
pValues
[
3
];
hr
=
GetPropertiesFromIDisp
(
pElem
,
pMemberNames
,
pValues
,
3
);
hr
=
GetPropertiesFromIDisp
(
pElem
,
pMemberNames
,
pValues
,
3
);
if
(
!
SUCCEEDED
(
hr
)
)
return
hr
;
if
(
!
SUCCEEDED
(
hr
)
)
return
hr
;
...
@@ -160,7 +160,7 @@ STDMETHODIMP SODispatchInterceptor::queryDispatches( SAFEARRAY FAR* aDescripts,
...
@@ -160,7 +160,7 @@ STDMETHODIMP SODispatchInterceptor::queryDispatches( SAFEARRAY FAR* aDescripts,
STDMETHODIMP
SODispatchInterceptor
::
dispatch
(
IDispatch
FAR
*
aURL
,
SAFEARRAY
FAR
*
aArgs
)
STDMETHODIMP
SODispatchInterceptor
::
dispatch
(
IDispatch
FAR
*
aURL
,
SAFEARRAY
FAR
*
aArgs
)
{
{
// get url from aURL
// get url from aURL
OLECHAR
*
pUrlName
=
L"Complete"
;
OLECHAR
const
*
pUrlName
=
L"Complete"
;
CComVariant
pValue
;
CComVariant
pValue
;
HRESULT
hr
=
GetPropertiesFromIDisp
(
aURL
,
&
pUrlName
,
&
pValue
,
1
);
HRESULT
hr
=
GetPropertiesFromIDisp
(
aURL
,
&
pUrlName
,
&
pValue
,
1
);
if
(
!
SUCCEEDED
(
hr
)
)
return
hr
;
if
(
!
SUCCEEDED
(
hr
)
)
return
hr
;
...
@@ -186,7 +186,7 @@ STDMETHODIMP SODispatchInterceptor::dispatch( IDispatch FAR* aURL, SAFEARRAY FAR
...
@@ -186,7 +186,7 @@ STDMETHODIMP SODispatchInterceptor::dispatch( IDispatch FAR* aURL, SAFEARRAY FAR
SafeArrayGetElement
(
aArgs
,
&
ind
,
&
pVarElem
);
SafeArrayGetElement
(
aArgs
,
&
ind
,
&
pVarElem
);
if
(
pVarElem
.
vt
==
VT_DISPATCH
&&
pVarElem
.
pdispVal
!=
NULL
)
if
(
pVarElem
.
vt
==
VT_DISPATCH
&&
pVarElem
.
pdispVal
!=
NULL
)
{
{
OLECHAR
*
pMemberNames
[
2
]
=
{
L"Name"
,
L"Value"
};
OLECHAR
const
*
pMemberNames
[
2
]
=
{
L"Name"
,
L"Value"
};
CComVariant
pValues
[
2
];
CComVariant
pValues
[
2
];
hr
=
GetPropertiesFromIDisp
(
pVarElem
.
pdispVal
,
pMemberNames
,
pValues
,
2
);
hr
=
GetPropertiesFromIDisp
(
pVarElem
.
pdispVal
,
pMemberNames
,
pValues
,
2
);
if
(
!
SUCCEEDED
(
hr
)
)
return
hr
;
if
(
!
SUCCEEDED
(
hr
)
)
return
hr
;
...
...
extensions/source/activex/com_uno_helper.h
Dosyayı görüntüle @
af04ae6b
...
@@ -20,7 +20,7 @@
...
@@ -20,7 +20,7 @@
#include "stdafx2.h"
#include "stdafx2.h"
HRESULT
ExecuteFunc
(
IDispatch
*
idispUnoObject
,
HRESULT
ExecuteFunc
(
IDispatch
*
idispUnoObject
,
OLECHAR
*
sFuncName
,
OLECHAR
const
*
sFuncName
,
CComVariant
*
params
,
CComVariant
*
params
,
unsigned
int
count
,
unsigned
int
count
,
CComVariant
*
pResult
);
CComVariant
*
pResult
);
...
@@ -37,7 +37,7 @@ HRESULT PutPropertiesToIDisp( IDispatch* pdispObject,
...
@@ -37,7 +37,7 @@ HRESULT PutPropertiesToIDisp( IDispatch* pdispObject,
unsigned
int
count
);
unsigned
int
count
);
HRESULT
GetPropertiesFromIDisp
(
IDispatch
*
pdispObject
,
HRESULT
GetPropertiesFromIDisp
(
IDispatch
*
pdispObject
,
OLECHAR
**
sMemberNames
,
OLECHAR
const
**
sMemberNames
,
CComVariant
*
pVariant
,
CComVariant
*
pVariant
,
unsigned
int
count
);
unsigned
int
count
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment