asp error: SQLAllocHandle on SQL_HANDLE_ENV failed

i am dron
Дата: 11.05.2005 19:07:59
Всем доброго времени суток!

Ерунда какаято, выдает ошибку непонятную, найти мало что удалось по ней в сети, может кто-то знает.
Что делаю - коннект из asp к oracle.

Как делаю, вариант 1.
<% ...
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open
"Driver={Microsoft ODBC for Oracle};Server=test;Uid=system;Pwd=system;"
Set Rs = Conn.Execute(select......).
... %>

ошибка ->
Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][ODBC Driver Manager] Driver's SQLAllocHandle on SQL_HANDLE_ENV failed

вариант 2.
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.open "DSN=test;UID=system;PWD=system"
Set Rs = Conn.Execute(select......).

ошибка ->
Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][ODBC Driver Manager] Driver's SQLAllocHandle on SQL_HANDLE_ENV failed

Вариант 3:

<% ...
Set Conn = Server.CreateObject("ADODB.Connection")
DSNTest="
Provider=MSDAORA.1;Password=system;User ID=system;Data Source=test"
Conn.open DSNtest
Set Rs = Conn.Execute(select......).
... %>

ошибка ->
Microsoft OLE DB Provider for Oracle error '80004005'
Oracle client and networking components were not found. These components are supplied by Oracle Corporation and are part of the Oracle Version 7.3.3 or later client software installation. Provider is unable to function until these components are installed.

Подскажите плз куда копать.
Спасибо.
ooops
Дата: 11.05.2005 19:24:29
установить Oracle client ???
i am dron
Дата: 11.05.2005 19:53:45
Oracle стоит на том же сервере. Через Net Manager все настроено как положено, сид test на localhost и порт 1521. Другие приложения работают через него - все ок.

Вопрос по самой коннект стринг.
Server=test
test у меня это SID. Может тут надо ip сервера? Тоже не прокатило ((

Изучаю www.connectionstrings.com -> oracle -> ODBC
Может не тот раздел? Пойдут ли коннект стринги для ASP от .NET ?

Вот ...
ooops
Дата: 11.05.2005 20:02:10
от OLE DB должны подойти
i am dron
Дата: 12.05.2005 12:46:35
С OLEDB тоже как-то не очень идет.

1) Пробую так:
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=OraOLEDB.Oracle;Data Source=test;User Id=system;Password=system;"

Ошибка:
ADODB.Connection error '800a0e7a'
Provider cannot be found. It may not be properly installed.

2) Пробую вот так:
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=msdaora;Data Source=test;User Id=system;Password=system;"

Ошибка вот такая:
Microsoft OLE DB Provider for Oracle error '80004005'
Oracle client and networking components were not found. These components are supplied by Oracle Corporation and are part of the Oracle Version 7.3.3 or later client software installation. Provider is unable to function until these components are installed.


Я могу ему поверить что у меня нет такого провайдера и надо его проинсталлить. А откуда его взять? С дистрибутива оракла? А там как его могут звать?


Спасибо.
ooops
Дата: 13.05.2005 00:01:25
i am dron
А откуда его взять? С дистрибутива оракла? А там как его могут звать?
Ситуация становится просто забавной

1. вопрос по обычному ADO
2. в довесок - обычное ASP
3. и в заключение - вопрос по установке Oracle Client

Три пункта - и все мимо тематики форума ADO.NET
i am dron
Дата: 13.05.2005 11:52:20
:))
ага, забавно получилось, но вот в чем проблема. Вопрос то он не в установке оракл-клиента, все давно установлено, и даже переустановлено для гарантии, почему оно не работает то ...?
Суть такая, что по инету я нарыл прилично разных советов касающихся именно этой самой проблемы, но ни один пока не помог ((
Посмотрите плз ниже некоторые из этих советов, может они как-то натолкнут на мысль:

1) Hi! This is common problem, Go to your system32 directory and find for OCIW32.DLL and rename it to some name, I hope it should work.

-> тут беда в том, что в system32 этой dll нету, зато она есть в oracle\ora92\bin
Но удалять она себя не дает (при полностью выключенном оракле).

2) I had the same problem and here is what it took to fix it:
Go to your ORACLE_HOME folder, D:\Oracle\Ora92 in my case, and pull up its properties. Then head to the security tab and select the Authenticated Users group. The three permissions that should be checked are Read & Execute, List Folder Contents, and Read. Uncheck Read & Execute then RE-Check it again to reset permissions for everything underneath. Just to be safe, go into the ADVANCED settings and make sure that Authenticated Users has "This folder, subfolders and files" under the APPLY TO column. If not, double click on it and change the drop down to say that. It should say this already by now, but just be sure it does!
Reboot and everything should work as advertised ... it finally worked for me.

-> не помогает.

3) ...In Release 8.x, the library and DLL containing the OCI calls is named oci.lib and oci.dll. In Release 7.x, they were named ociw32.lib and ociw32.dll. At some point in the future, ociw32.lib and ociw32.dll will no longer be supported or released, making migration to the new calls mandatory...
Подводим итог: будучи залинкованной с ociw32.dll библиотека p2sora7.dll не только называется как 7, но и использует механизм семёрки. Восьмерка, конечно, его поддерживает, но вот когда твоя программа коннектится через нормальный oci.dll, будут возникать некоторые проблемы, возможно даже не видные на первый взгляд.

-> интерестные размышления, может дело в етой самой ociw32.dll ?

Что-то мне очень подсказывает, что ошибка где-то в версионности оракла/

Есть идеи? Может эту dll попробовать порубать из ora92\bin? А как?
programmator
Дата: 14.05.2005 08:07:37
i am Dron
я тоже парюсь бред какой-то
как успехи?
sesh
Дата: 02.11.2005 13:10:12
Надо запустить aspnet_regiis.exe /i и будет вам счастье
Александр Кротов
Дата: 19.06.2006 22:01:19
sesh
Надо запустить aspnet_regiis.exe /i и будет вам счастье

... и это не помогло :(
всё перепробывал. с web-сервиса asp.net - не работает. С обычно приложения - коннектится.
ПОМОГИТЕ!!! SOS!