On Fri, 08 Jun 2007, Foo JH wrote: > I wonder if I am alone in experiencing this. Simply put: putting 'use > Win32::OLE' in my modperl package will cause the Apache to fault. It > basically can't start at all. A window will pop up complaining about > 'Apache HTTP Server has encountered a problem and needs to close'. No > entry into the error log. > > Does anyone know if this can be worked around?
Using Win32::OLE in a multi-threaded way is generally not safe. It is definitely not working correctly if you use the threads.pm module or fork() emulation. It could potentially work in a multi-threaded environment if each interpreter is created independently (not using perl_clone()). When using the COM apartment threading model then each interpreter also needs to be bound to a specific thread, as it is then invalid to invoke methods on a COM object from any other thread than the one that created it. Cheers, -Jan