comp.lang.ada
 help / color / mirror / Atom feed
* COM & ADA
@ 1998-02-11  0:00 ahmed
  1998-02-11  0:00 ` Juergen Pfeifer
  1998-02-15  0:00 ` COM & ADA Francois Krull
  0 siblings, 2 replies; 6+ messages in thread
From: ahmed @ 1998-02-11  0:00 UTC (permalink / raw)



Hi, I want to know if COM and ADA are compatible
do you know any WEB site about ADA and Component Object Model

Thank you

-------------------==== Posted via Deja News ====-----------------------
      http://www.dejanews.com/     Search, Read, Post to Usenet




^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: COM & ADA
  1998-02-11  0:00 COM & ADA ahmed
@ 1998-02-11  0:00 ` Juergen Pfeifer
  1998-02-12  0:00   ` Michael F Brenner
  1998-02-15  0:00 ` COM & ADA Francois Krull
  1 sibling, 1 reply; 6+ messages in thread
From: Juergen Pfeifer @ 1998-02-11  0:00 UTC (permalink / raw)



As COM isn't language dependant, the question isn't a proper one.

There is some conveniance if you use C++, because part of the
COM model is a virtual function table representing an interface and
that is defined in the same way the C++ compiler lays out its vtable.
On Win32 this is of course the layout of microsofts C++ compiler,
on other platforms ( (D)COM is available on some UNIXes and on
OS/390 Mainframe OS) the layout is according to the OS vendors
predominant C++ compiler. On Linux for example the COM vtables
are layed out according to the GNU g++ compiler.
The nice thing there is, that the GNAT Ada95 compiler also uses
this vtable layout, so you don't have to adjust this mechanism. At
least with GNAT the way the compiler interfaces to C++ vtables
can be changed by the programmer, so you can adapt this to the
C++ vtable layout that is used by COM on your platform. Then you
can use the Ada95 tagged record mechanism to construct your
COM objects.
The real bad news is of courses, that all the header files with all
the predefined GUIDS, Interfaces etc, etc. only exist for C/C++,
so you have to do a lot to get a nice set of Ada95 packages to be
able to use COM easily (if that's possible at all, but thats a different
story;-))

Cheers
Juergen

ahmed@info.polymtl.ca schrieb in Nachricht
<887219614.265682953@dejanews.com>...
>Hi, I want to know if COM and ADA are compatible
>do you know any WEB site about ADA and Component Object Model
>
>Thank you
>
>-------------------==== Posted via Deja News ====-----------------------
>      http://www.dejanews.com/     Search, Read, Post to Usenet






^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: COM & ADA
  1998-02-11  0:00 ` Juergen Pfeifer
@ 1998-02-12  0:00   ` Michael F Brenner
  1998-02-13  0:00     ` COM & Ada Nick Roberts
  0 siblings, 1 reply; 6+ messages in thread
From: Michael F Brenner @ 1998-02-12  0:00 UTC (permalink / raw)



Juergen > ... You can use the Ada95 tagged record mechanism to construct your
        > COM objects.
        > The real bad news is of courses, that all the header files with all
        > the predefined GUIDS, Interfaces etc, etc. only exist for C/C++,
        > so you have to do a lot to get a nice set of Ada95 packages to be
        > able to use COM easily (if that's possible at all, but thats a 
        > different story;-))

Does anyone know what has already been done in the area of these header files?

What about interfaces to Microsoft Word and to Direct X via Ada? It might
sometimes be easier to do a specific component like those two, rather than
provide an interface to all the interfaces of the Component Object Model
in Ada.

Mike Brenner mikeb@mitre.org




^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: COM & ADA
@ 1998-02-12  0:00 Simon Johnston
  0 siblings, 0 replies; 6+ messages in thread
From: Simon Johnston @ 1998-02-12  0:00 UTC (permalink / raw)



There is the article in Ada Letters on Automation access and I'm currently
working on a COM browser which will generate code to access COM objects
directly from type libraries. There are quite a few Ada-unfriendly features
in COM IDL which I'm still working on.

