Hello,
I have a class hierarchy distributed over 3 native C++ dlls. The base class
has a .NET Windows.Form for status output via a gcroot<>.
The gcroot is declared private - the sub classes only have access via a
protected "print"-method.
I need the different dlls as the sub classes implement the base class's pure
virtual methods using different technologies.
To use the native classes from outside their dlls I use the
__declspec(dlle xport) marco. This all works without any runtime error.
Still when the sub classes' dlls are compiled I get the following warning
(for each sub class):
warning C4251: 'UnmanagedCompo nent::m_pFormDe bugOutput' : struct 'gcroot<T>'
needs to have dll-interface to be used by clients of class
'UnmanagedCompo nent'
where "UnmanagedCompo nent" is my base class and "m_pFormDebugOu tput" is the
"private"-declared gcroot<of type Windows.Forms.F orm.
What does this warning mean in this respect? Is there a solution to get rid
of it (apart from switching it off)?
Thanks a lot in advance. Regards,
Fabian