Skip Menu |

This queue is for tickets about the Wx-ActiveX CPAN distribution.

Report information
The Basics
Id: 72730
Status: open
Priority: 0/
Queue: Wx-ActiveX

People
Owner: Nobody in particular
Requestors: derhoermi [...] gmx.net
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: (no value)
Fixed in: (no value)



Subject: use Win32::OLE for GetOLE, PropVal is strings-only, IE9
Date: Sat, 26 Nov 2011 07:19:34 +0100
To: bug-wx-activex [...] rt.cpan.org
From: Bjoern Hoehrmann <derhoermi [...] gmx.net>
Hi, I had trouble using Wx::ActiveX, accessing methods and properties in particular. One problem was that the GetOLE method did not work, which turned out to be because I did not load the module myself first. That should be mentioned in the documentation (or it should load it itself, if that is a suitable option). The other is that PropVal seems to turn values into strings, even though say Wx::ActiveX::IE lists properties as being of other types like IDispatch, so often I just got "[object]". This stringification should also be mentioned in the documentation. (So far I'm using $ie->GetOLE()->Document to get to a proper Document object I can call method like createElement on, not sure if that is the best way.) It might also be worth noting that applications hosting Internet Ex- plorer will default to running in IE7 compatibility mode when IE9 is installed, meaning new features will be unavailable and others might not work as expected. The only way to change that would be through a <meta content="IE=9" http-equiv="X-UA-Compatible" /> meta header in the HTML document, a corresponding HTTP header when HTTP is used, or a "Feature Control" setting in the registry for the executable this is meant to apply to (which in case of perl.exe would be perl.exe). I at least know no other way, though I do see that the F12 debugger can change the setting on a per-tab basis using some means I've not seen documented anywhere. regards, -- Björn Höhrmann · mailto:bjoern@hoehrmann.de · http://bjoern.hoehrmann.de Am Badedeich 7 · Telefon: +49(0)160/4415681 · http://www.bjoernsworld.de 25899 Dagebüll · PGP Pub. KeyID: 0xA4357E78 · http://www.websitedev.de/
Subject: Re: [rt.cpan.org #72730] use Win32::OLE for GetOLE, PropVal is strings-only, IE9
Date: Sat, 26 Nov 2011 10:21:57 +0000
To: bug-Wx-ActiveX [...] rt.cpan.org
From: Mark Dootson <mark.dootson [...] znix.com>
On 26/11/2011 06:19, Bjoern Hoehrmann via RT wrote: Show quoted text
> Sat Nov 26 01:19:41 2011: Request 72730 was acted upon. > Transaction: Ticket created by derhoermi@gmx.net > Queue: Wx-ActiveX > Subject: use Win32::OLE for GetOLE, PropVal is strings-only, IE9 > Broken in: (no value) > Severity: (no value) > Owner: Nobody > Requestors: derhoermi@gmx.net > Status: new > Ticket<URL: https://rt.cpan.org/Ticket/Display.html?id=72730> > > > Hi, > > I had trouble using Wx::ActiveX, accessing methods and properties in > particular. One problem was that the GetOLE method did not work, which > turned out to be because I did not load the module myself first. That > should be mentioned in the documentation (or it should load it itself, > if that is a suitable option). The other is that PropVal seems to turn > values into strings, even though say Wx::ActiveX::IE lists properties > as being of other types like IDispatch, so often I just got "[object]". > This stringification should also be mentioned in the documentation.
I should document this. You only ever get a string back from Propval Show quoted text
> (So far I'm using $ie->GetOLE()->Document to get to a proper Document > object I can call method like createElement on, not sure if that is > the best way.)
This is the only way - but it works perfectly well. I will document the necessity to 'use Win32::OLE' and use of ->GetOLE for anything other than a string representable value. Show quoted text
> It might also be worth noting that applications hosting Internet Ex- > plorer will default to running in IE7 compatibility mode when IE9 is > installed, meaning new features will be unavailable and others might > not work as expected. The only way to change that would be through a > <meta content="IE=9" http-equiv="X-UA-Compatible" /> meta header in > the HTML document, a corresponding HTTP header when HTTP is used, or > a "Feature Control" setting in the registry for the executable this > is meant to apply to (which in case of perl.exe would be perl.exe). I > at least know no other way, though I do see that the F12 debugger can > change the setting on a per-tab basis using some means I've not seen > documented anywhere.
http://msdn.microsoft.com/en-us/library/aa770041(v=vs.85).aspx#IDocHostUIHandler2 has the answer. I will look at implementing this as it will allow you to override all of WebControl's settings on a script by script basis. Regards Mark