In the midst of all this publicity writing ATL-based applications, you will
find little in the way of documentation on porting your legacy Win32 applications to
ATL. Hopefully, these steps will ease that migration path.
Include AtlBase.h file in StdAfx.h after AfxWin.h. This is to take advantage to
declare a variable for CComModule. Because AtlWin.h file needs, _Module as variable
We have to keep extern because we are originally declaring variable in
Application main file.
extern CComModule _Module;
Then include the remaining files which helps for an ATL Application. In the insert Object of ATL uses ATLHost.h which needs to compile atlcom.h as before.
In the StdAfx.cpp, Include AtlImpl.cpp file.
In the main Application file, add the following
//originally declaring the CComModule variable
Then, Add the following two lines, which are required to activate ATL
Object Wizard, when you choose Insert ATLObject from Insert Menu.
Initialize the CComModule variable with ObjectMap and with the current
instance in the WinMain function
Add the <ProjectName>.idl file into the project and add the library related code:
If you want to insert a dialog and want to show. Follow the above steps and
declare the variable of ur dialog class and call DoModal with that variable
(don't forget to include dlg header file).
This code has been tested with and works fine with the Windows CE environment.
References and Acknowledgments
ATL Internals - Rector, Sells (My thanks to the Authors!)
On-demand EventEvent Date: March 21, 2017
With the rise in ransomware attacks, bank heists that reached new levels of sophistication, and extortion plots that were beyond anything we could have imagined, 2016 certainly was an eventful year for cybersecurity. Going into 2017, no business can afford to be uninformed about cybersecurity or unprepared for an attack.
Watch this informative webinar, presented by Andrey Pozhogin, Senior B2B Product Marketing Manager at Kaspersky Lab, as he examines predictions for …
Microsoft® Office 365 is a top choice for enterprises that want a cloud–based suite of productivity collaboration applications. With Office 365, you get access to Microsoft™ Office solutions practically anytime, anywhere, on virtually any device. It's a great option for current Microsoft users who can now build on their experience with Microsoft™ solutions while enjoying the flexibility of a cloud-based delivery. But even organizations with no previous investment in Microsoft will find that …