A wise economist once said, "It is very difficult to predict, especially the future." With those words in mind, instead of predicting "in the next one year, ActiveX will...," this chapter will elaborate on some of the forces and emerging technologies that will shape the future of ActiveX Technology.
Microsoft has entrusted the ActiveX specification and technologies to an independent standards body called the ActiveX working group. This group is comprised of about 80-90 of the major companies in the computer industry. You can find all the details at the URL www.activex.org. Microsoft contributed the specification as well as source-code reference implementation. The technologies include the Component Object Model (COM), the Distributed Component Object Model (DCOM), and the ActiveX trademarks.
This working group can make the COM and ActiveX technology function
across platforms and thus lead to possible wide acceptance. At
a minimum, in the future you should find COM, DCOM, and ActiveX
implementations in the Macintosh platform as well as in popular
UNIX platforms. In the future, these technologies also should
become less vendor-dependent, with companies other than Microsoft
writing some of the implementations.
NOTE |
Regarding cross-platform implementations, Microsoft already has the ActiveX SDK functioning on Macs. |
The Burton Group hosted the first meeting of the ActiveX Working
Group in New York on October 1, 1996. At that meeting, the majority
present elected the Open Group (www.opengroup.org.) as
the guardian responsible for evolving and deploying the ActiveX
core technologies.
NOTE |
The Open Group is the parent organization of the Open Software Foundation (OSF) and X/Open Company Ltd. (X/Open). The main charter of these organizations is the advancement of multivendor information systems. In that respect, the ActiveX technologies are in the right hands. |
The Open Group will form a sub-group called the ActiveX Group to manage the ActiveX technologies across all platforms. The ActiveX Group's charter includes discussions obtaining feedback and commerce from the public, licensing, testing, and locating other sources of technology. The key goals can be summarized as follows:
The ActiveX Group is structured as a steering committee to direct development of ActiveX technology, cross-platform use, and market growth.
Microsoft has entrusted the ActiveX Group with the technologies
listed in Table 22.1. The technologies are packaged as a Pre-Structured
(PST) proposal to the group.
Technology | Description |
Component Object Model (COM) Distributed COM (DCOM) | Provides the underlying object model and used by all ActiveX components |
Microsoft Remote Procedure Call (MS-RPC), including Microsoft Interface Definition Remote Language (MIDL), excluding transports | An optimized version of the Distrib-uted Computing Environment-Procedure Call (DCE-RPC) that provides scalability, marshalling and privacy, and support for pluggable network transports (protocols) |
NTLM Standard Security Provider Interface (SSPI) | Allows objects to be invoked securely with user authentication |
Structured Storage | Provides a structured file format that can be implemented on multiple operating systems |
Registry | Provides a database of ActiveX objects on a given system |
Monikers | Allows objects to be invoked and communication between objects to be maintained asynchronously |
Automation | Allows method invocation and programmability of objects |
The public consensus agrees that the transfer of the ActiveX standards
to an independent group is a good thing. But many in the industry-notably
Netscape and, to an extent, Sun-are not exactly pleased with the
current state of the ActiveX technology.
NOTE |
One of the criticisms against the ActiveX Group is that many of the core technologies (the Win32 APIs, OLE DB, and other technologies) are still with Microsoft and, hence, are single-vendor, Windows-specific. Microsoft rebuts this criticism with the response that, as the technologies mature, they also might go into the ActiveX Group realm. |
On the other hand, the ActiveX Group promises to be a fully vendor-independent, interoperable technology group. One of the major tasks ahead of the group is to provide interoperability between the Internet Inter-ORB Protocol (IIOP) and DCOM. Netscape is the major force behind the IIOP. A bridge between the DCOM and the IIOP will be a major victory for all concerned. As a user and developer of these technologies, you definitely require alternatives and competing technologies.
Another development to watch for is the design-time ActiveX controls.
Design-time controls are a function-rich type of ActiveX control
that provide properties, design capabilities, and more during
design-time. But the Web browser clients will get only HTML code
and text-based scripting, making these controls browser-independent.
The client need not download and keep the code for design-time
functionality, thus making the controls smaller and more efficient
from the client's point of view. In this context, design-time
means the Web page authoring time.
NOTE |
The next release of Microsoft's Web design-time Control SDK will include support for more design-time control features. |
The main use of design-time controls is as wizards to aid the
developer when creating scripts or HTML objects, including full
Web pages.
NOTE |
Technically speaking, the ActiveX control with the design-time interface will implement the IActiveDesigner and the IServiceProvider COM interfaces. |
A good example of a design-time ActiveX Control is the Data Command control in the Visual InterDev ("Internet Studio") product. The Data Command control, during design-time, enables the developer to construct complex SQL queries against databases visually by displaying the objects in the database including tables, stored procedures, data elements, and so on. Once the query is visually generated, the control generates the scripts for executing the query and handling the result-set data. If a client downloads a page that uses this control, the client will get the SQL query, and not the visual SQL generator.
The design-time control concept will be applied by the control and tool vendors. Many future tools will employ design-time control technology. This means the user receives controls that are easy to design-as well as content management-while keeping the client download time to a minimum. Also, the client-side controls will be less complex in multiple ways. The Design-Time Control SDK is available at Microsoft's Web site. This site includes the SDK, technical documentation, and sample code. It also includes the beta version of the ActiveX Control Pad, called the WebDC ActiveX Control Pad, which can work with design-time controls.
Vendor Information
Microsoft Corporation
http://www.microsoft.com/interdev/sdk/dtcrl/
Creating a Design-Time Control
The Design-Time controls can be created by using any popular C++ compilers, including Visual C++, Symantec C++, Borland C++, or Delphi, or by using the Visual Basic Control Creation Edition (VBCCE).
As an example, look at the steps required to create a design-time control using the Visual Basic Control Creation Edition.
After creating a project and the control interface in the VBCCE, you add the normal run-time interfaces required by your control. Now you are ready to add the interfaces and code for the design-time support. Select Project-references and add the reference to the "Microsoft Web Design-Time Control Type Library." The library file name is WEBDC.TLB. Then implement the design-time functionalities you want to give to your designers in the IActiveDesigner interface.
After rich graphic pictures, the next evolution of ActiveX is audio and video over the Internet. The multimedia ActiveX controls are aimed at just this market-developing weblications with rich audio and video components.
The application of this technology includes online broadcasting (known as live multi-casting) and on-demand streaming of audio and video content. These applications encompass entertainment, visual instruction materials, training, product demos, multimedia catalogs, and various other marketing applications. The multimedia controls can also be used for multi-site, multi-personnel video enhanced meetings. For corporate developers, this slogan translates into better corporate communication at reduced costs; for Webmasters, the appeal is rich multimedia experience for their Web sites.
Microsoft and other companies are already developing authoring and conversion tools for content development, and administration tools to manage deployment and content delivery. The Internet Audio and NetMeeting controls are already available in beta form. Microsoft is moving toward a NetShow server and the NetShow audio/video client for delivering audio/video content, plus an SDK for developers.
The ActiveX multimedia streaming format (ASF) specification has been submitted and the ActiveX controls are under development. The ASF will run under Windows NT as an ASF service and clients will have ActiveX playback control. Some features of the ActiveX streaming controls include a jitter control to compensate for network delays, and streaming of audio and video with progressive display/playback. The client UI will have functionality similar to a VCR, with the familiar play, stop, forward, and reverse buttons (minus the blinking 12:00 time). The ASF technology is being developed by Microsoft specifically for delivery of synchronized, multimedia content over the Internet/intranet, with enhanced error-correction schemes.
If you start seeing ActiveX controls on your TV controller, it's time to conclude that the technology is here to stay.
The next release of browsers, from Microsoft as well as Netscape, will support enhanced HTML syntax-comparable style sheets, image layering, dynamic image rendering, absolute position technology, and more. Both companies are also pushing for their own standards. This is not good for the developer community. Thus, the W3C is looking at an Editorial Review Board as a forum for HTML extensions.
The next version of HTML-HTML 4.0-will have a lot of enhancements
to make the Web developers' jobs easier. One example in the HTML
syntax is the <OBJECT> tag. The following table
shows the proposed <OBJECT> tag syntax. As you
can see, it already incorporates Java and ActiveX. More such HTML
extensions will make the technologies more prevalent and easier
to use.
Code | Description |
<OBJECT> | |
DECLARE | |
ID | Document ID |
CLASSID | ActiveX Control GUID or Java Class name |
CODEBASE | Load/implementation URL |
DATA | URL for object data |
TYPE | Object Data type |
CODETYPE | The CLASSID code |
STANDBY | Text to display while the object is being loaded |
ALIGN | |
HEIGHT | |
WIDTH | |
BORDER | |
HSPACE | |
VSPACE | |
SHAPES | |
NAME | Form name |
<PARAM NAME=...VALUE=...> | Persistent object initialization properties |
Vendor Information
Microsoft Corporation
http://www.w3.org/pub/WWW/TR/WD-object.html
The W3C's site has the working drafts of the <object> tag proposal.
Microsoft is working on a lot of client and server features for IE 4.0. One of the first noticeable features will be the integration of the Web with the explorer shell, providing multi-pane viewing capability. The three-pane view is not exactly new-the new Lotus Notes version 4.0 and some mail programs offer this capability. It is also similar to the three-pane frames in HTML pages. The enhancement is the integration with the Web for a seamless "exploration," with built-in features such as line shortcuts, history, and favorites. Another feature is the offline reader and WebCheck that notifies the user when a Web page changes. The WebCheck also will have features such as idle time downloading, size and time limits for offline reader refreshing, and scheduled downloading, which will enable you to have an automatically updated local cache of your favorite Web pages.
Revolutionary features being developed are the Desktop, Ticker, and Screensaver channels on which multimedia content with information (and, of course, advertisements) will be piped to your computer in real-time. These are revolutionary because they are built into internet explorer and, possibly, as part of the windows operating system. The Desktop channel will be used for headlines and information, while the Ticker will be used for stock market quotes, sports scores, and so on.
The next wave of tools will be for the visual development of a Web site (as opposed to visual development of a page or one component). Borland's Intrabuilder and Microsoft's Visual InterDev (Internet Studio) fall in this class. Many other companies are also developing significant products in this category. All these products aim at bringing the RAD technology to develop full-fledged Web applications. You should watch for products in this category as these tools will be very useful for intranet developers and Webmasters.
As a representative product in this category, look at the Microsoft Visual InterDev, the latest Web site development environment from Microsoft. The code name for this product was "Internet Studio." It is in the beta stage now. This product enables developers to build a Web site consisting of client pages, active server pages, data access to back-end databases, and multimedia content.
Some useful features for developing dynamic Web pages are the visual database tools, which include a dataview window that enables you to see and interact with the objects (including queries, tables, and relationships) in the back-end database, the ODBC query designer, the SQL database designer, the stored procedure editor for Oracle, the SQL Server, SYBASE and other popular databases, database wizards to develop forms with data plug-ins, and so on. These tools enable you to do database design inside the Web development environment and to incorporate the data design in your Web pages, real advancement in the Web development tools.
Another feature, which represents the evolution of the tools, is the IDE with integrated site management, site-visualization, and content development features. It even keeps track of links between the different objects in the Web site and takes care of repairing broken links due to a name change, object removal, additions, and so on.
The Web-Based Enterprise Management Initiative (WBEMI) is an aggregation of Internet/intranet principles and concepts aimed at the management and administration of the enterprise resources using Web-based applications. The resources include servers, networks, desktop machines, and applications. The proponents of this initiative include BMC Software Inc., Cisco Systems, Compaq Computer Corp, Intel, and Microsoft. This effort will integrate technologies such as DMI (Desktop Management Interface) for servers and desktop machines, and SNMP for networks open to HTTP monitoring and administration.
http://wbem.freerange.com/ This URL contains press releases, a protocol overview, a demo of the WBEMI for an enterprise computing resource, definitions, and so on.
Two technologies that fall under this initiative, the HMMS (HyperMedia Management Schema) data model and the HMMP (HyperMedia Management Protocol) communication protocol specifications, are already at the IETF level.
You should watch this initiative for total system monitoring and administration over the Web. This will become more important as organizations start acquiring applications and application servers to build Web-based business systems.