On 12 February 1998 15:01, Michael F Brenner [SMTP:mfb@MBUNIX.MITRE.ORG]
wrote:
> Juergen > ... You can use the Ada95 tagged record mechanism to construct
your
>         > COM objects.
>         > The real bad news is of courses, that all the header files with
all
>         > the predefined GUIDS, Interfaces etc, etc. only exist for
C/C++,
>         > so you have to do a lot to get a nice set of Ada95 packages to
be
>         > able to use COM easily (if that's possible at all, but thats a
>         > different story;-))
>
> Does anyone know what has already been done in the area of these header
files?
>
> What about interfaces to Microsoft Word and to Direct X via Ada? It might
> sometimes be easier to do a specific component like those two, rather
than
> provide an interface to all the interfaces of the Component Object Model
> in Ada.
>
> Mike Brenner mikeb@mitre.org




^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: COM & Ada
  1998-02-12  0:00   ` Michael F Brenner
@ 1998-02-13  0:00     ` Nick Roberts
  0 siblings, 0 replies; 6+ messages in thread
From: Nick Roberts @ 1998-02-13  0:00 UTC (permalink / raw)



This would be a case where a 'thin' binding would be all that is required. 
Something that Ada compiler vendors ought to think about hmm?

At the least, provision should be made for: (a) accessing vtables
(preferably, I think, by means of the Convention pragma); (b) the basic COM
interfaces (IUnknown; IMalloc; etc.).

-- 

== Nick Roberts ================================================
== Croydon, UK                       ===========================
==                                              ================
== Proprietor, ThoughtWing Software                   ==========
== Independent Software Development Consultant            ======
== Nick.Roberts@dial.pipex.com                              ====
== Voicemail & Fax +44 181-405 1124                          ===
==                                                            ==
==           I live not in myself, but I become               ==
===          Portion of that around me; and to me             ==
====         High mountains are a feeling, but the hum        ==
=======      Of human cities torture.
===========                             -- Byron [Childe Harold]


Michael F Brenner <mfb@mbunix.mitre.org> wrote in article
<6bv2qo$64u@top.mitre.org>...
> Juergen > ... You can use the Ada95 tagged record mechanism to construct
your
>         > COM objects.
>         > The real bad news is of courses, that all the header files with
all
>         > the predefined GUIDS, Interfaces etc, etc. only exist for
C/C++,
>         > so you have to do a lot to get a nice set of Ada95 packages to
be
>         > able to use COM easily (if that's possible at all, but thats a 
>         > different story;-))
> 
> Does anyone know what has already been done in the area of these header
files?
> 
> What about interfaces to Microsoft Word and to Direct X via Ada? It might
> sometimes be easier to do a specific component like those two, rather
than
> provide an interface to all the interfaces of the Component Object Model
> in Ada.





^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: COM & ADA
  1998-02-11  0:00 COM & ADA ahmed
  1998-02-11  0:00 ` Juergen Pfeifer
@ 1998-02-15  0:00 ` Francois Krull
  1 sibling, 0 replies; 6+ messages in thread
From: Francois Krull @ 1998-02-15  0:00 UTC (permalink / raw)



You might find the information you're looking for
at http://www.aonix.com/Support/Ada/olepap1.html

Regards

Francois Krull


ahmed@info.polymtl.ca wrote in message <887219614.265682953@dejanews.com>...
>Hi, I want to know if COM and ADA are compatible
>do you know any WEB site about ADA and Component Object Model
>
>Thank you
>
>-------------------==== Posted via Deja News ====-----------------------
>      http://www.dejanews.com/     Search, Read, Post to Usenet






^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~1998-02-15  0:00 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1998-02-11  0:00 COM & ADA ahmed
1998-02-11  0:00 ` Juergen Pfeifer
1998-02-12  0:00   ` Michael F Brenner
1998-02-13  0:00     ` COM & Ada Nick Roberts
1998-02-15  0:00 ` COM & ADA Francois Krull
  -- strict thread matches above, loose matches on Subject: below --
1998-02-12  0:00 Simon Johnston

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