comp.lang.ada
 help / color / mirror / Atom feed
* Major Ada find on the Win32 platform
@ 1999-04-21  0:00 David Botton
  0 siblings, 0 replies; only message in thread
From: David Botton @ 1999-04-21  0:00 UTC (permalink / raw)


Today while playing with a tool I am constructing to generate Ada
bindings to COM objects, I came across a major find. Microsoft ships a
type library with Windows 98 that includes the ANSI Win32 API.

What does a Windows 32 Api type Library mean? Well in the very near
future (weeks) using the tool:

1. Generate most of the Windows 32 API binding in about 30secs that is
fresh, up to date and error free.
2. Generate a document with a documentation summary of every constant,
function, struct, union, etc. in the API with help text that is embedded
in the type library
3. Editors and other tools like Martin Carlisle's AdaGIDE could easily
add extensions to look up Win32API functions, documentation, show
completions, etc on the fly.

Since most of the new Win32 APIs are actually COM objects or include COM
versions it will also be possible to get at just about any other part of
the OS.

Of course since the bindings are automated from MS provided information
they will be error free and I am sure include many surprise features
(even to MS ;-)

MORE INFORMATION:

A TYPE LIBRARY is a special file generated by Microsoft's MIDL
(Microsoft Interface Definition Language) compiler. Type Libraries are
usually generated for COM objects and either shipped along with the
object or embedded as a resource. They provide all the information
needed to create bindings to COM objects and are often available at
run-time to allow more dynamic access to unknown objects.

It is very possible to create an IDL file that represents any API that
is not formed by COM objects to allow tools like the COM -> Ada binding
tool, Microsoft's VC++ #import language extension to generate the APIs
on the fly, and Microsoft has apparently decided to do so for the key
DLLs of Windows supporting the Win32Api.

I suspect the Microsoft built the Win32 type library to generate
bindings for MS languages and scripting languages like MS J++ (Microsoft
Java) or WSH (Windows Scripting Host). For example, J++ and the MS JDK
includes JActiveX that could be used to turn this type library in to a
MS Java binding.

David Botton




^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~1999-04-21  0:00 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1999-04-21  0:00 Major Ada find on the Win32 platform David Botton

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox