On Wed, 22 Aug 2012, Francisco Zarabozo wrote: > On Wed, 22 Aug 2012, Jan Dubois wrote: > > There is no way to do this. You could crawl the registry, > > instantiate all registered COM objects, and do a QueryInterface for > > the IDispatch interface. This doesn't do you much good though, as > > you still wouldn't know which methods and properties the object > > supports. > > Doesn't Active Perl come (or used to come) with a "COM Browser" (using > Perl Script for IE) which does precisely that (listing all usable COM > objects with properties and methods)?
No, it enumerates the installed type libraries. But as I wrote there is no reliable way to find the ProgIDs that would allow you to instantiate an object corresponding to a particular type library. And there isn't even any guarantee that the actual implementation is even installed. I believe the OLE Browser is still installed, but you have to open up your IE setting to a pretty vulnerable state in order to run it, so I would recommend using it unless you have absolutely no other way to get at the object model documentation. If you own Microsoft Office, or Visual Studio, use the Object Browser included in those tools instead. I wrote the OLE browser 15 years ago just as an experiment to use PerlScript inside IE as the GUI for a local app, but there is a reason this technique isn't used anywhere else... Cheers, -Jan _______________________________________________ ActivePerl mailing list ActivePerl@listserv.ActiveState.com To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs