in reply to Running external apps

Brother, I should have guessed this right away, but it turns out that this is a REALLY common question for people running Apache on Windows. You have to specify the exact path for your perl executable in your .cgi scripts on Win32 for them to work. Here is an example:

#!c:\perl\bin\perl.exe -w use strict; use Win32::OLE; my $xl=new Win32::OLE('Excel.Application') or die $!; $xl->Workbooks->Open('c:\temp\cats.xls') or die $!; my $cellvalue = $xl->Sheets(1)->Range('A1')->value(); print qq|Content-type: text/html\n\n|; print '<html><body>' . $cellvalue . '</body></html>'; $xl->Quit(); #no zombie excels! 1;
If you don't do this you will get a 720003 error message in your Apache error logs (you do know where those are, don't you?) regarding your .cgi script.

As an aside, though, you really should dump the idea of using Excel as a data source on the server. I mean, it is a memory hog and takes forever to load. If you have to, use Text::CSV and export that Excel data to .csv format. Much, much faster.

Celebrate Intellectual Diversity