FIX: ICallFrame::GetParam() Returns 0x80020008 "Bad Variable Type" for SAFEARRAYs (290427)



The information in this article applies to:

  • Microsoft COM+ 1.0

This article was previously published under Q290427

SYMPTOMS

When you call the ICallFrame::GetParam method on a frame for a method call that includes a SAFEARRAY parameter, such as the method that is defined by the IDL below:
[id(55)] HRESULT SafeArrayExample([in] SAFEARRAY(SHORT) sa);
				
you may receive the following error message:
HRESULT 0x80020008
MessageId: DISP_E_BADVARTYPE
MessageText: Bad variable type.
#define DISP_E_BADVARTYPE _HRESULT_TYPEDEF_(0x80020008L)
in winerror.h.

RESOLUTION

To resolve this problem, obtain the latest service pack for Windows 2000. For additional information, click the following article number to view the article in the Microsoft Knowledge Base:

260910 How to Obtain the Latest Windows 2000 Service Pack


STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed at the beginning of this article. This problem was first corrected in Windows 2000 Service Pack 2.

Modification Type:MajorLast Reviewed:5/8/2002
Keywords:kbbug kbDSupport kberrmsg kbWin2000PreSP2Fix kbWin2000SP2Fix KB290427