Apply Worldwide Now
Do it once, do it right, and do it now.
Apply as needed, when needed.
OLE Becomes 'Net-Enabled _________This is a rough assimilation of data from numerous souces stated as such. The organization is not there in a productive form for the reader. Ran out of time...... None the less, it covers several areas from several sources.
Microsoft last week unveiled extensions to its core Object linking and Embedding technology for
creating and deploying applications actively linked to the World Wide Web.
The OLE extensions will enable the creation of database-driven customized Web pages. The
extensions, together with the rest of the software architecture, have been renamed Active-X and will
let users tap into Java applets embedded in remote Web pages, providing OLE applications on the
desktop with access to Internet-based resources, such as files and programs. These will appear to
the application as though they were resident inside the client PC.
"I think the migration plan they lay out is very clean and comprehensive and solves a lot of issues for
building corporate infrastructure and Internet applications," said John Berg, manager of applications
specialists at Database Solutions Co., Marlton, N.J.
"A year ago, I figured they missed the boat, now they are playing catch-up."
Availability of these new extensions will move OLE developers a step closer toward parity with
Netscape Communications Corp. developers by supporting Netscape plug-ins in Microsoft Corp.'s
Internet Explorer, adding progressive rendering to Web-page viewing and giving OLE controls the
same Web-activation status as Java applets.
Combining the Best
"We're going to take the best of Windows and the best of the Internet and create one integrated
platform," Microsoft chairman Bill Gates told an audience at the Microsoft Professional Developers'
Conference last week in San Francisco.
"Microsoft's Internet strategy makes infinite sense. What they rolled out-with their usual hazy
delivery dates-agrees with what developers need to build 'intranet' applications," said David Card,
PC software analyst at International Data Corp., Framingham, Mass.
Card said he was disappointed, however, that Microsoft did not talk about the use of distributed
Common Object Model (COM) along with the Active-X announcements.
"Microsoft has not announced details on Object Request Brokers, directory services and
transaction-processing monitors, all necessary for the full range of distributing computing on-line,"
"Microsoft is using Active-X as a way to further drive its object model into the on-line arena."
Microsoft had previously unveiled a grander strategy for extending COM and its OLE environment
to mainframes through a partnership with Darmstadt, Germany-based Software AG, and to Unix
systems through partnerships with MainSoft Corp., Sunnyvale, Calif., and Bristol Technology Inc.,
Ridgefield, Conn. Microsoft envisions an enterprise-wide object implementation extending from PCs
to mainframes, including Windows and the Internet.
Microsoft's Internet Explorer has been built as an OLE container, Card said.
'A Horse Race'
"Most of their Internet functionality has been built out of OLE components, and that is a terrific way
to build a browser-it's similar to the plug-in strategy from Netscape. It's going to be a real horse
race. This is the first real challenge to Netscape," Card said.
By integrating Internet Explorer into the Windows operating system, some questioned whether
Microsoft would tempt the Department of Justice to launch another investigation into its practices.
Netscape officials, however, seemed unconcerned.
Said Martin Haeberli, director of technology at Mountain View, Calif.-based Netscape: "We're
really only one button click away. Once Explorer exists in every OS, you only have to go to our
home page to download Navigator. We believe we can keep upping the ante and we can add
profound value to our Navigator. We see many users view that choice.
"It would not be a substantial barrier for us" to have Microsoft integrate Explorer in Windows 95, he
continued. "I don't believe that as Microsoft makes it easier to get to the browser they can make it
harder for users to get to our browser. We will continue to be visible, credible and and innovative by
Key components of Active-X client software for Internet Explorer 3.0, which ships in the summer,
are Active Controls, built from OLE controls for adding behavior to Web pages, and Active
Document, for automatically linking documents in a variety of formats to the Web site. Active
Scripts coordinate and control communications between Active Controls, extending existing
component developments, such as OLE and Visual Basic, and embracing newer technologies, such
as Java and Visual Basic Script.
Microsoft has also encapsulated the Virtual Reality Modeling Language designed by Silicon
Graphics Inc. into a control that can be dropped into any application and called it ActiveVRML. It
has also created controls for Active Movie, a set of controls that uses technology from Progressive
Networks Inc., to play continuous streams of videos and sound directly off of the Web at
transmission speeds as low as 28.8 kilobits per second.
Oracle Upgrades Its Express Developer Tool
By Martin Marshall
Corporate application developers will be able to fuse on-line analytical processing technology with
reusable object code
by means of an update to the Oracle Corp. Oracle Express development environment.
Oracle Express Objects 2.0 and Oracle Express Analyzer, both new releases, let developers and
users take advantage of previous application code and to modify it for new purposes.
The Express Analyzer lets users change the properties of objects in an application without
information systems (IS) intervention.
The Express Objects 2.0 environment lets the developer modify all aspects of the application
objects. In addition, the new version adds Visual Basic scripting capabilities, radio buttons, check
boxes, list boxes and drop-down boxes, as well as a number of OLAP-specific data-aware
controls. It also accesses Object Linking and Embedding controls, or Active-X controls.
Section: Application Development
Coming Soon: Better DBMSs
By Phillip J Gill
Despite all the computers corporations have bought in the past few years, it probably comes as a
surprise that, at best, no more than 15% of all corporate information is digitized, according to
Gartner Group Inc., a Stamford, Conn., technology advisory firm. That means 85% or more of all
corporate information resides outside the computer in documents, maps, photos, images, and
For companies to build applications to take advantage of rich data types, the database management
systems must accommodate them. Oracle, Informix, and Sybase store rich multimedia data types as
binary large objects (Blobs). To a Microsoft Windows client application, Blobs appear as Active X
controls. Database applications can access Blobs, but they can't search or manipulate what's inside
Two weeks ago, Microsoft delivered an alpha version of its Internet Explorer 3.0 Web browser,
which contains facilities that allow OLE applications (now named Active-X applications) to run Java
"We feel that we are 12 to 18 months ahead of the competition in this area," said Cornelius Willis,
group product manager for Internet development marketing at Microsoft. "We demonstrated Java
applets running in an Active-X environment two weeks ago, and we will be making that capability
generally available this summer." Microsoft is also scheduled to ship Jakarta, a tool kit for creating
Java applets, by midyear.
SunSoft's Keller counters that the Java approach is more useful to large corporations because it
extends Java applications to all platforms in an enterprise. "If you are going to wrapper functionality
in Java, you can't just assume that it's going to attach to Windows on the other end," he said.
Harley Davis, director of technology at Ilog, Mountain View, however, points out that applications
developed for Java can be deployed to nearly every platform in an enterprise.
Microsoft: Beyond Intel
Microsoft's Active-X development platforms are Windows 3.1, Windows NT, Windows 95, and,
eventually, the Apple Macintosh platform. The SunSoft development environments include Sun
Solaris, Windows NT, Windos 95 and Macintosh.
Microsoft is also pushing its OLE environment to other platforms through third-party agreements
with Bristol Technology Inc., MainSoft Corp. and Software AG. MainSoft, Sunnyvale, Calif.,
demonstrated its Sun Solaris version of Windows last week for the first time.
But critics of Microsoft's approach point out that though Windows runs in assembly language on
Intel Corp. microprocessor-based platforms, every call goes through an extra layer of software
when Windows is ported to a foreign operating system such as Sun's Solaris or IBM's mainframe
MVS. This results in a performance penalty that must be overcome by the more powerful hardware.
Until Netscape decides to support Microsoft's Active X, NCompass' plug-in will be the only way
to deal with Active X on the Navigator platform.
Update:The leader with 90 percent market share gives Word, Excel and PowerPoint updates, plus
includes the new Microsoft Outlook. Bottom line:loads of intranet capabilities. Due by the end of the
Update:Tools become "Internet aware" this year with better support for Java, HTTP and HTML,
though big news is new VB 5.0.
Category:Suite of Server Applications
Update:Has SQL, Exchange, SNA Server and SMS Server applications now, will get Internet
Proxy Server, Merchant Server and Viper, which provides transactional applications support and
Active X support, in the near future. Major upgrade next year called Wolfpack nets clustering
Update:The leader with 90 percent market share gives Word, Excel and PowerPoint updates, plus
includes the new Microsoft Outlook. Bottom line:loads of intranet capabilities. Due by the end of the
Active X and Active Video are good technologies. While they are still evolving, they do not
support professional digital video and multimedia publishing needs as well as QuickTime. Indeed,
speaking at CeBIT Home late last month, Microsoft Europe President Bernard Vergnes said
Microsoft's forthcoming Microsoft Office Suite for Mac will "take advantage of unique Apple
multimedia technologies like QuickTime and some others to be announced."
An analogy is Adobe's Postscript, which cares not whether it is running under Windows on an
Intel host or on Mac OS on a 68040 or PowerPC host. It just runs, and all Postscript enhancing
utilities and applications run, too.
Power Objects version 2 uses native drivers to access Sybase, Oracle and Microsoft SQL Server
databases, and it uses Intersolv Inc.'s Open Database Connectivity driver to access other
ODBC-compatible data sources. Like Visual Basic, Oracle Power Objects applications can make
use of existing OCX components and OLE 2.0 applications. It also can make use of Web-enabled
Executives from Microsoft and from IBM said the key benefit to end users will be access to a
greater number of applications that they can run natively, with or without a browser. By embedding
the virtual machine into another OS, other applications running on those platforms can make use of
the Java application programming interfaces.
"You can run Java anywhere in your environment'' with it embedded in the OS, said Cornelius Willis,
group product manager for Active X technologies at Microsoft.
IBM plans to add Java to Merlin, the code-name for the next release of Warp and Warp Connect,
as well as to AIX, OS/400 and OS/390 (formerly MVS). Merlin will be the first IBM OS to sport
Java. It is expected to ship before the end of the year.
IBM also is developing a version of Java for Microsoft's Windows 3.x, which is expected to enter
beta next month and is scheduled to ship this summer.
Mgm't From Browsers -- Applications will let administrators use Web
By Beth Davis and Rutrell Yasin
Use a Web browser to manage devices on a network? Several network and systems management
vendors are developing products that promise to do just that.
UB Networks Inc. will announce this week a framework and suite of applications, based on Java,
aimed at letting network managers manage UB devices from a Web browser.
Computer Associates, Islandia, N.Y., announced last week that it will use Microsoft Active X
Technologies and Microsoft Internet Explorer as the basis for Internet and intranet access to
CA-Unicenter TNG enterprise management software. Initial availability will be at year's end.
So, who will win? For now, it looks like Netscape. Microsoft is playing catchup, and Active-X isn't
showing any immediate signs of creating a demand for Internet Explorer. In the long run? It's hard to
say. But as each company copies the best parts of the other's products, the consumer gets a rapid
succession of steady improvements and lower prices. It's pretty hard to complain about getting more
for less, so perhaps the best solution is to get both browsers, enjoy the new features and decide you
don't care who eventually wins.
Internet Explorer 3.0
The first thing you notice about the new version of the Internet Explorer is that it doesn't look like
previous versions, or like the rest of the browsers on the market for that matter. Microsoft has
broken out of the mold developed at the University of Illinois, where Netscape has its roots, and has
given it a fresh, sleek look. Internet Explorer 3.0 has dispensed with the Windowsesque buttons in
favor of active screen regions marked by subdued icons. Of course, other than looking good, they
have no functional value, but they do look good.
The next thing you'll notice is that Internet Explorer 3.0 now supports most of the features of
Netscape Navigator, including frames, tables, Java applets (though this was not yet available when
we tested the Internet Explorer 3.0 browser) and the like. Internet Explorer 3.0 also includes
support for Microsoft's Active X technology, which enables the browser to download and execute
small bits of code. But for now, Active X controls are not widely used on the Web.
Microsoft also has a version of real-time audio but it does not support many of the new features
found in Netscape Navigator 3.0, including VRML.
Other innovative features, though, boost the browser's usefulness. For example, Internet Explorer
3.0 lets you keep track of the complete history of your Web-page accesses. It's nice if you lose
track of where you have been and want to go back to a page that you've visited before. It may also
be useful if you want to check to see if your kids have been browsing Web sites they shouldn't. One
unusual feature: When you click on one of the recorded history listings, Internet Explorer, achieving a
whole new level in delegation of authority, launches Netscape Navigator to actually go out, look for
the page and then display it.
As is the case with Netscape Navigator, you can get mail, news and conferencing with Internet
Explorer. Unlike Navigator, though, these products aren't integrated into the browser, but instead
are separate. Although they work well enough, packages such as Eudora and News Express far
outstrip the Microsoft offerings. The conferencing solution resembles the capabilities of the Netscape
solution, but they're a separate application. The biggest difference between Internet Explorer and
Netscape Navigator is that Internet Explorer goes to great effort to let you personalize the browser.
You can set up ratings for specific Web sites so that kids can't view unauthorized areas. You can
also customize the look and feel of Internet Explorer.
Security in Internet Explorer is equivalent to that of Netscape Navigator 3.0, as it supports SSL 3.0.
In addition, Internet Explorer lets you confirm that the company that published a software package
created the same package you're about to download. This helps protect your equipment against
viruses when you purchase software online.
Leading The way
While both Microsoft and Netscape have made nice improvements with their respective packages,
it's clear that Netscape has kept the lead in innovations. While Microsoft's product looks nice, runs
well and will meet the needs of most people, it's still playing catch-up in the browser battle.
It also includes Object Linking and Embedding Custom Controls to embed mainframe data in
applications written in Visual Basic and other programming languages, and remote and network
distribution and installation.
In the quest for the best of Internet multimedia-high-quality, 30-frames-per-second realtime video
-many companies are working toward the idea of "Web-TV." But most of their solutions just don' t
work well within the bandwidth limitations faced by the average Internet user. Sooner or later, video
will be used extensively on Web pages-but what Web video technology, if any, is appropriate for
the job? The latest Net video technologies range from low-quality streaming audio with an
occasional picture to traditional download-and-play systems for a variety of file formats. As with
audio, the most popular technologies-and the most advanced-may not offer the best solutions for
your Web video needs.
Digital Video Basics
Digital video is measured by the number of frames per second of video, and by the size and
resolution of these frames. The total size requirement for video is huge, particularly if you want
NTSC (TV quality) video. A 640 x 480 image with 24 bits of data representation for color and a
frame rate of 30 frames per second takes up a staggering 27 megabits per second-and that's without
sound. One approach to video on the Internet is breathtakingly simple:Just don't do it. A simple
frame of movement every once in a while or a static picture with continuous audio can provide the
illusion required for simple "talking head" applications.
Shows java environment, but eyes activex -- M'soft straddles Web fence
Redmond, Wash. - Microsoft Corp. last week took a schizophrenic approach to its Web-tools
strategy. The company unveiled the beta version of its new Java development environment, but spent
most of a day-long Internet seminar singing the praises of its competing, homegrown ActiveX
Meanwhile, Javasoft will fire its own salvo next week, when it debuts its Java Developer's
Connection. Accessible through the company's Web site at java.sun.com, the developer's
connection will feature online technical support and live chat sessions with Java luminaries like James
These and numerous other Java announcements cluttering the Web in recent weeks highlight the
confusion in Web development. Indeed, so many new tools and environments are being released
that developers are often at their wit's end just to stay current with all the information; the popular
Usenet comp.lang.java newsgroup is rife with messages seeking information on upcoming products.
At press time, the latest newsgroup traffic discussed Microsoft's daylong satellite broadcast-called
"Activating the Internet"-which was beamed to thousands of programmers in 50 U.S. cities.
Microsoft representatives spent much of the time showcasing ActiveX, the new name for the
company's OLE-based control technology.
ActiveX controls function as a "container" that encapsulates an applet or application written in Visual
Basic, Visual C++ or Microsoft's new Visual J+. The ActiveX container itself can be launched by
Microsoft's Internet Explorer Web browser, much the way a Java applet is launched by Netscape's
With ActiveX and its new Java development environment, Microsoft appears intent on presenting
itself as a one-stop shopping site for programmers seeking a full range of Web tools.
For its part, competitor Javasoft said Java still has the advantage. "The ActiveX story is extremely
platform-specific," said Miko Matsumura, a software evangelist at Javasoft. He charged that
ActiveX containers can be easily run only on Microsoft's Internet Explorer platform. (He noted that
recent plug-ins for the popular Netscape Web browser allow it to launch and run ActiveX applets.)
"Microsoft is desperately trying to marginalize Java," added Matsumura. "It took them three hours
and 40 minutes into their broadcast before they mentioned Java. Yet they're keenly aware of Java,
and were forced to license it."
On the tools front, Microsoft also used last week's satellite broadcast to spotlight the beta version of
its Visual J+ environment. It is billed as a full-blown Java development tool, and Microsoft is offering
it for free downloading from its Web site (www.microsoft.com/sitbuilder)
Microsoft announced that the second beta version of its Internet Explorer 3.0 Web browser is now
available for immediate download over the Internet. The browser includes a just-in-time Java
compiler along with native support for ActiveX controls and support for the virtual reality modeling
To add momentum to its Java effort, Microsoft last week rounded up a host of software tools for
free downloading from its "sitebuilder" Web page. Included are the company's FrontPage version
1.1 Web-site creation tool, its HTML Layout Control and its ActiveX Control Pad.
Moreover, at its main Web site (www.microsoft.com/hwdev), Microsoft is offering its ActiveX
SDK, its component object model (COM) specification, its Internet Security Framework, and
sample code for its cryptography API.
At last week's broadcast, Microsoft also announced 11 third-party Web sites devoted to pro-viding
information and downloadable software about ActiveX controls. The sites include one run by EE
Times publisher CMP Media Inc. (www.activextra.com/). Other sites are being offered by C/Net
(www.activex.com/), Online Interactive (www.webtools.atoncesoftware.com/), CyberSource Corp.
(www.software.net/components/activex.htm), Developers Workshop (www.developers.com/),
Fawcette Publications (www.windx.com/), Innovision (www.active-x.com/), Micro Modeling
Associates (www.netcompany.com/activex/), Part Bank (www.partbank.com/activex/),
Programmer's Paradise (www.pparadise/microsoftlgin/), and Xtras (www.xtras.com/activex/)
According to David Hsieh, vice president of enterprise product marketing at Sybase, the Adaptive
Server will be able to support PowerBuilder objects, C++ objects, Java objects, Microsoft's
Active-X components as well as through third-party software such as OLE/CORBA object request
brokers and CORBA objects.
Spinning the well-animated Web page
By Thomas A. Powell
Part five in The Web Mechanic Series
No matter where you go on the Web, it's impossible to avoid animation.
Everyone wants their Web-page logos to spin, their text to bounce and their buttons to come alive
A little animation-the right animation-can add that extra flair that separates your page from the
crowd. Web designers can choose from dozens of solutions-animated Graphics Interface Formats,
add movement to pages.
The use of plug-ins is very install-heavy, so there is a question of using a programming technology
page on the fly.
Nowadays, programming technologies such as Java are used less and less for animation because of
performance and development costs. Because Java is a fully fledged programming language, it is
technically intensive to create an animation applet with it.
The Ties That Bind: ActiveX Objects
By Martin Heller Contributing Editor,
In the "Standard Model" of particle physics, the universe is made up
of quarks, which are small hard objects, and gluons, which hold the
quarks together. Old particle physicist that I am, I wonder if ActiveX
objects might be the quarks of the Web, and scripts the gluons. There's a
certain amount of power in that metaphor. For instance, the universe
couldn't exist without both quarks and gluons, so there's no question of
choosing one or the other. Quarks bind very strongly to each other, and
so do ActiveX objects.
Alas, the metaphor breaks down all too quickly. Quarks are irreducible,
at least in the Standard Model, and ActiveX objects are anything but
irreducible: aggregation lets one ActiveX object build on another.
Moreover, you can use scripts to invoke ActiveX objects, which may
actually be Java applets, which in turn call other ActiveX objects. Are we
having fun yet? Well, let's get our hands dirty: if we stir up enough mud,
we may eventually be able to see the bottom of the stream.
September 16, 1996
ActiveX And Netscape Navigator: An Uneasy Marriage
By Sal Familia Technical Editor, TechWeb
In an effort to better integrate Microsoft's ActiveX technology into
the Netscape environment, NCompass Labs, Inc. has expanded its
ActiveX plug-in into a family of three products.
Two of NCompass' new plug-ins are clearly directed at the intranet
market. The first, DocActive, integrates Netscape Navigator with
Microsoft Office, giving the browser the ability to open, view, edit, save
and print Excel spreadsheets, Word documents, PowerPoint
presentations, as well as Document Objects from other vendors. Bringing
this combination of legacy desktop functionality to the browser could
simplify migration to intranets and save on costly retraining or data
NCompass' second plug-in, ControlActive, allows ActiveX controls to
run under Navigator but does not support scripting. Again, this plug-in is
better suited to the intranet arena where custom controls have been
developed and integration with other controls, via scripting, is not needed.
Both DocActive and ControlActive are commercially available.
Web designers and users will be interested in NCompass' third -- and still
in beta--plug-in, ScriptActive, which combines the functionality of
DocActive and ControlActive and adds scripting capabilities that utilize
NCompass offers three varieties of ScriptActive. ActiveX Framework
ScriptActive is the version designed to emulate Internet Explorer by
offering VBScript support. LiveConnect Framework ScriptActive, based
on Netscape's recently released LiveConnect technology, leaves out
integrate Java applets, ActiveX controls and the newest generation of
Navigator plug-ins. The third version combines the features of the other
two and is the one currently available as a free beta download.
ScriptActive may prove to be a significant product given Microsoft and
Netscape's attempts to out-feature each other on the browser front. Just
as plug-in developers can now view Internet Explorer users and
developers as potential customers of their technology, the ActiveX
community can now do the same for Netscape.
Welcome to the ActiveXpress.com library.
Here you'll find in-depth background reading from TechWeb's archives, a
fully searchable calendar of events and a list of sites where you can see
ActiveX in action.
And, of course, go to our directory to find the controls and vendors you
Simply use the list on the side of this page to navigate your way through
This is a growing resource. We'll be adding new topics and tools as
quickly as we can think of them. Your suggestions are always welcome.
Windows and the Web Are Converging -- Microsoft is finding
ways to survive and thrive in an Internet-dominated world
Visual C++ Upgrade Goes To The Net -- Microsoft adds Internet
ability to object language
NCompass plugs into Navigator -- Runs in Netscape browser
Techview -- NCompass Gives The Best Of Both Worlds
Microsoft embraces, spars with Sun's Java
A Window On The Internet -- Microsoft's ActiveX toolkit extends
Windows and the Web Are Converging -- Microsoft is
finding ways to survive and thrive in an
By Martin Heller
You've seen information overload in others: the unfocused gaze, the slack
jaw, the tense fidgeting. I saw a lot of it at Microsoft's recent Internet
Professional Developers Conference in San Francisco-and, for that
matter, probably expressed it myself more than I would have liked. But I
also saw plenty of people who were getting the message, despite all the
sales pitch and the hype.
The story is that Windows and the Internet are converging. Of course,
that's a self-serving opinion when it comes from Microsoft. My cynical
side is convinced that Microsoft is attempting to co-opt the Internet. But
my sympathetic side believes Microsoft is trying to embrace the Net. No
matter how you view it, it makes sense-Windows and Microsoft need to
grow and adapt in order to survive.
The details are a bit harder to follow because they're steeped in hype and
described with new, unnecessary terminology. We hear about the Active
Wave and ActiveX. What in the World Wide Web are they?
You know that symbol that represents the artist formerly known as
Prince? Think of ActiveX Controls as the technology formerly known as
OLE Controls (and, before that, as OCX Controls). Think of ActiveX
Scripting as the formerly unfulfilled promise of a universal macro language
care to include. Think of ActiveX Documents as the technology formerly
known as OLE Document Objects.
As I listened to the Microsoft techies try to explain all this, the first thing
that struck me was how many little pieces they cobbled together and
trimmed to fit the ActiveX puzzle. But as they continued their explanation,
I realized I was hearing about a kind of symmetry, about pieces you can
use anywhere in the puzzle and connect to any other piece of the puzzle.
In fact, ActiveX is more like Tinkertoys or Lincoln Logs than a jigsaw
ActiveX Controls are the objects and ActiveX Scripting is the glue, but
scripts can cross-dress as objects and objects can invoke scripts. These
scripts can run on the client or the server, and they can generate formatted
pages that can run other scripts. It's a weird, confusing scene for the
uninitiated, yet it's also a powerful scenario for those developers who get
A rose is a rose is a rose
ActiveX Controls are also COM (Component Object Model) objects.
This means they have an IUnknown interface class exposed to the world
that implements the basic AddRef, Release and QueryInterface methods
for examining and connecting to the objects' useful methods. (For an
introduction to COM, see my column in the March issue.) ActiveX
Controls also need to expose an IViewObject OLE class implementing a
Draw method to display themselves in documents, and may optionally
expose an IOleControl interface class to support keyboard mnemonics,
ambient properties and events.
To support scripting, ActiveX Controls can implement IDispatch and
IConnectionPoint classes. IConnectionPoint allows an object to support
outgoing interfaces such as event sets. IDispatch makes the control an
OLE Automation object, which is like a COM object with tail fins and
four on the floor. An OLE Automation controller determines an OLE
Automation object's methods and properties by calling
IDispatch::GetIDsOfNames, and uses them by calling IDispatch::Invoke.
What's the catch?
Implementing an OLE Automation object is easy in Visual C++ if you use
MFC (Microsoft Foundation Class) and the Class Wizard. Easy, yes, but
there's a catch. OLE Controls and OLE Automation objects have been
around awhile for applications and documents that reside on the user's
machine or LAN. What has changed in the transition to ActiveX Controls
is the environment: The user may need to download the control from the
Internet, using whatever bandwidth the browsing connection and the Web
server's Internet tap can provide. If the user has a 14.4Kb-per-second
PPP connection or the server is heavily loaded, the control had better be
small or the user will give up in disgust.
The catch is that MFC-based controls can't be small. For starters, they
rely on dynamically linking to an MFC runtime DLL to keep their private
size down. Right now, MFC40.DLL masses almost 1MB. Nobody in his
or her right mind would download 1MB at 14.4Kbps unless they really,
really need to.
Okay, you say, let's rely on the MFC DLL to ship with the operating
system. Great. Microsoft already does that with Windows 95, so what's
the problem? MFC changes every three months, so you can't assume the
version resident on the user's system is current. You can do some version
checking, but anytime you run into an older version you'll have two
problems: downloading the new version and replacing the old version,
which is likely to be in use by something already running on the user's
Microsoft acknowledges the MFC-based control size problem and has a
mandate to fix it, but this will take some time. Meanwhile, I direct you to
the Samples\BaseCtl branch of the Internet SDK directory tree. Controls
based on this sample, which uses non-MFC C++ classes, can be fully
functional with only 30KB of footprint. The good news about the base
control is it exists and it's an example you can use. The bad news: You'll
have to learn quite a bit about COM and OLE to use it. That's okay, I
guess-not everybody needs to write controls.
If you do need to write controls, learn about dual interfaces. As I
mentioned earlier, an OLE Automation object can expose an IDispatch
interface, which is a general form of late (runtime) binding. OLE
Automation objects can also expose a VTBL interface, which is a more
efficient early (compile-time) binding mechanism. Dual interface OLE
Automation objects expose both IDispatch and VTBL interfaces. The
general dual interface implementation scheme for us lazy programmers is
to delegate as much as possible. If you're writing an MFC automation
object with dual interfaces, you can have the dual interfaces call the MFC
implementation of IDispatch. If you're not using MFC, you can implement
most of the IDispatch side by invoking the methods through the VTBL.
Forget the browser
One control you don't need to write is a Web browser. Several are
available commercially. I use Webster Control from Sax Software
(800-645-3729, 541-344-2235; http://www.saxsoft.com/) and the
Crescent Internet ToolPak from Progress Software's Crescent Division
(800-35-BASIC, 617-280-3000; http://www. progress.com/crescent).
You can download MsHtml.dll free from
MsHtml is just one piece of the ActiveX object model for Internet
Explorer 3.0. The other is the IExplorer Browser object. Both are
in-process COM classes. MsHtml is an OLE Document Object that
implements HTML viewing. The IExplorer Browser is an OLE Document
Object container you can also use as an OLE Control. IEXPLORE.EXE
proper, all 12KB of it, is nothing more than a process with a frame and a
message pump that hosts the IExplorer Browser. In Nashville, the Internet
upgrade to Windows 95, the shell will also host the IExplorer Browser as
an additional view over and above the shell's large-icon, small-icon, list
and detail views.
Show your (inter)face
Because both MsHtml and the IExplorer Browser are COM objects, you
can use either in your applications. IExplorer Browser exposes two dual
interfaces-IShellExplorer and IInternetExplorer. Both interfaces contain
methods such as Open, Close, GoBack, GoForward, GoSearch,
Navigate and Refresh-the high-level commands in a browser-as well as
lower-level commands that reference a document and its contents.
IExplorer Browser can host any OLE Document Object, not just
MsHtml. It also supports hyperlinking to any document type, not just
those HTML supports.
MsHtml, on the other hand, exposes only the lower level: the document,
the window, forms within a document, HTML controls within a form,
anchors and links within a document, and so on. MsHtml isn't a container,
and only supports HTML hyperlinking. Yet some applications don't need
those capabilities and could benefit from a reduced-memory footprint.
You can also drop down to more basic objects if all you really want to do
is download things from the Internet. As I mentioned in my May column,
the Win32 Internet API, or WinInet (also known as Sweeper), makes
reading http, ftp and gopher files on the Internet about as easy as reading
files locally. If you like COM, though, you can use URL (Universal
Resource Locator) monikers, which bind COM monikers to Internet
URLs and retrieve them asynchronously, to accomplish much the same
thing with less code and less system dependence.
An even more compelling reason to use COM interfaces is on the horizon:
distributed COM (DCOM), the technology formerly known as
Networked OLE. That's right, Microsoft will finally deliver the magic
plumbing that will enable all COM interfaces to work across all
networking protocols, and transform the underlying "lightweight" RPCs
(remote procedure calls) of today's COM and OLE to true RPCs.
DCOM means all your existing 32-bit applications that use COM no
longer have to run on the same computer as their COM services. The
remote COM server may be elsewhere on your LAN, or anywhere in the
world connected to the Internet. You're practically guaranteed your
application will work with DCOM if it was built with VB 4.0 or MFC
with OLE support.
Both ActiveX Documents and ActiveX Controls can be DCOM clients.
An ActiveX Document can contain a reference to a remote COM object
that users can access over the Net, and an ActiveX Control can bind to a
URL moniker that retrieves a reference to the remote COM object.
Either way, the COM object resides on a remote server machine.
The client/server world just got a whole lot more power-and a whole lot
more complexity. I, for one, am getting just a bit overloaded.
Martin Heller writes about programming, technology and life from
Andover, Mass. Visit his Web page at
http://www.winmag.com/people/mheller, send him e-mail at
email@example.com or contact him via the addresses on page 18.
Copyright * 1996 CMP Publications, Inc.
NCompass plugs into Navigator -- Runs in Netscape
By Jodi Mardesich
San Francisco - Progress has been made in the debate over whether to
write new software components that plug into Netscape Communications
Corp.'s market-leading Navigator or Microsoft Corp.'s Internet Explorer.
Through a plug-in developed by NCompass, a small developer in
Vancouver, British Columbia, OLE components can run unmodified in the
Microsoft has licensed the NCompass Plug-In and will make it available
free from Microsoft's Web site (at http://www.microsoft.com). The
Plug-In acts as an OLE container, so OLE controls-now called ActiveX
controls-will run equally well in either browser, said Julie Zilber,
"Developers don't have to worry about which browser clients are using,"
The Plug-In supports ActiveX Documents, formerly called DocObjects,
which means that Microsoft Office documents can be viewed from within
Netscape. If the Microsoft Office application is actually installed on that
PC, users can edit documents from within the Netscape browser.
For example, if there is a link to a PowerPoint presentation in a Web
page, a user can click on that link and bring up the presentation within
Netscape Navigator. Navigator adopts the tool bars and menus of
NCompass also is working on a script-based authoring tool that
ease design of ActiveX Web pages.
The company, which employs 10 programmers, released its first version
of the Plug-In last September. Version 2.0 is now shipping.
NCompass is a big proponent of component software, because it believes
that the proliferation of components can change the way smaller
developers distribute products. For instance, developers can distribute
products over the Internet on a pay-per-use basis. This could eliminate
the need to spend money creating packaging and getting products onto
store shelves. This new model could have a big impact on software-only
resellers and distributors, observers said.
, British Columbia, was one of them.
At these gatherings, Netscape and Microsoft offered two different-mostly
incompatible-visions of the future of applications over the Internet.
NCompass offered one of the few immediate solutions for people
interested in accessing both technologies from a single browser. The
NCompass ActiveX plug-in for Navigator 2.0 adds impressive OLE
functionality for Windows NT and Windows 95, giving you the best of
both Internet worlds in a single browser.
NCompass will support Microsoft Document Objects, as well as the
latest round of specifications for downloadable OLE Controls (now called
ActiveX Controls) and Microsoft's Sweeper Internet architecture.
Support for Microsoft Document Objects means that the application
associated with an embedded ActiveX object can be launched within the
Navigator browser. For example, if you download a Microsoft Word
document from a World Wide Web page, the Word application launches
within Navigator, and you see Microsoft Word running inside your
Navigator window with full menus and toolbars. How does this work?
When NCompass sees that you're downloading a MIME data type it
supports, it uses ActiveX calls to query the Windows Registry to find an
OLE server to take care of the document and returns to the plug-in the
Class ID of the best OLE server match so the plug-in can launch that
As with other Netscape plug-ins, the MIME data types associated with
NCompass are hard-coded and there isn't any straightforward way to
add new types. To get around this limitation, NCompass will give away a
tool that creates a small dynamic link library (DLL) that recognizes a
MIME type and launches the NCompass plug-in. Using this tool, you
could create DLLs to recognize your new MIME data types. Licensees
of NCompass will then have a way to add support for new ActiveX
Speaking of licensees, even Microsoft is licensing NCompass, but has not
said what it will do with it.
NCompass supports downloaded ActiveX controls, but
there is no Visual Basic Script implementation for Navigator.NCompass,
however, has announced that it is developing a scripting engine for
Navigator. The new beta of the NCompass plug-in and the DLL tool
should be available from NCompass Labs' Web site by the end of
March. You can check it out at http://www.excite.sfu.ca/NCompass/
Microsoft embraces, spars with Sun's Java
By Deborah Gage &Jodi Mardesich
San Francisco - Microsoft Corp. continued its march to support other
vendors' standards at Internet World last week, blurring the lines between
embracing standards and adding proprietary extensions.
"We got exactly what we wanted from Sun [Microsystems Inc.]," said
Microsoft group product manager Cornelius Willis, speaking of
Microsoft's plan to build the Java Virtual Machine into Windows and
integrate Java with Microsoft's ActiveX controls.
ActiveX is Microsoft's new name for OLE custom controls, with
modifications such as automatic downloading that make them suitable for
But Bill Joy, Sun co-founder and developer of Java, said the Internet
standards have been set by Sun and Netscape Communications Corp.,
not Microsoft. "ActiveX is a desktop standard," he said.
Sun executives said the license agreements with Microsoft and other
operating systems vendors provide "a substantial ongoing revenue stream"
for JavaSoft, but would not be more specific.
Willis, however, said the revenue stream from Microsoft to Sun is "not
Microsoft, meanwhile, is publishing DCOM, its specification for
distributing OLE controls over a network and on the Internet. DCOM will
ship later this year as part of Windows NT and Windows 95.
Two weeks ago, Microsoft said that COM would integrate with
technology from the Object Management Group.
Still, while Java tools are abundant, there are no tools for easily creating
ActiveX controls. Early adopters can use C++ until Visual Basic 5 arrives
later this year.
Of the three vendors listed as showing ActiveX tools at Internet World
last week, WebVision, Woodland Hills, Calif., said the listing was a
mistake and Dimension X, San Francisco, staged a press conference only
to announce it licensed Java.
"Why should we put an OLE wrapper on Java?" asked Chris Biber,
Internet evangelist for Corel Corp., Ottawa. "Java is a programming
language-it will take us in directions we can't yet imagine."
Microsoft has made other confusing changes. DocObjects, its OLE
technology for preserving developers' file formats on the Web through
Windows (CRN, Dec. 4 ), has been renamed Active Documents,
although the specification is unchanged.
Version 3.0 of Microsoft's Internet Explorer browser, due this summer,
browser will be integrated with Windows at an unspecified date.
However, Microsoft Solution Provider Dan Fine said he is sticking with
"We have done very little Java, and I don't encourage that our developers
learn it. I think Sun and Netscape are overhyping something that isn't
ready for prime time," said Fine, chief executive of Fine.com.corp, based
"Andreesen is a young kid, and I think Netscape is using him to mouth off
and gain support for Microsoft-bashing," said Fine.
Copyright * 1996 CMP Publications, Inc.
OLE Becomes 'Net-Enabled
By Martin Marshall and Karen Rodriguez
Microsoft last week unveiled extensions to its core Object linking and
Embedding technology for creating and deploying applications actively
linked to the World Wide Web.
The OLE extensions will enable the creation of database-driven
customized Web pages. The extensions, together with the rest of the
software architecture, have been renamed Active-X and will let users tap
into Java applets embedded in remote Web pages, providing OLE
applications on the desktop with access to Internet-based resources, such
as files and programs. These will appear to the application as though they
were resident inside the client PC.
Microsoft's Net Onslaught
By Jodi Mardesich
Just one week after Netscape Communications Corp. wowed VARs and
developers with its revolutionary vision of a new world of opportunities,
Microsoft Corp. gave its version-a sort of "evolutionary" revolution.
At its Professional Developers Conference in San Francisco, Microsoft
collected its tools-from object linking and embedding (OLE) controls to
Visual Basic to Visual C++-renamed some of them and explained to
developers how to leverage what they already know to build applications
that plug into the Net.
Aiming to change the perception of OLE and the Component Object
Model (COM) and to unify the names of a disparate set of technologies,
Microsoft created a family brand called ActiveX.
While OLE components were considered to be fat and slow, ActiveX
components are smaller, leaner and faster, said Cornelius Willis, group
product manager, Internet developer marketing.
Microsoft told developers they can take existing ActiveX
Controls-basically software components written to the Microsoft OLE
COM specification-and run them in the next version of Internet Explorer
Through a plug-in designed for Net-scape Navigator, these controls can
also run unmodified in Navigator (see NCompass story, this page.)
New technology includes the modular Internet Explorer 3.0, due this
summer; Jakarta, the code name for a visual Java development tool; and
an Internet Add-On for Windows 95 that brings a Web-style interface to
the Windows 95 desktop.
Last December, Microsoft Chairman Bill Gates said the Internet Add-On
would be available free over the Internet. However, Microsoft now plans
to charge for the add-on, code-named Nashville. This makes Nashville
more like an upgrade to Windows than an add-on, observers said.
Nashville will be distributed through the channel as an upgrade rather than
"We can't give everything away for free," said Brad Silverberg, senior vice
president of the Internet Platform and Tools division.
"We have to make money on something." The Nashville release also will
include conferencing support, including realtime chat, shared white-board
capabilities and shared editing of documents.
allows Java applets and ActiveX Controls to interoperate, according to
Microsoft is considering offering its technology to Mountain View,
Calif.-based Netscape, Silverberg said.
Key to Microsoft's strategy now is the challenge of making its
technologies run across platforms. While the company will focus on the
Windows platform, it has enlisted Macromedia Inc., San Francisco, to
bring ActiveX technologies to the Macintosh, for example.
Microsoft also unveiled Visual C++ 4.1, a subscription update that adds
support for Internet Information Server, and third-party ActiveX
In addition, Microsoft is working on ways to make ActiveX Controls
smaller and faster by not requiring the use of the Microsoft Foundation
Classes, said John Browne, product manager for Visual C++. Visual
Basic 5.0, due by the end of 1996, will support the creation of ActiveX
Who ultimately wins the battle for browser market share depends on
delivery, VARs said. One VAR, who requested anonymity, said
Microsoft cannot afford to let development schedules slip, as it did with
Windows 95 and Windows NT.
But no matter how great Microsoft's technology sounds, much of it still
relies on the future, and in reality Netscape has an 85 percent market
"No doubt some people will wait for the new pieces to be delivered,
especially Microsoft corporate users who are confused by the Web," said
Dave Winer, a software developer and Web veteran. "But for the rest of
us, it's still business as usual. If Microsoft starts showing up more in server
logs, I'll do stuff with their stuff. Until that happens, Netscape remains the
browser I judge my pages in."
Effort to head off netscape revolves around
object-linking-and-embedding technologies -- Microsoft
launches Internet counterassault
Microsoft's plan revolves around a treasure trove of
object-linking-and-embedding (OLE) technologies tuned for Web-aware
applications. These include new programming constructs to handle
MPEG-encoded video, JPEG images, Quicktime animations and
Real-Audio sound files. (Separately, Microsoft has launched its
ActiveMovie player for stream-oriented audio and video; see story, page
The OLE features will be supported in Microsoft's new "Sweeper"
Internet client architecture, which will also be unveiled this week.
Sweeper implements Microsoft's new Internet server application
programming interface-known as ISAPI-that's essentially the Windows
spec for writing Internet server applications.
"OLE is the foundation for all of Microsoft's ongoing work," said Dwight
Davis, editor of Windows Watcher (Redmond, Wash.), a newsletter that
covers Microsoft. "Sweeper is designed to keep developers in the OLE
fold and not bolt for Netscape's greener pastures."
Indeed, Netscape worked hard last week to keep itself in the forefront of
programmers' plans. The company held its own developers conference in
San Francisco, where it spotlighted its recently released Navigator 2.0
Web browser and unveiled its FastTrack Web server.
The Java difference
Currently, the biggest difference between Microsoft and Netscape centers
on Java, the Web programming language developed by Sun
Microsystems. Support for Java is tightly integrated into Netscape's
Navigator. In contrast, Microsoft's Internet Explorer browser does not
currently work with Java. However, Microsoft has licensed Java and will
reportedly support it in Internet Explorer 3.0, which is scheduled to enter
beta testing soon.
Nevertheless, industry experts familiar with Sweeper said that Microsoft's
heart still appears to belong to technology that's ubiquitous to the
Windows environment, such as Visual Basic, OLE and dynamic-link
libraries (DLL). Indeed, Microsoft is counting on the huge base of
programmers already trained in Windows as the engine that will thrust it to
the center of the Internet stage. (Java, on the other hand, is new and few
software engineers have experience in the language.)
"Microsoft's strategy is completely up-front," said Davis. "They're looking
to take their installed base of applications and operating systems and
mesh it with the Internet."
For example, Microsoft's new Internet architecture relies heavily on
ISAs-Internet server applications. ISAs are a set of typical Windows
DLLs, which have been designed to handle functions required in Web
browser pages. In Windows, dynamic linking provides a way for
processes to call functions that aren't part of the main executable code
module. For example, the Win32 applications programming interface
(API) is implemented as a set of DLLs, so any process using the Win32
API uses a DLL.
The portion of the ISA with which programmers will work is the ISAPI.
Developed jointly by Microsoft and Process Software Corp., the ISAPI
revolves around a host of new OLE and Win32 Internet functions aimed
at client applications. The functions provide a way for applications to
handle Gopher, File Transfer Protocol and HTTP (HyperText Transfer
Protocol) operations in Web browser code.
"While the concepts supported by the Internet protocols such as FTP and
HTTP are simple, the actual implementation of these protocols can be
complex," the Microsoft document notes. "For example, FTP servers
return ASCII text-file directory listings; parsing these listings requires
specific knowledge of the format returned by each FTP server. By
encapsulating this functionality underneath the Internet functions, directory
parsing is solved once, for all applications using the FTP protocol."
Visual Basic is also likely to factor heavily into Microsoft's net plans. The
company has pledged to beef up VB 5.0-due out soon-with OLE
controls that can be activated from inside Web pages. The controls could
thus be used to launch "applets," in the same manner as Java is used in the
Netscape environment. Microsoft has also said that its Visual Basic OLE
controls will be compatible with Java applets.
That waxing and waning is one reason why Microsoft's OLE object
technology and its new Internet initiative, ActiveX, have the upper hand.
"[ActiveX] is the safe bet in the medium term," says Andersen's
Stoudenmire. But Sun's Joe initiative has several advantages, not the least
of which is the incredible momentum behind the Java programming
language. "Sun has to copy the Microsoft model," says IDC's Quinn.
"They have to put Joe out on the street, and try to create some kind of
momentum to offset the Microsoft [OLE] standard. The question is, is it
too late or too little?"
Sun is hoping the combination of Joe and Corba will create an object
Apply Worldwide Now
Do it once, do it right, and do it now.
Apply as needed, when needed.