locked
Windows 7 and Oracle connection from .NET with System.Data.OracleClient RRS feed

  • Question

  • User1650543486 posted

    Hi!

     Ok, yes, I'm using Windows 7. What can I do, I had Vista and it was...painfull?

     

    But I'm having problem with .net and conn to Oracle now. So, I'm using 64bit version of win7 and Visual Studio 2008 and .net Framework 3.5. I'm also using OracleInstant client 11 and trying to connect to Oracle 9g database through web application (c#).

     It gives me this error:

    System.Data.OracleClient requires Oracle client software version 8.1.7 or greater

     

    Which is strange since I use Oracle instant client 11. And there must be something with this System.Data.OracleClient dll, because I can connect to database from sqldeveloper, no problems at all. If anyone have any ideas?

     

    I already tried that trick with setting permissons to Authenticated users (eventually I gave ful control to Everyone, what can I do...?), so that is useless for me. And I really don't wanna chane it to Oracle.Data provider... My PATH variable is also set and TNS_ADMIN also. As said before, I CAN connect to database through SQLDEVELOPER.

     thanks!

     

    Matic

    Monday, June 22, 2009 10:42 AM

All replies

  • User364663285 posted
    It says that your Oracle client is old. You can try to set up 10g client for that.

     

    Monday, June 22, 2009 9:44 PM
  • User1650543486 posted

    Well, like I pointed out:

     

    - I use Oracle instant client 11! So that error is inappropriate that is obvious, but I wanna know how to solve it. I think there is something wrong with Oracle.System.OracleClient dll or what?!? I just wonder if someone had the same problem and solve it. It's really pain in the a..

    Tuesday, June 23, 2009 4:44 AM
  • User364663285 posted

    Did you try this or not?

    http://www.oracle.com/technology/tech/windows/odpnet/index.html

    Tuesday, June 23, 2009 4:53 AM
  • User1650543486 posted

     No, I haven't. But like I said, I don't want to use ODP. The thing is, everything is working on other PC's. The problem is just on my and since there are more people working on the same app, it would be annoying to install that ODP on all machines and changing the whole thing. And maybe it would work anyway. This Oracle thing is so weird...

     

    anyway, if someone finds something, i will appreciate it.

     

     

    Monday, June 29, 2009 10:22 AM
  • User1650543486 posted

     Anyway, I think the problem is in .dll's in Windows/Assembly.

     

    I have both dll for 32 and 64 bit version of OS and Oracle client. Somehow, I guess, it uses 32 version dll I don't know why and it is driving me nuts!!! How the hell can I uninstall that 32 bit version dll??? I says Access denied, although I am an administrator on machine. WTF? I wanna get rid of that 32 bit version!

    Monday, June 29, 2009 10:52 AM
  • User-471860112 posted

    I says Access denied, although I am an administrator on machine. WTF?
     

     

    This is probably because the DLL is loaded in memory.  Windows locks disk images of executables when they're executing so that it can throw away code pages when they're swapped out of memory, and then it reloads them from the original disk file.  This saves space in the page file.

    In order to delete that 32-bit DLL, you'll need to do that when it's not already loaded into memory by some process.

     

    Hope this helps,

    Kelly

    Tuesday, July 7, 2009 1:51 PM
  • User1650543486 posted

     I deleted that dll but that doesn't help. I also installed oracle dll for .NET, but it was the same. I just can't get it to work. A co-worker has Wnidows server 2008 64 bit and also has no success, same problem. I don't know, as far as I know for now, is the problem in System.Data.OracleClient. Anyway, there is where the first error occurs, when that dll thinks that the client is too old, which is not true. I also gave all permissons to that client folder. It works on one Vista SP2 machine though. Miracle ;)?

     

    If someone has an idea, or better yet, a solution, please let me know!

     

    Matic

    Tuesday, July 14, 2009 3:24 AM
  • User1643723667 posted

    I'm having the same problem except I'm trying to use a 64-bit development program that build's .NET web apps that make the call. I have also tried many of the same steps you've referenced.

    I will also note that I migrated my Oracle client installations to another drive that was presented to my virtual Windows 7 instance when the initially paultry allotment my installation drive was given grew too cramped.

    I made use of the File System Redirector through symlinks referencing to my 64-bit and 32-bit Oracle homes in the System32 and the SysWOW64 folders respectively, and yes I made sure I pointed each symlink to the appropriate bit-ness of Oracle home despite the misleading naming of the system folders. My client installations are the Oracle 11.0.2 instant client for 32-bit and the Oracle 11.0.2 enterprise client for 64-bit. I added C:\windows\system32\<symlink dir> to the system path variable as well, and no not the litteral string <symlink dir>. SQLDeveloper and all other applications that access my Oracle databases work just fine despite any differences in bit-ness, just not the .NET apps.

    To explain the steps I've taken after all was working well and since trying to get this recently installed .NET development app's test of connections to Oracle to work:

    • I've added ORACLE_HOME, ORACLE_BASE, and TNS_ADMIN to the system variables rather than just for my login. Still giving 8.1.7
    • I gave IIS account read and execute access to the Oracle home directories. Still giving 8.1.7
    • I begrudgingly gave the Everyone account read and execute access to the Oracle home directories. Still giving 8.1.7
    • I double checked my symlinks, since I had initially pointed them to the C: drive location, and pointed them to their respective locations on the extra drive instead. They were still working before despite my moving the Oracle Base entirely over to the other drive because I had also created a symlink from the old location to the new. Repointing directly to the new location is basically what I did with this step. Still giving 8.1.7, but at least everything else is still working.
    • I restarted the box with each step to be absolutely sure the new variables, perms, and linkings were being picked up. Still giving 8.1.7

    I'm not sure what you mean by the Oracle dll for .NET but I'll give that a search and a read.

    In anticipation of the flippant "why not use another development tool?" responces, I'm feeling lucky enough that our tech diffident report authoring team is developing .NET apps w/o realizing that they're developing applications yet. I am absolutely certain that all hell would break lose as inconfidence in their own ability would lead them to avert their attentions from the development tools were they to realize that they were working as applications developers. Sometimes it's better to let them stop worring and just love the bomb.

    Anybody have any suggestions or wisdom to impart on getting the .NET calls to the Oracle client working on my VMWare View virtual box?

    Friday, February 22, 2013 12:37 PM