From: Sean H. <jal...@ho...> - 2002-03-25 04:07:21
|
I downloaded Laurent's AxWindow package, and I created a wrapper for a WebBrowser object that acts like a regular Win32::GUI::Window (that is, you don't need to worry about the special conventions for calling methods and registering events - you can call methods directly and if you define a sub for an event, the event will automatically be registered.) I'll put it up somewhere this week, but if anybody's interested and impatient, I'll send it to you by email. >Hello, > > I am working on a new package for add ActiveX hosting to Win32::GUI. > I have made some test with Webbrowser (Internet Explorer) and it's >work >nice. _________________________________________________________________ MSN Photos is the easiest way to share and print your photos: http://photos.msn.com/support/worldwide.aspx |
From: Frazier, J. J. <Joe...@Pe...> - 2002-03-26 01:03:58
|
> -----Original Message----- > From: Laurent ROCHER [mailto:ro...@cl...] > Sent: Monday, March 25, 2002 5:54 PM > To: per...@li... > Subject: Re: [perl-win32-gui-users] Add ActiveX Hosting to Win32::GUI >=20 >=20 > Hello, >=20 > I have put a new release with some improvement, some doc=20 > and add a new > method Release. >=20 > See : http://perso.club-internet.fr/rocherl/Win32GUI.html >=20 > The Release Method must be call before all the window was=20 > destroy. The > best place is in the _Terminate handler. It's necessary for=20 > my container > class to release all the interface on the control before the=20 > activex window > was destroy. I don't know actualy how automaticly detect that. >=20 > > I downloaded Laurent's AxWindow package, and I created a=20 > wrapper for a > > WebBrowser object that acts like a regular=20 > Win32::GUI::Window (that is, > you > > don't need to worry about the special conventions for=20 > calling methods and > > registering events - you can call methods directly and if=20 > you define a sub > > for an event, the event will automatically be registered.) =20 > I'll put it up > > somewhere this week, but if anybody's interested and=20 > impatient, I'll send > it > > to you by email. >=20 > It's exactly what i have in mind. > The goal of AxWindow package is to be a base class for=20 > derived package. > I made one for DHTMD Edit control (see new samples in source zip). >=20 > I have made an error in my sample with WebBrowser. > I have put : -control =3D> "SHDocVw.WebBrowser", > but the correct way is : -control =3D> > "{8856F961-340A-11D0-A96B-00C04FD705A2}" >=20 > Because, by default if the activex was not found, a=20 > webbrowser is open > with a html error page. > In this case SHDocVw.WebBrowser is understand as a=20 > ProgId, but not exist > and not a webbrowser. > The second way is the CLSID (ActiveX numeric identifier) and it's > webbrowser object. >=20 > For list all ActiveX informations and CLSID, it's better to use > microsoft OleViewer utility. > I think it's possible to donwload it from microsoft site=20 > if you don't > have VC++. >=20 > Laurent. >=20 I tested the MSFlexGrid and got it to display. I also tried Excel, but = could not get any methods/properties(access violation errors). I assume = that is because it is not a "real" active X control. =20 Anyway, even if I can't get the Excel to work(my big wish), thanks for = this GREAT addition to Win32::GUI. Adding the ability to embed and IE = control or DHTML editor is awesome indeed! Joe |
From: Laurent R. <ro...@cl...> - 2002-03-25 22:47:34
|
Hello, I have put a new release with some improvement, some doc and add a new method Release. See : http://perso.club-internet.fr/rocherl/Win32GUI.html The Release Method must be call before all the window was destroy. The best place is in the _Terminate handler. It's necessary for my container class to release all the interface on the control before the activex window was destroy. I don't know actualy how automaticly detect that. > I downloaded Laurent's AxWindow package, and I created a wrapper for a > WebBrowser object that acts like a regular Win32::GUI::Window (that is, you > don't need to worry about the special conventions for calling methods and > registering events - you can call methods directly and if you define a sub > for an event, the event will automatically be registered.) I'll put it up > somewhere this week, but if anybody's interested and impatient, I'll send it > to you by email. It's exactly what i have in mind. The goal of AxWindow package is to be a base class for derived package. I made one for DHTMD Edit control (see new samples in source zip). I have made an error in my sample with WebBrowser. I have put : -control => "SHDocVw.WebBrowser", but the correct way is : -control => "{8856F961-340A-11D0-A96B-00C04FD705A2}" Because, by default if the activex was not found, a webbrowser is open with a html error page. In this case SHDocVw.WebBrowser is understand as a ProgId, but not exist and not a webbrowser. The second way is the CLSID (ActiveX numeric identifier) and it's webbrowser object. For list all ActiveX informations and CLSID, it's better to use microsoft OleViewer utility. I think it's possible to donwload it from microsoft site if you don't have VC++. Laurent. |
From: Johan L. <jo...@ba...> - 2002-03-25 23:15:56
|
Lauret wrote: > The Release Method must be call before all the window was destroy. The >best place is in the _Terminate handler. It's necessary for my container >class to release all the interface on the control before the activex window >was destroy. I don't know actualy how automaticly detect that. I'm sorry, but I haven't had time to check out your WAY COOL thing yet. However, if you create a Perl object and use that to connect the XS stuff, you can use the class' destructor, the DESTROY sub. It will get called upon garbage collection when the object goes out of scope or when the program terminates. /J -------- ------ ---- --- -- -- -- - - - - - Johan Lindström Sourcerer @ Boss Casinos jo...@ba... Latest bookmark: "Mike Chandler Mike's Blog Windows vs. Linux..." http://www.mikesblog.com/archives/000114.htm |
From: Laurent R. <ro...@cl...> - 2002-03-26 19:34:40
|
> However, if you create a Perl object and use that to connect the XS stuff, > you can use the class' destructor, the DESTROY sub. It will get called upon > garbage collection when the object goes out of scope or when the program > terminates. It's what i do in my first release. I haven't trouble with WebBrowser. But, with other ActiveX, i have an Exception. After some research, i found it's necessary to release all before the event loop stop. I think DESTROY sub is call after all window have receive WM_DESTROY message. Laurent |