On Fri, 08 May 2009, Glenn Linderman wrote:
> On approximately 5/8/2009 12:54 PM, came the following characters from
> the keyboard of Jan Dubois:
> >
> > Well, you didn't provide the mapping from line 3352 to $Excel->Close().
> 
> It sure looks like I said I get an error on the last line, and


[...]

So you did.  I'm sorry, I don't quite understand how I missed that.

> I removed the line, tested the program.  The error didn't recur, and
> Excel didn't stay around.  Thanks for the help.  I'm not a fan of MS,
> Excel, or OLE, preferring to spend time doing useful things, but
> sometimes I try to cut-n-paste some MS stuff into my programs when they
> must interface to some preexisting use... I've read some stuff, but
> error messages like these are totally useless without long experience.
> Poor error messages, and poor error handling are two of my biggest beefs
> with post MS-DOS MS software.  MS-DOS wasn't too bad, but it has only
> gotten worse since.

[...]
 
> > No, it is not the "require".  The issue is that Win32::OLE is checking $^H
> > at runtime, but $^H is not a lexical variable.  So it's value doesn't
> > represent the proper state of "use strict" at the time the call was
> > compiled.
> 
> I'm glad you understand that!  All I know, is I used strict, so if OLE
> isn't (or can't) detect that properly, then probably it shouldn't try to
> do things based on strict or not...

That too is my fault, back in ancient history (1998) before I officially
maintained Win32::OLE I had rewritten large parts of Win32::OLE to make
them more powerful and more sane (IMO), including the removal of the
weird anonymous collection retry logic.  But I got some resistance from
the people at ActiveState (I didn't work there at that time) and as
a compromise only disabled the hack under "use strict" on the assumption
that all sane code would "use strict" anyways.  I simply did not understand
the hinting mechanism in $^H correctly at that time, and regretted not
fighting harder to get the hack removed ever since.

But anyways, none of the objecting parties are actively involved with
ActiveState or Perl anymore, so I guess I'm free to fix this now.

Cheers,
-Jan

_______________________________________________
Perl-Win32-Users mailing list
Perl-Win32-Users@listserv.ActiveState.com
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs

Reply via email to