Help Me Understand VMs

Please help me understand if what I want to do is possible, or if I simply don't understand how VMs work.

I have a piece of software that seems to be tied to the laptop it is on. It also goes with a piece of external hardware, though that doesn't seem to bother it. I own both the software and hardware.

This software has a "work offline" option, that is disabled at times, eg when the software has been used to change something, you have 10 days to "work offline" until you have to sign in again, in order to update the main server that these changes have happened. At all times, when starting the software, my user id is already populated, to work offline I simply don't enter my password, and uncheck "sign in to central server".

I created a VM of this laptop using disk2vhd. I created a VM using this vhd on my desktop using hyper v. Upon running the software, the user id space is blank, and I don't have the option of "working offline".

Have I done something wrong, or is this just not possible to do with a VM?

Comments

  • +1

    Without knowing what the hardware and software is, presumably security measures.

    If it's in a VM it can't see what hardware is attached or what hardware it is running on. It might be looking for certain things to confirm it's the same laptop, those would be gone as hyper v does network virtualisation. Can't remember off the top of my head, but I imagine the NIC ID or MAC address change in hyper v. It would be basic security to protect from what you are doing. Imagine if someone cloned your drive and chucked it in another computer without needing that hardware anymore, that would be bad.

    I guess the question is, why do you want to run it in a VM?

    • Ok thanks, that makes sense, I assumed that a VM could emulate the hardware.

      I guess the question is, why do you want to run it in a VM?

      It's on a POS old toughbook, with a terrible screen. I want it on my laptop instead.

      • Honestly it sounds like using VMs to try and get around this is a complicated solution for a pretty simple problem. I think it'd be easier to instead just remote desktop into that old laptop with your new one.

        It would mean that the laptop needs to be on and reachable at all times when you need to use it, but you can use a good screen to use it. Maybe worth a try?

        I did this at my old workplace where they had an old PC with the license for a piece of POS software (the software wasn't compatible on the new device). So I just gave them a shortcut to remote desktop into that old one.

  • When you make a virtual machine, it likely has a different hardware ID, so it'll probably make you have to sign in again.

    Really depends how the copy protection on it works.

  • +3

    You should contact to vendor and ask if you can transfer the license. Surely they must have some facility to do this, otherwise what happens if the PC was to die - your software becomes worthless. Some vendors go stupidly overboard with copyright protection.

    • +2

      Some vendors go stupidly overboard with copyright protection.

      I made the mistake of actually buying a Windows licence instead of just running it with the 'Please Activate' dealie in the bottom-right like all the cool kids do. And then I made the second mistake of binding it to an ephemeral VM. I then deleted the VM, without unlinking the product key first, and now I've got a worthless copy of Windows that won't work on anything ever again because any tiny change in the VM parameters means it thinks it's a different computer and that I'm violating the licence, and I can never 1-1 recreate the initial VM because I didn't record information like the MAC address or how much RAM I'd requisitioned for it.

      DRM and subscription-based software is the devil's work.

      You should contact to vendor and ask if you can transfer the license.

      After waiting on hold for 30 minutes they eventually just hung up on me (??) and then marked my open support ticket as 'resolved'.

      • +2

        Cool kids just buy activation code from ebay Germany for 4-ish EUR.

      • +1

        ego-tistical support monkeys.

  • Out of interest, what kind of software/hardware? I was going to guess either ECU trash or GIS trash, but have just started having flashbacks of watching friends go insane with all sorts of equipment not working with computer upgrades.

  • Last time I saw a hardware dongle for software licencing was 3D Studio Max 6 in high school. Via a parallel port.

    If you specify the software we might be able to help more.

  • Still plenty of USB dongles are in use, some people think this is some kind of protection :)
    If this is the case you can present USB port directly to VM.

  • +4

    You're trying to use a VM to circumvent a floating license mechanism.

    Generally wont work because the license mechanism uses a uniqueID that is generated in hardware to identify itself to the license server. When the software goes to request a license it will request a license for XYZ user on machine ABC with uniqueID DEF. The license server then offers a timelimited key for XYZ @ ABC ; DEF. All 3 must be the same for the work-offline key to continue to work.

    Youll find that spoofing the uniqueID is very challenging.

    Also note that most license mechanisms also check for clock tampering - when you try to change the clock to extend the validity of the temp license. So, trying to take a VM snapshot of when the license was valid, and restoring to that time again and again will eventually fail. (Most often the failure occurs when you try to check in your code/work back into the shared server, which will recognise that the time doesnt match)

  • Youll find that spoofing the uniqueID is very challenging.

    I've had to do this as a bodge while hardware was replaced. The software in question didn't look for anything that couldn't be faked in VMware, so if OP's lucky they might get away with setting up a VM as similarly as possible to their current hardware. But otherwise if Ghidra doesn't already mean something to them they've got some challenges ahead.

  • +2

    Thanks for the responses everyone. The software/hardware is a proprietary engine manufacturer interface/ecu programmer.

    I have solved the problem by resigning from my job.

    • Oh wow that's a bit excessive. Good luck in your future endeavours though!

      • The laptop issue is just a symptom of more problems. I don't think a laptop that actually works is too much to ask for. Thankyou though 👍

    • -1

      You need to learn how to help yourself mate not quit after encountering the first problem come on man. Learn to help yourself.

Login or Join to leave a comment