Hi,
I'm porting a MAPI wrapper from the 1.x syntax to the 2.0 .net syntax and am
left with one error:
C3923: 'MyType::{ctor}::_SPropTagArray_myName' : local class, struct or
union definitions are not allowed in a member function of a managed class
The (abbreviated) code that generates this is:
MyType::MyType() // ctor
{
SizedSPropTagArray (3, myName) ;
}
With that code, the macro SizedSPropTagArray defines a new struct named
"_SPropTagArray_myName" with a 3-member array, which the new compiler rejects
because it's in a function.
I haven't tried it yet, but I'm assuming that moving the member up to class
level will solve the problem, but thought I'd see if anyone has come up with
a better solution?
Thanks,
Ken
Bruno van Dooren - 10 Mar 2006 19:11 GMT
> I haven't tried it yet, but I'm assuming that moving the member up to
> class
> level will solve the problem, but thought I'd see if anyone has come up
> with
> a better solution?
I haven't had this problem before, but MSDN is very clear and short about
C3923.
You have to move the declaration out of the method, and that should solve
your problem.

Signature
Kind regards,
Bruno.
bruno_nos_pam_van_dooren@hotmail.com
Remove only "_nos_pam"