in reply to Under CGI Mode Unable to access the Excel Application using Win32::OLE

Allow me to offer some debugging suggestions. "thru Apache under CGI" probably translates to "under a different user account with a different path and different permissions." That is probably the key to this puzzle.

OLE->new() loads a DLL. You can use procexp.exe from sysinternals.com to figure out which DLLs are loaded for a process. Using sleep(), you can slow down your execution and watch as DLLs get loaded. Pay attention to what is loaded when it works. Check that DLL out and see if it can be accessed by the account running apache (again, procexp can help you figure out what that account is). It may even need to be in the path (procexp again).

If you can't figure it out from that, use filemon.exe from sysinternals.com and filter out all but the apache process. Look and see what file isn't getting loaded correctly and what the reason is.

--NerdMachine

  • Comment on Re: Under CGI Mode Unable to access the Excel Application using Win32::OLE