Page 1 of 1

Wrong client version in OCIVersion

Posted: Thu 05 Jul 2012 11:52
by cis-wurzen
ODAC 8.2.7 uses function OCIClientVersion in "OraCall.pas".
But checks its return value (<> OCI_SUCCESS).
"VersionAr" contains the right values (for example 11 2 0 3 0) but they are discarded.
Instead it calls GetFileVersion and shows 11.2.0.1.0 (which is wrong for client 11.2.0.3.0).

Oracle documentation and metalink note 363381.1 don't mention to check result of OCIClientVersion.

Re: Wrong client version in OCIVersion

Posted: Mon 09 Jul 2012 08:45
by AlexP
hello,

Unfortunately, Oracle documentation has a mistake. If to look at the ociap.h header file, you can find that the OCIClientVersion function is declared as void

Code: Select all

/*----------------------- OCIClientVersion ------------------------------*/
void OCIClientVersion(sword *major_version,
                      sword *minor_version,
                      sword *update_num,
                      sword *patch_num,
                      sword *port_update_num);
/*----------------------- End OCIClientVersion --------------------------*/
therefore we will change the retrieving of the Oracle client version in the next build.

P.S. The library file version doesn't agree with the real client version.

Re: Wrong client version in OCIVersion

Posted: Fri 20 Jul 2012 12:25
by AlexP
hello,

We've fixed this behaviour and this fix will be included in the next build.