Celebrate National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17


Distributing a windows application with connection to an Oracle database

Posted on 2006-10-30
Medium Priority
Last Modified: 2007-12-19

Last time I asked this question, I asked what was required for an application that access oracle  on a server and uses a TNSnames file.  The answer I got was that I needed to install the oracle client.

I tested it out on a machine that didn't have oracle.  Installed the client and my application.

I am getting 2 errors.  The first is "The procedure entry point kge_pop_guard_fr coulf not be located in the dynamic link library orageneric.dll"

and the second one is:  "Unable to load DLL (OraOps10.dll)"

I tried installing ODP, but it didn't make a difference.  How do I get this working?  Please, be detailed...I am an oracle newbie!

Question by:sarahjackel
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 2
  • 2
  • +1
LVL 11

Expert Comment

ID: 17838661
Can you please list the exact steps in detail befor you get these errors:

- application type (C++, Java, Vb, etc..)
- database version
- Server Operating system
- client machine operating system
- Database version?

Cheers :)

LVL 35

Expert Comment

by:Mark Geerlings
ID: 17839532
This error: "Unable to load DLL (OraOps10.dll)" indicates that your application expects to find an Oracle10 client.  Which version of the Oracle client did you install?  Did you do a "full" or "administrator level" install of the Oracle client, or just a more limited client install?  I saw this error recently on a machine that used a C# program.  The solution was to do a full "administrator" install of the Oracle10 Oracle client to get the OraOps10.dll file that the application expected.

Author Comment

ID: 17844119
Thanks for the suggestion.  I had only installed the runtime client.  I uninstalled it and reinstalled the administrator client.  

The error I was having seems to be resolved, but now when I load my application I get this error: "Connection must be open for this operation"

I found on this website: http://forums.oracle.com/forums/thread.jspa?threadID=315550&tstart=0

 that the problem is caused by Oracle.DataAccess.dll being included in the dependencies of the setup application and that is needs to be excluded.  I did this and reinstalled, but the dll still shows up there.  If I delete it and run the app, it reinstalls it.

I thought maybe if I tried installing it on a machine that has never had my application, it may behave differently, but no.  The dll shows up even though it has been excluded.

any suggestions?

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!


Author Comment

ID: 17844265
here are the answers to your questions, mohammadzahid

- application type (C++, Java, Vb, etc..)  - C# windows app
- database version – (on server)  Oracle 10g Release
- Server Operating system- Windows server 2003; service pack 1
- client machine operating system – windows XP professional; service pack 2
      Oracle Client – Administrator type;
- Database version? ??

Author Comment

ID: 17844874
I'm not sure if this willgive a better clue to my problem, but I just discovered it...

the reference to Oracle.DataAccess in my applicaiton is version  I tried changing it to version and ran it from the development machine, but it broke on Connection.Open().

Is this the same issue?
LVL 35

Expert Comment

by:Mark Geerlings
ID: 17845194
I know how to get the Oracle client to communicate with an Oracle database, but I have very little experience with non-Oracle programs that try to use an Oracle client, and that is limited to those that use Oracle's ODBC driver.  Your application uses something else in the Oracle client that I am not familiar with.
LVL 11

Expert Comment

ID: 17846100
what was the error message when connection to the database failed on  Connection.Open() ?

Author Comment

ID: 17846247
The error is:
an unhandled exception of type 'Oracle.DataAccess.Client.OracleException' occured in Oracle.DataAccess.dll

Additional information: system error


Oracle.DataAccess.Client.OracleException Data provider internal error(-3000)
[System. Runtime.InteropServices.COMException(0x80004005);Unspecified error (Exception form HRESULT: 0x80004005(E_FAIL))
at Oracle.DataAccess.Client.OpsCon.Open(IntPtr&opsConCtx, IntPtr&opsERRCTX,OpoConValCtx, OpoConRefCtx&pOpoConRefCtx)
at Oracle.DataAccess.Client.ConnectionDispenser.CreateConnectionPool(OpoConCtx&opoConCtx)]
at Oracle.DataAccess.Client.OracleException.HandleErrorHelper(Int32 errCode, OracleConnection conn, IntPtr opoErrctx, OpoSqlValCtx* pOpoSqlValCtx, Object src, string procedure)
at Oracle.DataAccess.Client.OracleException.HandleErrorInt32 errCode, OracleConnection conn, IntPtr opoErrctx, Object src)
at Oracle.DataAccess.Client.OracleConnection.Open()
at MORGAN.AbZMap.DatabaseMethods.SharedPrecinctread() in
C:\Development\MCounty\AbZMap\Windows\DatabaseMethods.cs:line 109
at MORGAN.frmSplashScreen.LoadPrecnct(backgroundWorker bw, Int32 sleepPeriod) in

Accepted Solution

miyahira earned 1500 total points
ID: 19329767
Well, for anyone who is dealing with this problem and ASP.NET, the solution is to give permissions for user ASP.NET on the folder: C:\Oracle\...\bin\

Featured Post

New benefit for Premium Members - Upgrade now!

Ready to get started with anonymous questions today? It's easy! Learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Working with Network Access Control Lists in Oracle 11g (part 2) Part 1: http://www.e-e.com/A_8429.html Previously, I introduced the basics of network ACL's including how to create, delete and modify entries to allow and deny access.  For many…
Using SQL Scripts we can save all the SQL queries as files that we use very frequently on our database later point of time. This is one of the feature present under SQL Workshop in Oracle Application Express.
This video shows setup options and the basic steps and syntax for duplicating (cloning) a database from one instance to another. Examples are given for duplicating to the same machine and to different machines
This video shows how to recover a database from a user managed backup

730 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question