How can I use OO4O in COM+ object that written by VC++?
From: Heo, Jin Young <jrriu_at_korea.com>
Date: 28 Jul 2003 10:27:18 -0700
Message-ID: <8a3f8153.0307280927.4a6e39a5_at_posting.google.com>
Hello.. I wrote follow code, but it is not work... pool size is 0..
Date: 28 Jul 2003 10:27:18 -0700
Message-ID: <8a3f8153.0307280927.4a6e39a5_at_posting.google.com>
Hello.. I wrote follow code, but it is not work... pool size is 0..
OO4O in COM+ object very confuse me... T.T
How can I use OO4O in COM+ object that written by VC++?
- code ===========================
- first try
_IOraSessionPtr m_pOraSession;
OStartup(OSTARTUP_MULTITHREADED);
hr = ::CoCreateInstance( clsID, NULL, CLSCTX_INPROC_SERVER, IID__IOraSession, (void **)&m_pOraSession);
if(FAILED(hr)) strMsg = _bstr_t("bad IID 가 아닌가봐"); else { hr = m_pOraSession->CreateDatabasePool(1, 10, 100,_bstr_t("matizdb"), _bstr_t("scott/tiger"), 0);
m_lPoolSize = m_pOraSession->get_DbPoolCurrentSize(); } OShutdown();
2. second
IDispatchPtr m_pDisp;
m_pDisp = IDispatchPtr( __uuidof( OraSession ) );
OLECHAR* szName;
DISPID m_dispidCreateDatabase;
szName = L"CreateDatabasePool"
m_pDisp->GetIDsOfNames(IID_NULL, &szName, 1,
LOCALE_SYSTEM_DEFAULT, &m_dispidCreateDatabase);
VARIANT m_varg, m_retval;
DISPPARAMS m_dispparams;
VariantInit(&m_varg);
VariantInit(&m_retval);
m_dispparams.rgvarg = NULL; m_dispparams.cArgs = 0; m_dispparams.rgdispidNamedArgs = NULL; m_dispparams.cNamedArgs = 0; m_pDisp->Invoke(m_dispidCreateDatabase, IID_NULL,LOCALE_SYSTEM_DEFAULT, DISPATCH_METHOD, &m_dispparams, NULL, NULL, NULL); Received on Mon Jul 28 2003 - 19:27:18 CEST