Dependency walker msvcr80d.dll missing coredll.dll and dwmapi.dll



I've completed migrating one of our company's C++ Managed Code
applications to VS2005. I'm now attempting to run the application but there
seems to be problems when accessing an object that is properly exported from
a utility dll of ours. The dll is written in MFC with sections of C++
Managed Code.

The dll exports its objects in the same manner as any VS2005 Solution Wizard
driven win32 dll base code, using the model: __declspec(dllexport).

In fact when I peer into the dll with the DepedencyWalker app, the exports
are readily visible.

I copied msvcr80d.dll into the dll's folder before implementing
DepedencyWalker app on the dll.

DepedencyWalker complains that msvcr80d.dll requires coredll.dll and
dwmapi.dll.

This seems strange because the dll is NOT targeted for any embedded
platforms, it's targeted for x86 platforms only.

Further, when I attempt to step into the new(ing) up of the first object in
the dll, I get the following message:

"Managed Debugging Assistant 'FatalExecutionEngineError' has detected a
problem in C:\MyApp\MyApp.exe.

Additional Information: The runtime has encountered a fatal error. The
address of the error was at 0x79e7edd5 on thread 0xa20. The error code is
0x00000005. This error may be a bug in the CLR or in the unsafe or
non-verifiable portions of user code. Common sources of this bug include
user marshaling error for COM-Interop or PInvoke, which may corrupt the
stack."



I'm not an expert in COM-Interop but I believe C++ Managed Code leverages
just that to accomplish its .NET integration magic.

Can you provide me with any information on the above issues?

Can you provide me with the basics and the gotchas with regard to dll
exports and general access or a dlls methods and/or objects?

Thanks

Phnimx


.



Relevant Pages

  • Re: Integrating with legacy code
    ... Removed nochkclr.obj as a linker input ... Extention DLL. ... access them from within the web service, ... >order to add managed code to it: ...
    (microsoft.public.dotnet.general)
  • Re: Strange file not found exception
    ... Assemblies *must* reside in same directory. ... DLL on Windows Server 2003 x64 using PIA interop. ... I find creating a COM coclass object in managed code is ok, ...
    (microsoft.public.vc.language)
  • Re: Error using P/Invoke with Winsock API using CF.NET
    ... You aren't going to be able to pass a callback function from managed code, ... It might be significantly easier to create a native DLL ... setting up the socket in secure mode, ... >>> public static extern int ioctlsocket(int s, uint controlCode, object ...
    (microsoft.public.dotnet.framework.compactframework)
  • Re: create a wrapped managed dll that can be used from pure unmanaged code
    ... > code which calls into managed code" and some of those unmanaged ... Exporting a class based interface from a DLL ... public void SayHello() ... GCHandle gch; ...
    (microsoft.public.dotnet.languages.vc)
  • Re: Convert C-Builder program to Delphi?
    ... > quite separate from the function declaration itself. ... >this DLL ... >way the only place anything needs to be changed is in the #define macro. ... Exports SomeDLL_Open Name 'SomeDLL_Open'; ...
    (comp.lang.pascal.delphi.misc)