The question was: "...can you make ActiveX DLLs that can contain functions and subprograms that can be called from MapInfo [via MapBasic] like you can with the earlier style DLLs?" The answer is: "No." Some people confused Windows API functions with ActiveX DLLs, but in fact, these are regular DLLs, and so can be used directly in MapBasic. However, you CAN make a resource DLL to provide tool button icons to your MapBasic app (See Chris Martin's Feb 1st, 2000 summary on this, "Re: MI Resource Files/DLLs - summary") For those who want the dirty details, Chris Martin explained that the new VB5/6 DLLs are ActiveX DLLs or COM Servers. Basically, this means that if your development language isn't COM compliant, you lose. Access to ActiveX functions require COM support which is what makes them "visible" to an application, and MapBasic is not COM compliant. Chris also mentioned that there may be ways around this, but they would involve some sort of bridge written in C++ that serves as an interface to your app. He also thought that Desaware's SpyWorks may be useful here. He adds: > "In normal DLL's an Export Table is generated where all public function names and >their parameters are written. Any program can then import that library (that's what >you do when you DECLARE an api function) and use its functions. > > Unfortunately, as VB DLL's are COM servers, the only functions that they export are >to register and un register the server. There's no other functionality you can >access." Brad Matthews added: > "VB created ActiveX DLLs (and ActiveX EXEs) can be used by any other language which >supports the COM interface (C++, Powerbuilder, Delphi, VBA, ASP). MapBasic does not >support the COM interface." Richard Burkmar added some interesting perspective by pointing out that the main issue is that MapBasic is not COM-compliant, and that the future is with development tools that are; like MapX. He says: > "The Component Object Model (COM) is central to the Microsoft Windows environment >and there probably isn't much of a future for development environments which don't support it. Nowadays, most do - for example any development environment in which you can incorporate a MapX map is COM compliant. MapX exposes its functionality as a COM component - if it didn't it wouldn't have got off the ground." In addition to Chris, Brad and Richard, thanks also to Mark Crompton, Brad Matthews, "MAPPER MAN", "Geograf�a y Electr�nica, SA de CV", and David Troughear for their responses. - Bill Thoen ---------------------------------------------------------------------- To unsubscribe from this list, send e-mail to [EMAIL PROTECTED] and put "unsubscribe MAPINFO-L" in the message body, or contact [EMAIL PROTECTED]
