InvokeHelper获取控件属性值时回到空
InvokeHelper获取控件属性值时返回空我自己做了个OCX,用在Office中实现一个小功能,控件中定义了几个Get/Se
InvokeHelper获取控件属性值时返回空
我自己做了个OCX,用在Office中实现一个小功能,控件中定义了几个Get/Set方法更新的属性,然后使用VC在后台打开Word,通过InvokeHelper(0x01, DISPATCH_PROPERTYGET, VT_BSTR, (void *)&m_strData, NULL)获取属性值,返回的却是空。但是有的属性也是这样出来的,就可以返回正确的值,劳驾各位给看一下,是控件本身的问题还是我这个VC小程序的问题啊?
[最优解释]
BSTR*吧
要不传不出来啊
[其他解释]
怀疑是控件的问题。
从InvokeHelper跟进去看看就知道了,源码面前无秘密。
[其他解释]
你传的参数对吗?出错的话 HRESULT多少
[其他解释]
贴代码,从你说的这些不能搞明白问题
[其他解释]
楼上的有什么搞不明白的,你指出来,我详细写出来
[其他解释]
我试了一下,SHORT的属性都能读到值,就是BSTR的属性,个别少数可以读出来,大部分读不出来
[其他解释]
[id(1), helpstring("属性 Author"), nonbrowsable] BSTR Author;
[id(7), helpstring("属性 DocInfo"), nonbrowsable] BSTR DocInfo;
Author的属性读出来了,DocInfo的就没读出来
[其他解释]自己顶起来
[其他解释]传的参数对
COleDispatchDriver::InvokeHelper
void AFX_CDECL InvokeHelper(
DISPID dwDispID,
WORD wFlags,
VARTYPE vtRet,
void* pvRet,
const BYTE* pbParamInfo,
...
);
您说的HRESULT在哪里?
对了,程序运行的时候没出错。
[其他解释]我现在碰到的问题很奇怪,同样定义的属性,赋值后使用InvokeHelper去读,有的能读出来,有的读出来的是空,不知道哪位碰到过类似的问题
[其他解释]m_wndFlash.SetVariable(_T("addresult"), strResult);
是将strResult值付给flash的一个变量名字为“addresult”的变量
但是我不知道在flash那边怎么定义,怎么写,大侠你给指点一下吧
[其他解释]拜托 了waltsin