Thread overview
[Issue 2041] New: Spec implies relationship between interfaces and COM objects
Apr 26, 2008
d-bugmail
Nov 24, 2008
d-bugmail
Nov 24, 2008
d-bugmail
Dec 25, 2008
d-bugmail
April 26, 2008
http://d.puremagic.com/issues/show_bug.cgi?id=2041

           Summary: Spec implies relationship between interfaces and COM
                    objects
           Product: D
           Version: 2.012
          Platform: PC
               URL: http://digitalmars.com/d/2.0/interface.html
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: P2
         Component: www.digitalmars.com
        AssignedTo: bugzilla@digitalmars.com
        ReportedBy: jlquinn@optonline.net


The following bit of text about interfaces:

  Interfaces correspond to the interface exposed by operating system objects,
like COM/OLE/ActiveX for Win32.

implies that there is some kind of connection between an interface and Win32 COM objects.  Is this the intention?  If so, what does that mean on Linux and other Unixen platforms?  What exactly does it mean on Win32 in this case?  Is there an active tie into those objects?

  If not, this should be more clearly reworded to indicate it is just an
analogy.  A better analogy would probably be to Java interfaces, as D
interfaces appear to be very similar if I'm not mistaken.


-- 

November 24, 2008
http://d.puremagic.com/issues/show_bug.cgi?id=2041


smjg@iname.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |smjg@iname.com




------- Comment #1 from smjg@iname.com  2008-11-23 19:22 -------
It isn't just an analogy.  By intention, it's talking about compatibility in the ABI between D interfaces and COM, which is a quite different concept from that of having the same overall meaning as in some other programming language.

Hence you can use D interfaces to interact with Windows COM objects, and even to create COM objects of your own.  See the "Com Interfaces" section further down that page.

The statement I'm not sure about is "It derives from the interface std.c.windows.com.IUnknown."  It seems that win32.unknwn.IUnknown should work just as well.

I myself am not familiar with COM enough to know how to try it out, but hope this helps.


-- 

November 24, 2008
http://d.puremagic.com/issues/show_bug.cgi?id=2041





------- Comment #2 from jarrett.billingsley@gmail.com  2008-11-23 19:34 -------
I think the only misleading part about it is that it says "interfaces correspond to the interface exposed by operating system objects."  That, to me, implies that they are primarily meant for use with operating system interaction.  That's pretty far from the truth.  It should say something like "D also has support for interfaces which correspond to COM/OLE/ActiveX objects on Windows."


-- 

December 25, 2008
http://d.puremagic.com/issues/show_bug.cgi?id=2041


bugzilla@digitalmars.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED




------- Comment #3 from bugzilla@digitalmars.com  2008-12-25 04:38 -------
Fixed dmd 1.038 amd 2.022


--