Patent ID: 8881140

Claim:
A computer-implemented method for virtualizing software associated with external computer hardware devices, at least a portion of the method being performed by a computing device comprising at least one processor, the method comprising: detecting that a user is logged onto a first client system and that an external hardware device is connected to an external communication port of the first client system; while the user is detected as being logged onto the first client system and the external hardware device is connected to the first client system, obtaining from the first client system a virtualized device profile associated with the external hardware device and the user, wherein the virtualized device profile comprises user-customized settings associated with the external hardware device and the user; detecting that the user is logged onto a second client system; detecting user connection of the external hardware device to an external communication port of the second client system; in response to detecting the connection of the external hardware device to the second client system: downloading the virtualized device profile associated with the external hardware device and the user to the second client system; installing the virtualized device profile as one or more virtualization layers on the second client system; activating the one or more virtualization layers to enable the virtualized device profile to be used to interact with the external hardware device.