the VM is a worst case scenario cause it's like sort of booting up your machine (jn software) into a special VM simulating Windows 7.. then you'd have to install everything you need in that VM or make sure it is accessible by the default software..
Since my host OS is Linux, I run TOPO! (and Garmin software) in emulators or virtual machines quite well. Since the underlying hardware is the same (i686) most of it runs directly on the hardware*. I use two kinds of emulators: an MS-windows environment emulator (Wine,
http://www.winehq.com/) and a machine emulator (VirtualBox,
http://www.virtualbox.org/).
* If you emulate a different kind of hardware from the host it is likely to be slow, but this doesn't generally seem to be a problem if you emulate the same hardware as the host hardware.
Wine is more convenient and most programs and features run perfectly well on it. (It is a work-in-progress--it currently covers most but not all of the features of a number of MS OSes.) VirtualBox emulates the hardware and requires one to load the OS (just like starting with bare hardware)--therefore it should emulate all OS features for its range of emulated hardware. It is a little less convenient to use than Wine, but it covers the features missing from Wine.
Both have several
significant advantages over installing and running on the host:
1) Guest OSes can be different from the host OS so you can maintain older OSes even over an update of the host OS.
2) Wine environments and virtual machines can be transferred between host machines.
3) You can clone (copy) and delete virtual machines/environments at will so you can clone a machine/environment and install new software without risking damage to the original. If it doesn't work out, you can delete the new machine/environment.
4) Some people run risky software (eg web browsers, email, and other internet applications) in an emulator to protect the host from compromise. (One can make a clean version and run the application in a clone. If the clone is compromised, then it can be deleted and recopied from the clean version.)
IMO, an emulated machine may be a good long-term solution to the OP's problem.
Doug