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
CODE PROJECT For Those Who Code
  • Home
  • Articles
  • FAQ
Community
  1. Home
  2. The Lounge
  3. Is COM an 'outdated' technology?

Is COM an 'outdated' technology?

Scheduled Pinned Locked Moved The Lounge
comdesignquestiondiscussion
29 Posts 13 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.
  • P Pete OHanlon

    krumia wrote:

    Is COM an 'outdated' technology?

    Hardly. Microsoft is agressively moving back to COM with Windows 8, although it never really went away. The problem is, there's a whole generation of programmers who know nothing of COM. Ah, the beauty of IQueryInterface and IUnknown.

    *pre-emptive celebratory nipple tassle jiggle* - Sean Ewington

    "Mind bleach! Send me mind bleach!" - Nagy Vilmos

    My blog | My articles | MoXAML PowerToys | Mole 2010 - debugging made easier - my favourite utility

    L Offline
    L Offline
    Lost User
    wrote on last edited by
    #7

    Pete O'Hanlon wrote:

    Microsoft is agressively moving back to COM with Windows 8

    From what on win7? .Net? If so explains why it is so crap. :)

    ============================== Nothing to say.

    1 Reply Last reply
    0
    • K krumia

      Is COM an 'outdated' technology? If it is, what are the technologies that replace COM? And how? If it is not, why such an old technology is still there? (I understand the basic design of COM and I understand why it was needed back then.) I am hoping to see a discussion emerging about this, in the hope that I will be able to learn a lot. p.s.: I asked this in COM forum and was hinded[^] to post it here.

      D Offline
      D Offline
      Dave Kerr
      wrote on last edited by
      #8

      COM is rather long in the tooth nowadays, but by no means an outdated technology. It is one of the most successful and long-lasting mechanisms that allow different programming languages to share objects and functionality - as well as allowing programmatic access to a variety of applications and system resources. Almost everything you do with the Windows Shell (i.e. not creating Win32 programs but accessing the task bars, folder icons etc etc) uses COM. And as mentioned in a later post Windows 8 will be using it even more - as COM interfaces can be used by C++ apps, Managed Apps etc etc. It is interesting as well to note the influence of com in managed applications - does the entry point of a C# app look familiar?

      [STAThread]
      static void Main(string[] args)
      {
      }

      As a hint, STA stands for single thread apartment model...

      My Blog: www.dwmkerr.com My Charity: Children's Homes Nepal

      1 Reply Last reply
      0
      • P Pete OHanlon

        krumia wrote:

        Is COM an 'outdated' technology?

        Hardly. Microsoft is agressively moving back to COM with Windows 8, although it never really went away. The problem is, there's a whole generation of programmers who know nothing of COM. Ah, the beauty of IQueryInterface and IUnknown.

        *pre-emptive celebratory nipple tassle jiggle* - Sean Ewington

        "Mind bleach! Send me mind bleach!" - Nagy Vilmos

        My blog | My articles | MoXAML PowerToys | Mole 2010 - debugging made easier - my favourite utility

        C Offline
        C Offline
        clientSurfer
        wrote on last edited by
        #9

        Pete O'Hanlon wrote:

        Ah, the beauty of IQueryInterface and IUnknown.

        Indeed! I wrote the first Web app for Dell Financial Services back in '98 in 1500 lines of Visual C++ 6.0 code using mostly IQueryInterface and IUnknown to control MS Word as a COM server fueled by Oracle 6.1/OWAS. Uphill both ways. Man those reference counts used to trip me up every time. Not to mention all the old Win32API methods that are available (all I know for sure is they were up through Vista) and are actually necessary to do any kind of low-level WinForms development, even in C#...

        "... having only that moment finished a vigorous game of Wiff-Waff and eaten a tartiflet." - Henry Minute  "...who gives a tinker's cuss?" - Dalek Dave  "Let's face it, after Monday and Tuesday, even the calendar says WTF!" - gavindon   It's plain that they do not yet know what true fear really is. - JSOP 2011

        1 Reply Last reply
        0
        • K krumia

          Is COM an 'outdated' technology? If it is, what are the technologies that replace COM? And how? If it is not, why such an old technology is still there? (I understand the basic design of COM and I understand why it was needed back then.) I am hoping to see a discussion emerging about this, in the hope that I will be able to learn a lot. p.s.: I asked this in COM forum and was hinded[^] to post it here.

          CPalliniC Offline
          CPalliniC Offline
          CPallini
          wrote on last edited by
          #10

          krumia wrote:

          Is COM an 'outdated' technology?

          Nope. :)

          Veni, vidi, vici.

          In testa che avete, signor di Ceprano?

          1 Reply Last reply
          0
          • P Pete OHanlon

            krumia wrote:

            Is COM an 'outdated' technology?

            Hardly. Microsoft is agressively moving back to COM with Windows 8, although it never really went away. The problem is, there's a whole generation of programmers who know nothing of COM. Ah, the beauty of IQueryInterface and IUnknown.

            *pre-emptive celebratory nipple tassle jiggle* - Sean Ewington

            "Mind bleach! Send me mind bleach!" - Nagy Vilmos

            My blog | My articles | MoXAML PowerToys | Mole 2010 - debugging made easier - my favourite utility

            CPalliniC Offline
            CPalliniC Offline
            CPallini
            wrote on last edited by
            #11

            Pete O'Hanlon wrote:

            IQueryInterface

            Do you mean QueryInterface?

            Veni, vidi, vici.

            In testa che avete, signor di Ceprano?

            P 1 Reply Last reply
            0
            • L Lost User

              I never thought COM offered anything better than properly designed dlls, but I guess it got replaced with .NNet stuff. But yeah, I think it died.

              ============================== Nothing to say.

              CPalliniC Offline
              CPalliniC Offline
              CPallini
              wrote on last edited by
              #12

              Erudite_Eric wrote:

              I never thought COM offered anything better than properly designed dlls

              It actually did.

              Erudite_Eric wrote:

              but I guess it got replaced with .NNet stuf

              Nope.

              Erudite_Eric wrote:

              But yeah, I think it died.

              Nope.

              Veni, vidi, vici.

              In testa che avete, signor di Ceprano?

              L A 2 Replies Last reply
              0
              • CPalliniC CPallini

                Pete O'Hanlon wrote:

                IQueryInterface

                Do you mean QueryInterface?

                Veni, vidi, vici.

                P Offline
                P Offline
                Pete OHanlon
                wrote on last edited by
                #13

                I do indeed, and shows I shouldn't rush my answers when typing. I was going for IUnkown originally then threw in QueryInterface. This is the problem when posting from your phone.

                *pre-emptive celebratory nipple tassle jiggle* - Sean Ewington

                "Mind bleach! Send me mind bleach!" - Nagy Vilmos

                My blog | My articles | MoXAML PowerToys | Mole 2010 - debugging made easier - my favourite utility

                K 1 Reply Last reply
                0
                • P Pete OHanlon

                  I do indeed, and shows I shouldn't rush my answers when typing. I was going for IUnkown originally then threw in QueryInterface. This is the problem when posting from your phone.

                  *pre-emptive celebratory nipple tassle jiggle* - Sean Ewington

                  "Mind bleach! Send me mind bleach!" - Nagy Vilmos

                  My blog | My articles | MoXAML PowerToys | Mole 2010 - debugging made easier - my favourite utility

                  K Offline
                  K Offline
                  krumia
                  wrote on last edited by
                  #14

                  Is your phone an 'i' prefixed one? Nowadays they prefix everything with 'i'. See for yourself.[^]

                  1 Reply Last reply
                  0
                  • L Lost User

                    I never thought COM offered anything better than properly designed dlls, but I guess it got replaced with .NNet stuff. But yeah, I think it died.

                    ============================== Nothing to say.

                    D Offline
                    D Offline
                    Dalek Dave
                    wrote on last edited by
                    #15

                    What is .NNet?

                    --------------------------------- I will never again mention that I was the poster of the One Millionth Lounge Post, nor that it was complete drivel. Dalek Dave CCC Link[^] English League Tables - Live

                    CPalliniC 1 Reply Last reply
                    0
                    • D Dalek Dave

                      What is .NNet?

                      --------------------------------- I will never again mention that I was the poster of the One Millionth Lounge Post, nor that it was complete drivel. Dalek Dave CCC Link[^] English League Tables - Live

                      CPalliniC Offline
                      CPalliniC Offline
                      CPallini
                      wrote on last edited by
                      #16

                      A managed typo.

                      Veni, vidi, vici.

                      In testa che avete, signor di Ceprano?

                      D 1 Reply Last reply
                      0
                      • CPalliniC CPallini

                        A managed typo.

                        Veni, vidi, vici.

                        D Offline
                        D Offline
                        Dalek Dave
                        wrote on last edited by
                        #17

                        Manage this upvote I gave you!

                        --------------------------------- I will never again mention that I was the poster of the One Millionth Lounge Post, nor that it was complete drivel. Dalek Dave CCC Link[^] English League Tables - Live

                        CPalliniC 1 Reply Last reply
                        0
                        • D Dalek Dave

                          Manage this upvote I gave you!

                          --------------------------------- I will never again mention that I was the poster of the One Millionth Lounge Post, nor that it was complete drivel. Dalek Dave CCC Link[^] English League Tables - Live

                          CPalliniC Offline
                          CPalliniC Offline
                          CPallini
                          wrote on last edited by
                          #18

                          ...Collected! :-D

                          Veni, vidi, vici.

                          In testa che avete, signor di Ceprano?

                          1 Reply Last reply
                          0
                          • K krumia

                            Is COM an 'outdated' technology? If it is, what are the technologies that replace COM? And how? If it is not, why such an old technology is still there? (I understand the basic design of COM and I understand why it was needed back then.) I am hoping to see a discussion emerging about this, in the hope that I will be able to learn a lot. p.s.: I asked this in COM forum and was hinded[^] to post it here.

                            R Offline
                            R Offline
                            RugbyLeague
                            wrote on last edited by
                            #19

                            I seem to recall Don Box sitting on stage at Tech-Ed in Barcelona some years ago writing .Net code and saying something along the lines of "What the hell was I thinking for all those years"

                            1 Reply Last reply
                            0
                            • CPalliniC CPallini

                              Erudite_Eric wrote:

                              I never thought COM offered anything better than properly designed dlls

                              It actually did.

                              Erudite_Eric wrote:

                              but I guess it got replaced with .NNet stuf

                              Nope.

                              Erudite_Eric wrote:

                              But yeah, I think it died.

                              Nope.

                              Veni, vidi, vici.

                              L Offline
                              L Offline
                              Lost User
                              wrote on last edited by
                              #20

                              CPallini wrote:

                              It actually did.

                              Yeah, it stopped idiot programers making a mess of the system I suppose.

                              ============================== Nothing to say.

                              CPalliniC 1 Reply Last reply
                              0
                              • L Lost User

                                CPallini wrote:

                                It actually did.

                                Yeah, it stopped idiot programers making a mess of the system I suppose.

                                ============================== Nothing to say.

                                CPalliniC Offline
                                CPalliniC Offline
                                CPallini
                                wrote on last edited by
                                #21

                                Nope, it is all about binary components re-using (as the name suggests).

                                Veni, vidi, vici.

                                In testa che avete, signor di Ceprano?

                                L 1 Reply Last reply
                                0
                                • K krumia

                                  Is COM an 'outdated' technology? If it is, what are the technologies that replace COM? And how? If it is not, why such an old technology is still there? (I understand the basic design of COM and I understand why it was needed back then.) I am hoping to see a discussion emerging about this, in the hope that I will be able to learn a lot. p.s.: I asked this in COM forum and was hinded[^] to post it here.

                                  E Offline
                                  E Offline
                                  Eytukan
                                  wrote on last edited by
                                  #22

                                  COM is dead? But ask "where?". COM is dead in user applications. There used to be tons of classic Asp, VB6.0 & even VC 6++ solutions that made extensive use of COM, DCOM, ActiveX etc.In these places, for example COM is literally dead. If a clients requests for a solution for their business, the application developers would no more need to look out for COM. So much has evolved in the managed world. Microsoft took pain to carry all those complex COM on their shoulders. Giving you the option to develop in much simpler tools. For example, DCOM is replaced by remoting in Dotnet, WCF & so many new frameworks give you much cleaner interface for your distributed apps. If you look at COM generated marshalling code, it'd look like it's done by a drunk php coder ;P. But COM is still there in every other places. For example, UMDF (driver framework, uses COM). So the idea is this, if you really need COM, it's there.

                                  Starting to think people post kid pics in their profiles because that was the last time they were cute - Jeremy.

                                  L 1 Reply Last reply
                                  0
                                  • CPalliniC CPallini

                                    Nope, it is all about binary components re-using (as the name suggests).

                                    Veni, vidi, vici.

                                    L Offline
                                    L Offline
                                    Lost User
                                    wrote on last edited by
                                    #23

                                    CPallini wrote:

                                    Nope, it is all about binary components re-using (as the name suggests).

                                    I was always told it was a way to avoid DLL hell. Of course if people renamed funcs when they changed the parameters in dlls we wouldnt have had that problem. I have used COM, never found it any better that a dll, and the installation is a PITA.

                                    ============================== Nothing to say.

                                    CPalliniC 1 Reply Last reply
                                    0
                                    • L Lost User

                                      CPallini wrote:

                                      Nope, it is all about binary components re-using (as the name suggests).

                                      I was always told it was a way to avoid DLL hell. Of course if people renamed funcs when they changed the parameters in dlls we wouldnt have had that problem. I have used COM, never found it any better that a dll, and the installation is a PITA.

                                      ============================== Nothing to say.

                                      CPalliniC Offline
                                      CPalliniC Offline
                                      CPallini
                                      wrote on last edited by
                                      #24

                                      Erudite_Eric wrote:

                                      I was always told it was a way to avoid DLL hell.

                                      That's a really naive point.

                                      Veni, vidi, vici.

                                      In testa che avete, signor di Ceprano?

                                      1 Reply Last reply
                                      0
                                      • D Dalek Dave

                                        No.

                                        --------------------------------- I will never again mention that I was the poster of the One Millionth Lounge Post, nor that it was complete drivel. Dalek Dave CCC Link[^] English League Tables - Live

                                        E Offline
                                        E Offline
                                        Espen Harlinn
                                        wrote on last edited by
                                        #25

                                        Succinct ;)

                                        Espen Harlinn Senior Architect, Software - Goodtech Projects & Services My LinkedIn Profile

                                        1 Reply Last reply
                                        0
                                        • E Eytukan

                                          COM is dead? But ask "where?". COM is dead in user applications. There used to be tons of classic Asp, VB6.0 & even VC 6++ solutions that made extensive use of COM, DCOM, ActiveX etc.In these places, for example COM is literally dead. If a clients requests for a solution for their business, the application developers would no more need to look out for COM. So much has evolved in the managed world. Microsoft took pain to carry all those complex COM on their shoulders. Giving you the option to develop in much simpler tools. For example, DCOM is replaced by remoting in Dotnet, WCF & so many new frameworks give you much cleaner interface for your distributed apps. If you look at COM generated marshalling code, it'd look like it's done by a drunk php coder ;P. But COM is still there in every other places. For example, UMDF (driver framework, uses COM). So the idea is this, if you really need COM, it's there.

                                          Starting to think people post kid pics in their profiles because that was the last time they were cute - Jeremy.

                                          L Offline
                                          L Offline
                                          Lost User
                                          wrote on last edited by
                                          #26

                                          :thumbsup: Well said :)

                                          Computers have been intelligent for a long time now. It just so happens that the program writers are about as effective as a room full of monkeys trying to crank out a copy of Hamlet.

                                          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