AVR Classic is ASNA’s version of AVR that runs on the old COM model. AVR Classic debuted as a GA product in 1994 and there are still many ASNA customers running very important AVR Classic applications today. And if you are one of those customers, we tip our hats to you and thank you very much!

The Windows platform has changed dramatically since 1994–especially so with the advent of Windows 7 in 2009. It didn’t take long for us to start noticing issues with AVR Classic 4.x applications on Windows 7. By the time Windows 8 came out in 2012, the issues had compounded. AVR Classic was originally compiled with a COM-based C++ compiler. The code created with this old compiler didn’t work with these newer versions of Windows. To help persist AVR Classic applications on these newer versions of Windows, six years ago we ported AVR Classic to the .NET-based C++ compiler and introduced AVR Classic 5.0. Using the new compiler let us produce a version of Classic that did run well on Windows 7 and 8 and later Windows 10.

The death of Windows XP

Many, in fact most, AVR Classic customers avoided the need for AVR 5.0 simply by not upgrading their Windows XP desktops to Windows 7 or 8. These customers stuck with Windows XP and their AVR Classic 4.x apps ran well there. In 2014, after many warnings and advance notices, Microsoft finally pulled the plug on Windows XP. This meant that Microsoft would no longer provide security updates for Windows XP and, while XP did still work, it rapidly became a huge target for malware and viruses. Without critical updates, ASNA had to stop using Windows XP in our network–this meant that we’d no longer be able to test AVR 4.x on Windows XP.

AVR 4.0 has been retired now for several years, which means it doesn’t receive any new program updates or fixes. If you encounter a bug in AVR 4.0 today, you need to upgrade to AVR 5.0 to get the fix (more on this in a moment). AVR 4.1 isn’t yet retired, but it’s on the cusp. AVR 4.1 has limited support for Windows 7; its deployment is supported on 32-bit Windows 7 only. AVR 4.1 isn’t supported for development on Windows 7/8/10 (there are problems with AVR Classic’s IDE we couldn’t resolve for Windows 7/8/10). Technically speaking, to be developing today in AVR 4.1 you need to be using Windows XP–hopefully a version not connected to a network!

Coming soon: AVR 5.1

Since we created AVR 5.0, Microsoft has issued several enhancements an updates to its C++ compiler. We are working now on AVR 5.1 which will be compiled with the newer C++ compiler. AVR 5.1 ships 1Q2019 and AVR 4.1 will be formally retired on June 30, 2019. That doesn’t mean that it will instantly stop working, but it does mean that any bugs encountered in 4.1 won’t be fixed in 4.1, you’ll need to upgrade to AVR 5.x to get the fix.

TL;DR? Here is the short story:

Recommendations

Summary

We know that planning for AVR upgrades isn’t a fun thing to put on your to-do list. ASNA has made a substantial investment in AVR 5.0 and this version buys time for your AVR Classic applications. But it only buys you time if you upgrade to it. Old AVR Classic code would probably run forever on the environments for which it was intended. But those environments (primarily Windows XP) are no longer in service. To ensure your classic apps work appropriately on newer versions of Windows an AVR 5.0 upgrade is a must.

This article covered AVR Classic upgrade strategies. See this article for details on extending AVR Classic with AVR for .NET.