10楼#
发布于:2004-09-23 15:09
<P>请楼上看一下,小弟未学过COM,VC也是刚刚起步,还请多多指教。</P><P><B>HRESULT QueryInterface( REFIID</B><I> <a href="" target="_blank" >iid</A></I><B>,</B><B> void </B>**<EM> </EM><a href="" target="_blank" ><EM>ppvObject</EM></A><b>);</b>函数中第二个参数是用来存放指向Renderer类型的指针吗?应该怎样定义啊?还有,是当ppvObject==NULL时对应lyr.Renderer Is Nothing吗?还是hr==E_NOINTERFACE 与之对应啊?在if语句中又是怎么样判断是什么类型的呢?</P><P>实在因为是急用,迫不得已,还烦请给出详细一点的代码。</P><P>小弟日后一定会好好看书自己得出答案的!</P>
|
|
11楼#
发布于:2004-09-23 14:35
如果用 pdisp->GetTypeInfoCount(;icount);得到的icount为0,这是因为该对象不提供类型信息,只能用QueryInterface的原始方法来判断.
|
|
12楼#
发布于:2004-09-23 14:24
LPDISPATCH lpDisp=m_layer->GetRenderer();
HRESULT hr=lpDisp->QueryInterface(IID_GetRenderer,...); if(SUCCEEDED(hr)) { ... } 还是先看看COM吧 |
|
13楼#
发布于:2004-09-23 11:12
你在生成专题的时候记录啦!这个函数没用过,我也用用试试。
|
|
|
14楼#
发布于:2004-09-23 10:07
<P>请楼上两位看看,程序运行时只能得到lyr,得不到Renderer的类型,所以好像无法自己记录啊。只能通过上边的语句获得吧?</P><P>我看VC中有这么一个函数lyr.GetRenderer()->GetTypeInfo(UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo)</P><P>很像是用来获得Renderer的类型的,可我弄了好长时间也没弄明白,还请高手指教。</P>
|
|
15楼#
发布于:2004-09-22 14:56
Nothing在VC中是NULL,类型在做的时候你就要自己记录了。
|
|
|
16楼#
发布于:2004-09-22 09:51
<P>很久没装mo玩了,只能帮顶下先</P><P>不知道Renderer有type属性吗?</P><P>都try一下,看看如何获得啦</P>
|
|
|
17楼#
发布于:2004-09-22 09:45
<P>自己顶一下</P><img src="images/post/smile/dvbbs/em15.gif" />
|
|
上一页
下一页