Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. General Programming
  3. COM
  4. Why we need COM?

Why we need COM?

Scheduled Pinned Locked Moved COM
questioncom
7 Posts 4 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • N Offline
    N Offline
    Nandu_77b
    wrote on last edited by
    #1

    Why we need COM? shall we use DLL insted of COM? What is the advantage of using COM? I know COM makes use of DLL for dynamic linking. But the above question is what ever is possible by COM can also be achive by DLL or not? If not what is the advantge of COM? Thanks in Advance Nandu

    S C M 3 Replies Last reply
    0
    • N Nandu_77b

      Why we need COM? shall we use DLL insted of COM? What is the advantage of using COM? I know COM makes use of DLL for dynamic linking. But the above question is what ever is possible by COM can also be achive by DLL or not? If not what is the advantge of COM? Thanks in Advance Nandu

      S Offline
      S Offline
      Steve S
      wrote on last edited by
      #2

      You know, I hate it when people post questions like this without reading older messages. Someone asked a short while ago what the difference between COM and a DLL is. Maybe if you read a little bit more about COM, you'd be able to appreciate the differences. Not all COM components sit inside dinky little DLLs. Some components are full-blown applications (like Excel, for instance), and cannot ever be in-process, and that's even before you start thinking about remoting an interface (oops, sorry, I didn't mean to use remote as a verb!).

      Steve S Developer for hire

      N 1 Reply Last reply
      0
      • N Nandu_77b

        Why we need COM? shall we use DLL insted of COM? What is the advantage of using COM? I know COM makes use of DLL for dynamic linking. But the above question is what ever is possible by COM can also be achive by DLL or not? If not what is the advantge of COM? Thanks in Advance Nandu

        C Offline
        C Offline
        CPallini
        wrote on last edited by
        #3

        COM is a binary standard for interacting software components; COM servers have a lot of advantages with respect to ordinary DLL's (BTW only COM in-process servers are DLL's: local and remote servers are executables). Since COM and ordinary DLL comparison is a rather brad topic, I suggest to you to read a good COM-related book, such as Inside COM or essential COM(I assume you're familiar with standard DLL's and OOP programming). :)

        If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.

        N 1 Reply Last reply
        0
        • S Steve S

          You know, I hate it when people post questions like this without reading older messages. Someone asked a short while ago what the difference between COM and a DLL is. Maybe if you read a little bit more about COM, you'd be able to appreciate the differences. Not all COM components sit inside dinky little DLLs. Some components are full-blown applications (like Excel, for instance), and cannot ever be in-process, and that's even before you start thinking about remoting an interface (oops, sorry, I didn't mean to use remote as a verb!).

          Steve S Developer for hire

          N Offline
          N Offline
          Nandu_77b
          wrote on last edited by
          #4

          Thanks, I have searched for the diff between COM and a DLL. But I could not find it in the older messages, can you please provide that URL. Nandu

          S 1 Reply Last reply
          0
          • C CPallini

            COM is a binary standard for interacting software components; COM servers have a lot of advantages with respect to ordinary DLL's (BTW only COM in-process servers are DLL's: local and remote servers are executables). Since COM and ordinary DLL comparison is a rather brad topic, I suggest to you to read a good COM-related book, such as Inside COM or essential COM(I assume you're familiar with standard DLL's and OOP programming). :)

            If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.

            N Offline
            N Offline
            Nandu_77b
            wrote on last edited by
            #5

            Thanks you CPallini Nandu

            1 Reply Last reply
            0
            • N Nandu_77b

              Thanks, I have searched for the diff between COM and a DLL. But I could not find it in the older messages, can you please provide that URL. Nandu

              S Offline
              S Offline
              Steve S
              wrote on last edited by
              #6

              this[^] was what I was thinking of. Seriously, if you do not understand the difference between a DLL and COM, you need to do much more reading (Inside COM or Essential COM would do for starters). As the other poster has said, COM is a binary standard for cross-language components, and much more. Lots of the parts of the software provided by Microsoft in the OS (such as the Firewall, Explorer) provide COM interfaces as the API. Granted, many components are implemented as in-process DLLs, but lots more aren't. Sure, for many things COM is perceived as overkill, and a simple DLL with a flat API may well be easier to use. However, taking into account the inter-process and inter-machine capabilities that come almost free with COM (and DCOM), you have a much clearer idea that the simple DLL is just the tip of a very large iceberg. Really, go find a copy of Essential COM, and you'll understand why your question is not a good one. COM is the glue that allows you to stick multiple components together into a system, among other things.

              Steve S Developer for hire

              1 Reply Last reply
              0
              • N Nandu_77b

                Why we need COM? shall we use DLL insted of COM? What is the advantage of using COM? I know COM makes use of DLL for dynamic linking. But the above question is what ever is possible by COM can also be achive by DLL or not? If not what is the advantge of COM? Thanks in Advance Nandu

                M Offline
                M Offline
                Michael Dunn
                wrote on last edited by
                #7

                Check out my intro to COM article[^] for a start.

                --Mike-- Visual C++ MVP :cool: LINKS~! Ericahist | PimpFish | CP SearchBar v3.0 | C++ Forum FAQ Dunder-Mifflin, this is Pam.

                1 Reply Last reply
                0
                Reply
                • Reply as topic
                Log in to reply
                • Oldest to Newest
                • Newest to Oldest
                • Most Votes


                • Login

                • Don't have an account? Register

                • Login or register to search.
                • First post
                  Last post
                0
                • Categories
                • Recent
                • Tags
                • Popular
                • World
                • Users
                • Groups