Ok, here is what Graham from ActiveState support tells me:
You may also need to go to the "Security" tab in the "Internet Options", select "Local intranet" and click on the "Sites" button. Then disable the "Automatically detect intranet network" and instead select the individual choices underneath manually. I wonder if we shouldn't drop the OLE browser from ActivePerl; it is hard to get it working, and enabling it leaves you with a security vulnerability unless you can trust all web pages on your local intranet. Note that both Microsoft Visual Studio and Microsoft Office come with Object browsers themselves, so if you have either of them, it might be easier to use those browsers instead (the Win32::OLE browser is basically a re-implementation of the one from Office 97 in Perl and DHTML). Cheers, -Jan From: trill...@gmail.com [mailto:trill...@gmail.com] On Behalf Of w...@serensoft.com Sent: Wednesday, December 16, 2009 3:11 PM To: Jan Dubois Cc: perl-win32-users@listserv.activestate.com Subject: PerlScript OLE browser [was How to simulate VB "Casting" for $perl_objects via Win32::OLE?] Thanks Jan. We've got the .NET wonks working on just this approach. BTW... what does it take to get the PerlScript OLE browser to work? I tried a quick test (below) and PerlScript is working in IE, but the OLE browser frames are all empty except for the default "could not load" gripe at the bottom. Is there a start-condition of some sort? (And "Initialize and script ActiveX controls not marked as safe" is set to "Enable" for the local intranet zone...) <script language="PerlScript"> $window->{status} = 'Hi from PerlScript!'; # works! </script> http://www.xav.com/perl/site/lib/Win32/OLE/Browser/Browser.html file:///C:/Perl/html/lib/Win32/OLE/Browser.html <file:///C:\Perl\html\lib\Win32\OLE\Browser.html> On Wed, Dec 16, 2009 at 2:10 PM, Jan Dubois <j...@activestate.com> wrote: Win32::OLE uses late binding (the IDispatch interface, aka OLE Automation); there is no such thing as casting to different "objects" as there is only a single IDispatch interface per object. This is the same as using Jscript or VBScript, but not VB or C++ which normally use early binding. It is up to the developer of the object to make sure all interfaces are automation accessible. Ask them for sample code in VBScript or VBA. If you cannot access the interfaces from there, then you won't be able to access them via Win32::OLE either. Cheers, -Jan From: perl-win32-users-boun...@listserv.activestate.com [mailto:perl-win32-users-boun...@listserv.activestate.com] On Behalf Of w...@serensoft.com Sent: Wednesday, December 16, 2009 11:40 AM To: perl-win32-users@listserv.ActiveState.com Subject: How to simulate VB "Casting" for $perl_objects via Win32::OLE? Hi -- Short version: how can we simulate .NET/VB object-type CASTing, in Win32::OLE Perl? Long version: We're building a bridge between a java-web-app and a .net-based-desktop app. Perl is the glue language of choice, of course :) Where we've got trouble is that the .net programmers tell us we need to "cast" object_1 to be type object_2, and we haven't see how that's done in the Win32::OLE manual pages. For example we start with a Collection, iterate through CoursesCollection->Item(ix) and from there we get a StudentsCollection->Item( foo ) which is a generic object but needs to be CAST as a 'proper' Student object instead. How do we do that in Win32::OLE? my $classes = App->Classes; my $class_ct = $classes->Count; for ( my $class_ix = 1; $class_ix <= $class_ct; $class_ix ++ ) { my $class = $classes->Item( $class_ix ); my $students = $class->Students; my $stu_ct = $students->Count; for ( my $stu_ix = 1; $stu_ix <= $stu_ct; $stu_ix ++ ) { my $stu = $students->Item( $stu_ix ); # $stu is a GENERIC object here with only basic methods # need to 'cast' it to "Student" type so we can get grades my $grades = $stu->Grades; # boom! (Name not found, meaning no such method) } } We were hoping the objects were classed somehow inside Perl, but all objects appear to be simply Win32::OLE objects, and even trying to get to the hash keys gives an error... Any pointers/flames welcome. Thanks! -- will trillich "Tis the set of the sails / And not the gales / That tells the way we go." -- Ella Wheeler Wilcox -- will trillich "Tis the set of the sails / And not the gales / That tells the way we go." -- Ella Wheeler Wilcox
_______________________________________________ Perl-Win32-Users mailing list Perl-Win32-Users@listserv.ActiveState.com To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs