[Ace-users] Question about running ORBs from a DLLs

danverde danverde at comcast.net
Tue Aug 28 15:15:09 CDT 2007


    TAO VERSION: 1.5.10
    ACE VERSION: 5.5.10

    HOST MACHINE and OPERATING SYSTEM:
Intel P4 / Windows XP / MSVC 7.1

    TARGET MACHINE and OPERATING SYSTEM, if different from HOST:
    COMPILER NAME AND VERSION (AND PATCHLEVEL):
Same

    THE $ACE_ROOT/ace/config.h FILE:
#define ACE_HAS_STANDARD_CPP_LIBRARY 1
#define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
#ifdef _DEBUG
#define ACE_HAS_DUMP 1
#endif // _DEBUG
#include "ace/config-win32.h"


    THE $ACE_ROOT/include/makeinclude/platform_macros.GNU FILE:
N/A


    CONTENTS OF $ACE_ROOT/bin/MakeProjectCreator/config/
default.features
    (used by MPC when you generate your own makefiles):
N/A

    AREA/CLASS/EXAMPLE AFFECTED:

    DOES THE PROBLEM AFFECT:
        COMPILATION?  no
        LINKING?           no
        EXECUTION?     yes
        OTHER (please specify)?

    SYNOPSIS:
The instruction at "0x0046f980" referenced memory at "0x00000000"
error when using a reference obtained from string_to_object.

            CORBA::Object_ptr obj =
                m_ORB->string_to_object (strDataManagerIOR.c_str());
            m_DataManager =
                DCMManSrvr::DCMDataManager::_narrow (obj);
            if (CORBA::is_nil (m_DataManager))
            {
                ACE_ERROR_RETURN ((LM_ERROR,
                    ACE_TEXT ("could not connect to data manager (bad
IOR)\n")), -1);
            }

            m_DataManager->IsLocal ();  <-- this causes a the null
pointer exception

The program then exits and gives the runtime error R6025 pure virtual
function call error.

    DESCRIPTION:
Are there any gotchas that I need to be concerned with when running an
orb from a dll?
The calling application is already running another ORB in the exec for
other reasons, is there a conflict that I am experiencing?

Thanks for any advice.
Dan



More information about the Ace-users mailing list