ActiveX or what?

Are ActiveX or ATL controls valid for new modern projects based on Visual C++ 2022 or what other types of controls should be used?
I think ActiveX was pretty much COM-Objects embedded in a web-browser. This was Microsoft's competing product to Java Applets, and it was only ever supported in Internet Explorer, and only on Microsoft Windows. Not even Microsoft Edge supports ActiveX, so its a "dead" technology. The same goes for Java Applets.

So, if you want to develop web applications, then it's all HTML5 + JavaScript nowadays!

As far as "traditional" Desktop applications are concerned: If you want to develop for Windows-only, then probably Microsoft.NET with the Windows Presentation Foundation (WPF) is the "modern" way to go. If you want your application to be cross-platform, or if Microsoft.NET is not your thing, then definitely look at the available cross-platform GUI toolkits, such as Qt, WxWidgets or GTK+. I have much love for Qt framework ❤️

https://wiki.qt.io/Qt_for_Beginners
https://doc.qt.io/qt-6/widgets-tutorial.html
Last edited on
ActiveX is deprecated, ATL is still usable as long as you manually install the library component.

https://en.wikipedia.org/wiki/ActiveX

WTL (Windows Template Library) is still kinda being developed as well as a 3rd party library.

https://en.wikipedia.org/wiki/Windows_Template_Library
Thank you very much Kigar64551 and George P for your advise. I asked this question because I already knew Chrome and Edge had deprecated the use of ActiveX controls.
Then based on your advice I'll use WPF to turn an old monolithic application into a new modular Windows-only project.
Very thankful.
You do know that Visual Studio, NOT Visual Studio Code, has components for doing cross-platform coding using C++, right? Android and Linux support components along with a Google Android emulator is available for a manual install.

There is no need to do Windows-only.

Whether you can craft an app that can run on multiple platforms, I can't say, honestly. I don't do that type of thang.

Installing those cross-platform components, of course, requires manually installing the C++ workload (and possibly other Win C++ components).

To modify your VS install simply rerun the VS installer and select the "Modify" button. Select the components tab and have a go at what's available.
While bumping around in the VS installer in modify mode I noticed a workload for Mobile development with C++: iOS, Android or Windows.

Maybe this workload is more useful than the Universal Windows Platform workload?

Again, I can't say how useful the workloads would be for your needs, artful1st, since I don't use those VS features.
Registered users can post here. Sign in or register to post.