| Store | Cart

OLE Issue while Porting from Perl 5.6 to Perl 5.8

From: Frank Merrow <fmer...@qualcomm.com>
Tue, 17 Jul 2007 13:45:10 -0700
I suspect this is not so much a Perl 5.8 issue as a "OLE Upgrade" issue.

Our Perl 5.6 installation has version 0.1601 of OLE.pm, while the 
Perl 5.8 installation installs 0.1707.

I have an existing COM function that returns a BSTR.

Under Perl 5.6 if the BSTR is "empty" then Perl returned undef.

However, under Perl 5.8 if the BSTR is empty then Perl returns the 
null string ("").

Unfortunately, the software counts on the undef behavior and returned 
empty on error and "" as a valid value (in some cases).

I'm have multiple inherited classes that I am trying to wade my way 
through, but it isn't clear to me at what level the error even occurs.

I was hoping something as simple as Win32::OLE->Options("Variant") 
would fix it, but it doesn't seem to.

If anyone has any insight to how OLE was changed in these versions I 
would appreciate some guidance.

Frank

Recent Messages in this Thread
Frank Merrow Jul 17, 2007 08:45 pm
Jan Dubois Jul 17, 2007 09:10 pm
Frank Merrow Jul 17, 2007 10:35 pm
Frank Merrow Jul 17, 2007 11:33 pm
Messages in this thread