case, otherwise it gets confused. And you need to create a safe
Brian,
I meant those values are what I see in the Watch window
when the function is called. I analyze pVariant:
The variant vt member is set to 24588
and the safearray union member is showing zeros
This is when the Method1 is called,
When Mehtod2 is called the Variant parameters is shown as as normal
array
with two strings.
The implementation of Method1 is dummy. All its purpose
is just to be called from VB 6.0.
STDMETHODIMP CFooServer::Method1(VARIANT* pVariant)
{
// TODO: Add your implementation code here
return S_OK;
}
STDMETHODIMP CFooServer::Method2(VARIANT Variant)
{
// TODO: Add your implementation code here
return S_OK;
}
On Apr 2, 6:44 pm, "Brian Muth" <b...@mvps.org> wrote:
The message box in VB is used to stop the application and let run the
debugger
to debug Method1 Method2
// Method1 watch
pVariant->vt = 24588
pVariant->safearray = 0
What is this? Is this the implementation of Method1? This is completely
wrong, of course, since 24588 is VT_ARRAY | VT_BYREF | VT_DECIMAL and
decimals cannot be read or manipulated by VB6.
Show the entire implementation of Method1 as you have written it.
Brian