49 ms·
> Windows userland is being rewritten in COM since Vista I am not sure "rewritten" is the proper word as this implies replacement, but in reality nothing gets
by Crinus 7y ago
> Windows userland is being rewritten in COM since Vista
I am not sure "rewritten" is the proper word as this implies replacement, but in reality nothing gets replaced (at least as far as the user/developer facing stuff go) and the new stuff are added on top (or alongside, depends) the existing stuff.
Also i'm not sure if the whole "exposing new stuff in COM" thing is a good idea overall. The classic Win32 GUI APIs might not provide much functionality on their own, but the plain C APIs make them both understandable by pretty much everyone and fairly easy to use by pretty much everywhere. I haven't seen much COM use on the wild since the turn of the millenium (outside of the new UWP stuff in Windows Store but really the UWP/Windows Store seems to be a different world on its own that got itself attached to the regular desktop Windows world... and even then i do not really know of anyone who uses anything from there). The most common comment i read about COM is using it to control Office but that's about it (technically DirectX APIs are also COM but in practice you do not really use much of it).
As an example, Windows had a COM API for creating ribbon-like interfaces ever since Windows 7/Vista SP2 yet pretty much every framework out there (including MFC) reimplements their own ribbon using Win32 primitives instead of using the native one.
- snagglegaggle 7y agoCOM is kind of like GObject and something like it has a place. COM usage is fairly limited because using it easily requires compiler support, which only very recently was included in the Community editions of Visual Studio. You can also access COM via language bindings; most .NET code you write is COM-enabled, for example, and is accessed from non-CLR code as COM. MinGW has stuff that lets you use and generate COM classes, but it's not great. Improving it would help FOSS dev on Windows. There are other languages that use COM also. The lead designer of Delphi was poached by Microsoft to design .NET.
- pjmlp 7y agoAnders went to Microsoft to design J++. .NET only came up a couple of years later and as follow up on Sun's lawsuit. Ext-VOS design document clearly refers to Java and J++. Secondly, I have been developing for Windows since Windows 3.0 and wonder which compiler support features do you mean. Even the old express editions had the required Windows SDK tooling for COM.
- snagglegaggle 7y agoNo, guy I'm thinking of was hired on about the time .NET was being started. This was after Borland. The tools may have just been for COM object generation. I found the option to generate COM code in VS2017 one day, followed up on it, and found it was the first time they had been released. The bare headers were always there but the code generators were not, at least in most current releases.
- pjmlp 7y agoIt was certainly Anders, no idea about whom you are talking about. https://www.welcometothejungle.co/en/articles/anders-hejlsberg-microsoft-career https://www.welcometothejungle.co/en/articles/anders-hejlsbe... Again, I never had to enable anything on VS to generate COM components.