P
phnimx
I'm attempting to migrate a predominately MFC application that I've just
inherited from
Visual Studio.NET 2003 to Visual Studio 2005. I've managed to clean up a
myriad of compile and link errors but I'm stuck on one final problem.
Please note that this application compiled/linked and ran just fine out of
Visual Studio.NET 2003.
Details:
It's originally incarnated as an MFC app, i.e. CWinApp, CMultiDocTemplate,
CDocument, etc.
Today however, it's still an MFC app but it's got sections of Managed C++
Code all over the place.
Obstacle:
At compile time Visual Studio 2005 reports the following error:
c:\program files\microsoft visual studio 8\vc\include\comdefsp.h(1041) :
error C2872: 'IServiceProvider' : ambiguous symbol
could be 'c:\program files\microsoft visual studio
8\vc\platformsdk\include\servprov.h(100) : IServiceProvider'
or 'c:\windows\microsoft.net\framework\v2.0.50727\mscorlib.dll :
System::IServiceProvider'
Problem:
I've scoured the code including generating precompiled files, to determine
where IServiceProvider is actually used. It turns out NOWHERE. At least not
directly.
The Managed C++ Code parts are just a few minor Winforms. The Winforms
acquire functionality from other library assemblies external to this MFC
app. Not relevant.
I'm guessing at this point that mscorlib.dll::System::IServiceProvider in
not actually used by this MFC app.
However the COM Interface IServiceProvider may indeed be used since we do
some measure of CoCreateInstance().. to use MSXML4.DLL.
Questions:
1) Does anyone have any idea how to get passed this latest compiler
complaint?
2) Is there a way to exclude both the COM Interface IServiceProvider and
System::IServiceProvider?
3) Is or are there techniques for acquiring more build information at
compile time other than /VERBOSE and /P compiler switches?
Thanks in advance
inherited from
Visual Studio.NET 2003 to Visual Studio 2005. I've managed to clean up a
myriad of compile and link errors but I'm stuck on one final problem.
Please note that this application compiled/linked and ran just fine out of
Visual Studio.NET 2003.
Details:
It's originally incarnated as an MFC app, i.e. CWinApp, CMultiDocTemplate,
CDocument, etc.
Today however, it's still an MFC app but it's got sections of Managed C++
Code all over the place.
Obstacle:
At compile time Visual Studio 2005 reports the following error:
c:\program files\microsoft visual studio 8\vc\include\comdefsp.h(1041) :
error C2872: 'IServiceProvider' : ambiguous symbol
could be 'c:\program files\microsoft visual studio
8\vc\platformsdk\include\servprov.h(100) : IServiceProvider'
or 'c:\windows\microsoft.net\framework\v2.0.50727\mscorlib.dll :
System::IServiceProvider'
Problem:
I've scoured the code including generating precompiled files, to determine
where IServiceProvider is actually used. It turns out NOWHERE. At least not
directly.
The Managed C++ Code parts are just a few minor Winforms. The Winforms
acquire functionality from other library assemblies external to this MFC
app. Not relevant.
I'm guessing at this point that mscorlib.dll::System::IServiceProvider in
not actually used by this MFC app.
However the COM Interface IServiceProvider may indeed be used since we do
some measure of CoCreateInstance().. to use MSXML4.DLL.
Questions:
1) Does anyone have any idea how to get passed this latest compiler
complaint?
2) Is there a way to exclude both the COM Interface IServiceProvider and
System::IServiceProvider?
3) Is or are there techniques for acquiring more build information at
compile time other than /VERBOSE and /P compiler switches?
Thanks in advance