Oracle Probs with ADO.NET

G

Guest

Hi,
I'm using Oracle Client 8.1.7 with VB.NET DotNet 2003. I'm trying to connect to an Oracle DB using Microsoft OLE DB Provider for Oracle. I'm being able to create the Data Connection but when i try to create the OracleConnection and the OracleDataAdapter, i'm getting the folowing message:

Unable to find an entry point named OCIEnvCreate in DLL oci.dll

I checked the permission on the Oracle Home folder (c:\orant) but it is set to full control for everyone. I tried to add authenticated users and set their permissions for read and execute but it didnt work.

Can you help me please?

Thanks
 
M

Miha Markic [MVP C#]

Hi Jy,

Is there a particular reason you don't ues managed provider?
Is this an asp.net application?
Do you have more than one oracle home?
What about c:\orant\bin folder permissions?

--
Miha Markic [MVP C#] - RightHand .NET consulting & development
miha at rthand com
www.rthand.com

Jy Saghbini said:
Hi,
I'm using Oracle Client 8.1.7 with VB.NET DotNet 2003. I'm trying to
connect to an Oracle DB using Microsoft OLE DB Provider for Oracle. I'm
being able to create the Data Connection but when i try to create the
OracleConnection and the OracleDataAdapter, i'm getting the folowing
message:
Unable to find an entry point named OCIEnvCreate in DLL oci.dll

I checked the permission on the Oracle Home folder (c:\orant) but it is
set to full control for everyone. I tried to add authenticated users and set
their permissions for read and execute but it didnt work.
 
G

Guest

What do u mean by managed provider? Is there another provider for Oracle than the one i'm using?
The problem i encountered is in VB.NET application.
I have one Oracle Home
I checked the permissions on orant/bin. Same as orant. Full permission for everyone.

Thanks

Miha Markic said:
Hi Jy,

Is there a particular reason you don't ues managed provider?
Is this an asp.net application?
Do you have more than one oracle home?
What about c:\orant\bin folder permissions?

--
Miha Markic [MVP C#] - RightHand .NET consulting & development
miha at rthand com
www.rthand.com

Jy Saghbini said:
Hi,
I'm using Oracle Client 8.1.7 with VB.NET DotNet 2003. I'm trying to
connect to an Oracle DB using Microsoft OLE DB Provider for Oracle. I'm
being able to create the Data Connection but when i try to create the
OracleConnection and the OracleDataAdapter, i'm getting the folowing
message:
Unable to find an entry point named OCIEnvCreate in DLL oci.dll

I checked the permission on the Oracle Home folder (c:\orant) but it is
set to full control for everyone. I tried to add authenticated users and set
their permissions for read and execute but it didnt work.
Can you help me please?

Thanks
 
M

Miha Markic [MVP C#]

Hi Jy,

Jy Saghbini said:
What do u mean by managed provider? Is there another provider for Oracle
than the one i'm using?

There is also Oracle's own managed provider. However this works only with
higher version clients, so it is not usefull in your case. (you are using
the right one).
The problem i encountered is in VB.NET application.
I have one Oracle Home
I checked the permissions on orant/bin. Same as orant. Full permission for
everyone.

That's strange. Does your Oracle client work from other applications?
 
G

Guest

Actually, what i have to do is to migrate an application from Oracle Developer to VB.NET. The application itself runs very well, but the application uses Oracle Forms, so its logical that it works. I haven't try to connect from another application. From what other application can i try it?
 
P

Paul Clement

¤ Actually, what i have to do is to migrate an application from Oracle Developer to VB.NET. The application itself runs very well, but the application uses Oracle Forms, so its logical that it works. I haven't try to connect from another application. From what other application can i try it?
¤

Can you connect and query the database with SQL Plus?


Paul ~~~ (e-mail address removed)
Microsoft MVP (Visual Basic)
 
R

Roy Fine

Miha Markic said:
Hi Jy,

Is there a particular reason you don't ues managed provider?
Is this an asp.net application?
Do you have more than one oracle home?
What about c:\orant\bin folder permissions?

As someone with 10+ years of heavy OCI development experience, I offer the
following:

The OP is able to load the oci.dll, so it is not a permissions issue at all.
Rather it is a version issue - the oci.dll does not have the function
OCIEnvCreate exported. OCIEnvCreate was first introduced in Oracle 8i,
specifically Oracle 8.1.5, replacing OCIInitialize from Oracle 8.0 and olog
from Oracle OCI 7.x. So instead, it would appear that the OP does not have
Oracle Client 8.1.7 as reported, rather has something prior to Oracle Client
8.0 - or at least has a prior version of Oracle Home\bin at the head of the
default path environment setting.

I suggest that the OP verify environment variable path setting, then the
client version before proceeding...
..
regards
roy fine

--
Miha Markic [MVP C#] - RightHand .NET consulting & development
miha at rthand com
www.rthand.com

Jy Saghbini said:
Hi,
I'm using Oracle Client 8.1.7 with VB.NET DotNet 2003. I'm trying to
connect to an Oracle DB using Microsoft OLE DB Provider for Oracle. I'm
being able to create the Data Connection but when i try to create the
OracleConnection and the OracleDataAdapter, i'm getting the folowing
message:
Unable to find an entry point named OCIEnvCreate in DLL oci.dll

I checked the permission on the Oracle Home folder (c:\orant) but it is
set to full control for everyone. I tried to add authenticated users and set
their permissions for read and execute but it didnt work.
Can you help me please?

Thanks
 
M

Miha Markic [MVP C#]

Roy, good idea.
As someone with 10+ years of heavy OCI development experience, I offer the
following:

The OP is able to load the oci.dll, so it is not a permissions issue at all.
Rather it is a version issue - the oci.dll does not have the function
OCIEnvCreate exported. OCIEnvCreate was first introduced in Oracle 8i,
specifically Oracle 8.1.5, replacing OCIInitialize from Oracle 8.0 and olog
from Oracle OCI 7.x. So instead, it would appear that the OP does not have
Oracle Client 8.1.7 as reported, rather has something prior to Oracle Client
8.0 - or at least has a prior version of Oracle Home\bin at the head of the
default path environment setting.

I suggest that the OP verify environment variable path setting, then the
client version before proceeding...
.
regards
roy fine

--
Miha Markic [MVP C#] - RightHand .NET consulting & development
miha at rthand com
www.rthand.com

Jy Saghbini said:
Hi,
I'm using Oracle Client 8.1.7 with VB.NET DotNet 2003. I'm trying to
connect to an Oracle DB using Microsoft OLE DB Provider for Oracle. I'm
being able to create the Data Connection but when i try to create the
OracleConnection and the OracleDataAdapter, i'm getting the folowing
message:
Unable to find an entry point named OCIEnvCreate in DLL oci.dll

I checked the permission on the Oracle Home folder (c:\orant) but it
is
set to full control for everyone. I tried to add authenticated users and set
their permissions for read and execute but it didnt work.
Can you help me please?

Thanks
 
G

Guest

hi Roy,
The thing i dont get is that i only have one version of Oracle installed on my PC, and its the 8.1.7.0.0. I got the version from the SQL plus and there was no previous installation of Oracle on my machine.

What do u suggest me to do?

Thanks


Roy Fine said:
Miha Markic said:
Hi Jy,

Is there a particular reason you don't ues managed provider?
Is this an asp.net application?
Do you have more than one oracle home?
What about c:\orant\bin folder permissions?

As someone with 10+ years of heavy OCI development experience, I offer the
following:

The OP is able to load the oci.dll, so it is not a permissions issue at all.
Rather it is a version issue - the oci.dll does not have the function
OCIEnvCreate exported. OCIEnvCreate was first introduced in Oracle 8i,
specifically Oracle 8.1.5, replacing OCIInitialize from Oracle 8.0 and olog
from Oracle OCI 7.x. So instead, it would appear that the OP does not have
Oracle Client 8.1.7 as reported, rather has something prior to Oracle Client
8.0 - or at least has a prior version of Oracle Home\bin at the head of the
default path environment setting.

I suggest that the OP verify environment variable path setting, then the
client version before proceeding...
..
regards
roy fine

--
Miha Markic [MVP C#] - RightHand .NET consulting & development
miha at rthand com
www.rthand.com

Jy Saghbini said:
Hi,
I'm using Oracle Client 8.1.7 with VB.NET DotNet 2003. I'm trying to
connect to an Oracle DB using Microsoft OLE DB Provider for Oracle. I'm
being able to create the Data Connection but when i try to create the
OracleConnection and the OracleDataAdapter, i'm getting the folowing
message:
Unable to find an entry point named OCIEnvCreate in DLL oci.dll

I checked the permission on the Oracle Home folder (c:\orant) but it is
set to full control for everyone. I tried to add authenticated users and set
their permissions for read and execute but it didnt work.
Can you help me please?

Thanks
 
R

Roy Fine

Jy,

At a command prompt, type the command path, and examine the output.
specifically, what are the entries with ???\bin, where ??? has the keyword
Oracle in it?

Do a find file for oci.dll, searching from the root path - how many entries
does does it return. For each, what is the size of the file.

For the oci.dll files that you find (hopefully there will be just one), run
the Depends utility, and see if the OCIEnvCreate function is exported - if
so, what is the ordinal value?

I hope this helps a bit, if nothing else, it may add a bit of structure to
the debugging process.

The solution to these kinds of problems is usually trivial, its the
discovery that causes the big headaches :)

regards
roy fine


Jy Saghbini said:
hi Roy,
The thing i dont get is that i only have one version of Oracle installed
on my PC, and its the 8.1.7.0.0. I got the version from the SQL plus and
there was no previous installation of Oracle on my machine.
What do u suggest me to do?

Thanks


Roy Fine said:
Miha Markic said:
Hi Jy,

Is there a particular reason you don't ues managed provider?
Is this an asp.net application?
Do you have more than one oracle home?
What about c:\orant\bin folder permissions?

As someone with 10+ years of heavy OCI development experience, I offer the
following:

The OP is able to load the oci.dll, so it is not a permissions issue at all.
Rather it is a version issue - the oci.dll does not have the function
OCIEnvCreate exported. OCIEnvCreate was first introduced in Oracle 8i,
specifically Oracle 8.1.5, replacing OCIInitialize from Oracle 8.0 and olog
from Oracle OCI 7.x. So instead, it would appear that the OP does not have
Oracle Client 8.1.7 as reported, rather has something prior to Oracle Client
8.0 - or at least has a prior version of Oracle Home\bin at the head of the
default path environment setting.

I suggest that the OP verify environment variable path setting, then the
client version before proceeding...
..
regards
roy fine

--
Miha Markic [MVP C#] - RightHand .NET consulting & development
miha at rthand com
www.rthand.com

Hi,
I'm using Oracle Client 8.1.7 with VB.NET DotNet 2003. I'm trying to
connect to an Oracle DB using Microsoft OLE DB Provider for Oracle. I'm
being able to create the Data Connection but when i try to create the
OracleConnection and the OracleDataAdapter, i'm getting the folowing
message:

Unable to find an entry point named OCIEnvCreate in DLL oci.dll

I checked the permission on the Oracle Home folder (c:\orant) but it is
set to full control for everyone. I tried to add authenticated users
and
set
their permissions for read and execute but it didnt work.

Can you help me please?

Thanks
 
G

Guest

Roy,
Allright. I did what u told me to do. I found one oci.dll file at c:\orant\bin\
Its size is 37.2 Kbytes. I ran the depends utility and looked for the OCIEnvCreate entry but i didnt find it. I found the OCIEnvInit entry which has the ordinal value 48.
I found though the OCIInitialize function at the ordinal value 52 and the olog function at the ordinal value 342.

Whats weird is that i'm pretty sure that i have the Oracle Server version 8.1.7.0.0, since its what SQL Plus 8.0 writes when i query a table. Now there is something. Is it possible that Oracle Server's version and Oracle Client's version is different? Is it possible that i have a previous version of Oracle Client, and query a server with a newer version?

Thanks
 
R

Roy Fine

Jy Saghbini said:
Roy,
Allright. I did what u told me to do. I found one oci.dll file at c:\orant\bin\
Its size is 37.2 Kbytes. I ran the depends utility and looked for the
OCIEnvCreate entry but i didnt find it. I found the OCIEnvInit entry which
has the ordinal value 48.
I found though the OCIInitialize function at the ordinal value 52 and the
olog function at the ordinal value 342.
Whats weird is that i'm pretty sure that i have the Oracle Server version
8.1.7.0.0, since its what SQL Plus 8.0 writes when i query a table. Now
there is something. Is it possible that Oracle Server's version and Oracle
Client's version is different? Is it possible that i have a previous version
of Oracle Client, and query a server with a newer version?


From the information that you provided above, it seems pretty clear that you
have an Oracle 8.0 client installation - certainly prior to 8.1.5 and later
than 7.3

Oracle Server does not use OCI, that is used only by the client
applications. When you run SqlPlus, the version info that is reported after
the connect command is the version of the server, not of the client. Yes,
you can have version 8.0 of the client and version 8.1.7 of the server, but
typically never on the same machine - is the Oracle server on the same
machine as your application is, or is the server off on another machine on
the network?

regards
roy fine
 
R

Roy Fine

Jy,

something that I just recalled - you mentioned that you have Oracle Forms
installed - on several ocassions that I have used Oracle Forms and an OleDB
or ODBC application on the same machine, I recall that Oracle Forms Version
6 will install Oracle client files from Oracle 8. Did you install Oracle
Forms on the machine that you are having these preoblems with? If so, then
you will have to install Oracle 8i client again - and make sure that you get
the path setting correct.

regards
roy fine


Jy Saghbini said:
Roy,
Allright. I did what u told me to do. I found one oci.dll file at c:\orant\bin\
Its size is 37.2 Kbytes. I ran the depends utility and looked for the
OCIEnvCreate entry but i didnt find it. I found the OCIEnvInit entry which
has the ordinal value 48.
I found though the OCIInitialize function at the ordinal value 52 and the
olog function at the ordinal value 342.
Whats weird is that i'm pretty sure that i have the Oracle Server version
8.1.7.0.0, since its what SQL Plus 8.0 writes when i query a table. Now
there is something. Is it possible that Oracle Server's version and Oracle
Client's version is different? Is it possible that i have a previous version
of Oracle Client, and query a server with a newer version?
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top