Jan Dubois wrote:
> On Mon, 04 Feb 2008, Michael Ellery wrote:
>> Given some object and a property:
>>
>> my $obj = new Win32::OLE("SOME.class");
>> my $val = $obj->{SomeProperty};
>>
>> ...is there some way to determine the VT type of $val (or of
>> SomeProperty, equivalently). I often run into strange problems where I
>> expect a 32 bit negative value from some property, but when I simply
>> print it, perl shows it as a large positive value. It is bit
>> equivalent to the expected negative value, but somehow not being
>> interpreted with the corrected sign-ed-ness. The first thing I would
>> like to check is the VT type that Win32::OLE thought it got -- then
>> I'll see if I agree with how Win32::OLE is converting to perl scalars
>> based on the VT type.
>
> I haven't tested this, but you should be able to do something like this:
>
> my $prop = Win32::OLE::Variant->new();
> $obj->Dispatch('SomeProperty', $prop);
> print "V_VT(prop)=%d\n, $prop->Type);
>
With two minor syntax fixes to the print line, this works great. Thanks!
-Mike
_______________________________________________
Perl-Win32-Users mailing list
[email protected]
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs