http://www.perlmonks.org?node_id=16738

johnmbd has asked for the wisdom of the Perl Monks concerning the following question:

I'm trying to get a connection to an Oracle DB. It works via the command line but craps out through the browser. Here is the code
use CGI qw(:all); use CGI::Carp qw(fatalsToBrowser); use strict; use DBI; print header; my $dbh = DBI->connect("dbi:Oracle:host=pikachu;sid=DEVORANT", "so", " +so") or die "Can\'t connect to -- $DBI::errstr\n"; print "hello world";
Here is what gets dumped to the browser:
Content-type: text/html Software error: install_driver(Oracle) failed: [Tue Jun 6 14:53:43 2000] C:\InetPub\cgi-bin\spmc\search.pl: [Tue Jun 6 14:53:43 2000] C:\InetPub\cgi-bin\spmc\search.pl: Can't load 'C:/Perl/site/lib/auto/DBD/Oracle/Oracle.dll' for module DBD::Oracle: load_file:Access is denied at C:/Perl/lib/DynaLoader.pm line 169. [Tue Jun 6 14:53:43 2000] C:\InetPub\cgi-bin\spmc\search.pl: [Tue Jun 6 14:53:43 2000] C:\InetPub\cgi-bin\spmc\search.pl: [Tue Jun 6 14:53:43 2000] C:\InetPub\cgi-bin\spmc\search.pl: [Tue Jun 6 14:53:43 2000] C:\InetPub\cgi-bin\spmc\search.pl: at (eval 7) line 3 at C:\InetPub\cgi-bin\spmc\search.pl line 17 For help, please send mail to this site's webmaster, giving this error message and the time and date of the error.
I've checked out the DynaLoader.pm file at line 169 but it tells me (just above in a comment) that "Many dynamic extension loading problems will appear to come from this section of code: XYZ failed at line 123 of DynaLoader.pm. Often these errors are actually occurring in the initialisation C code of the extension XS file. Perl reports the error as being in this perl code simply because this was the last perl code it executed." I can't tell if this is the case. If it is, can I work around it, if it isn't can anyone help me?