Thought, I'll share with the list, what I found on the subject
today, m.b. it'll be helpful to somebody.
Under 8.1.5 on NT dll path specification in CREATE LIBRARY
statement was case-insensitive:
create library externDDM as
'D:\OraNT\bin\ext_ddm.dll'
/ will work properly no matter what is the actual case used in
path and file name, so "D:\OraNT\bin\ext_ddm.dll", as well as
"D:\ORANT\Bin\ext_ddm.dll", or "D:\orant\BIN\ext_ddm.dll".
It's different under 9.2 on Windows XP. Case used in
file path and name in CREATE LIBRARY should exactly match the case used in
Windows (what you see in Windows Explorer). So, if the path in XP is
"D:\orant\BIN" and the file name is "EXT_ddm.dll", then you statement should
look exactly like:
create library externDDM as
'D:\orant\BIN\EXT_ddm.dll'
/
You don't get any error, when you issue CREATE LIBRARY (even
if you use wrong case), but when you run code referencing external procedure in
this dll, you get:
ORA-28595: Extproc agent : Invalid DLL Path
BTW, "ORA-28595" is not described in Oracle documentation
(checked both 8.1 and 9.2).
Now, I'm not sure, if this problem is caused by 9.2 version or
XP, just didn't have chance to try different configuration (like 8.1.5 on
XP).
|