Well, the first thing to do is update your version of TurboActivate. There are always a number of bug fixes (both listed, and smaller ones that we don't list).
Next, you need to handle Terminal Services / Remote Desktop Services / Citrix / VMWare Horizon / and the billion other clones of the same software as a particular type of environment. Namely, you need to treat them like they are: not single machines. But rather they're operating systems on top of multiple machines. And where multiple users log into them to use your app from remote machines.
This is a long way of saying that TurboActivate is the wrong job for this problem. Use TurboFloat. That's what it was designed to handle: VMs, Terminal Services type environments, and cases where organizations need a "pool" of licenses to work from.
TurboActivate: is node-locked (a.k.a. hardware-locked) licensing. It locks your software to a specific machine. Copying the license files to another machine won't work (nor should it).
TurboFloat: is floating licensing. The TurboFloat Server runs on a real piece of hardware and is the "anchor" for the licensing. Your app can run on any machine, any session, or an VM, and request leases from the TurboFloat Server.
Does that make sense?