when something that previously worked stops working
There have been several recent problem reports here of the form "DXLab application function X stopped working Y weeks/months ago".
If you try a DXLab application function that you've never before utilized and it doesn't work as expected, that could well be the
result of a defect in the application that no one else has yet encountered or reported.
If you update a DXLab application to a new version, and find that a function that worked in the previous version no longer works as
expected, that's almost certainly the result of a defect in the new version of the application.
However, if a DXLab application function that was previously working suddenly stops working with no change to that application and
no change to any other DXLab application, the root cause is likely environmental -- meaning that a change to some other aspect of
your broader computing environment is responsible. Typical culprits include
- the replacement of a functioning device driver with a non-functioning device driver as the result of installing new hardware, or
of accepting a Windows Update
- the replacement of a "shared component" with a non-functioning version of that component as the result of installing another
As explained in "Managing Hardware and Software Upgrades" in
"To minimize memory consumption, Windows encourages applications to use a common set of libraries. Some of these libraries are
provided by Microsoft (e.g. MSCOMM32.DLL), whereas as others a provided by application developers (e.g. PSKCORE.DLL). Thus you may
have multiple applications installed on your PC all using the same instance of MSCOMM32.DLL to send and receive characters via a
serial port, and you may have multiple applications installed on your PC that all use the same instance of PSKCORE.DLL to modulate
and demodulate PSK. Occasionally, these libraries are updated by their authors. A Windows Update from Microsoft, for example, might
include an improved version of MSCOMM32.DLL. Installing a new PSK application, or upgrading an already-installed PSK application may
install an improved version of PSKCORE.DLL on your system. New versions of shared libraries are supposed to be backward compatible
with their predecessors, but occasionally this isn't the case. When this happens, installing a new application or upgrading an
installed application can cause other installed applications to stop working or perform poorly."
This article goes on to make specific recommendations for protecting your computing environment from these problems. While these
practices require extra work on your part, they can prevent a lot of downstream aggravation when a previously working DXLab
application stops working -- and at the worst possible time.
The motivation for this post is not to lambast anyone who has reported "likely environmental" problems here. It makes me
uncomfortable to respond to a report of adverse behavior in a DXLab application by pointing the finger at some other component or
application; I've been on the wrong end of that maneuver more times than I care to remember. Please continue to report any adverse
behavior that you encounter -- whether you suspect that it might be environmental or not -- but understand that actively maintaining
the integrity of your computing environment is essential to keeping DXLab functional whenever you need it.