|
AlisaBH
Član broj: 120463 Poruke: 12 *.bstelecom.ba.
|
Pokusavam na masini na kojoj je instaliran SLES 10, Mono 64bitni i Oracle client 64 bitni, da se sa aplikacijom spojim na oracle bazu preko OCI-a, ali mi prilikom pokusaja konekcije izbacuje sljedeci exception.
at (wrapper managed-to-native) BST_Core.OracleEngine.LoginOracle (string,uint,string,uint,string,uint,int&,int&,int&,int&) <0x00012>
at (wrapper managed-to-native) BST_Core.OracleEngine.LoginOracle (string,uint,string,uint,string,uint,int&,int&,int&,int&) <0xffffffff>
at BST_Core.OracleEngine.OpenAllDBConnections () <0x000f1>
at BST_Core.OracleEngine..ctor (string,BST_Util.LogFile,BST_Core.SMSC_Core) <0x0073f>
at BST_Core.SMSC_Core.OpenSMSC () <0x006e0>
at BST_Core.SMSC_Core..ctor () <0x00137>
at BST_Form.SMSC_Form.CreateCore () <0x0003c>
at (wrapper delegate-invoke) System.MulticastDelegate.invoke_void () <0xffffffff>
at (wrapper runtime-invoke) System.Object.runtime_invoke_void (object,intptr,intptr,intptr) <0xffffffff>
Native stacktrace:
mono [0x51ecc8]
mono [0x4ec55e]
/lib64/libpthread.so.0 [0x2b26638df140]
/opt/oracle/product/runtime/lib/libclntsh.so.10.1(kpughndl0+0x206) [0x2aaab0164b76]
/opt/oracle/product/runtime/lib/libclntsh.so.10.1(OCIHandleAlloc+0x1b) [0x2aaab020d499]
/usr/local/lib/libBulkInsertOra.so(LoginOracle+0xc7) [0x2aaaab953aed]
[0x404f32bd]
Prepostavljam da je do nekih putanja, ali mi se cini da sam sve dobro podesila. I jos me zbunuje zasto izbaci ovaj exception na pozivu OCIHandleAlloc, mada se prije toga pozivaju funkcije OCIInitialize i OCIEnvInit. Ima li neko ideju sta bi moglo biti. hvala unaprijed.
Funkcija je sljedeca:
int LoginOracle(char userName[],ub4 userNameLen,char DBName[],ub4 DBNameLen,char password[],ub4 passwordLen,void **pEnvp,void **pErrp,void **pSvcp,void **pStmtp)
{
int error = 0;
OCIEnv **envp = (OCIEnv **)pEnvp; /* environment handle */
OCIError **errp = (OCIError **)pErrp; /* error handle */
OCISvcCtx **svcp = (OCISvcCtx **)pSvcp; /* service context handle */
OCIStmt **stmtp = (OCIStmt **)pStmtp; /* statement handle */
/* setup */
error = checkerr(*errp,OCIInitialize((ub4) OCI_OBJECT,0,0,0,0));
if(error!=0)
return error;
error = checkerr(*errp,OCIEnvInit(envp,OCI_DEFAULT,0,0));
if(error!=0)
return error;
/*sword OCIHandleAlloc(CONST dvoid *parenth, dvoid **hndlpp, CONST ub4 type,
CONST size_t xtramem_sz, dvoid **usrmempp);*/
error = checkerr(*errp,OCIHandleAlloc(*envp,(dvoid **) errp, OCI_HTYPE_ERROR, 0,0));
if(error!=0)
return error;
error = checkerr(*errp,OCIHandleAlloc(*envp,(dvoid **) svcp, OCI_HTYPE_SVCCTX, 0,0));
if(error!=0)
return error;
error = checkerr(*errp,OCIHandleAlloc(*envp,(dvoid **) stmtp, OCI_HTYPE_STMT, 0,0));
if(error!=0)
return error;
error = checkerr(*errp, OCILogon(*envp, *errp, svcp,(text *) userName, userNameLen, (text *)password, passwordLen,(text *)DBName, DBNameLen));
return error;
}
|