Fijate que vista y xp son sistemas operativos muy diferentes... Primero que nada el problema radica en el controlador del dispositivo (aquel archivo *.inf), que es el que enlaza tu hardware con el sistema operativo...
Para darte una solución práctica debes postear indicando qué tipo de comunicación usb manejas:
cdc--->emula un puerto serial virtual
bulk--->transferencia masiva de datos, al igual que una memoria usb
hid--->dispositivo de interfaz humana, al igual que un teclado, mouse, etc...
Además, bajo qué compilador y lenguaje hiciste el dispositivo, para conocer el VID y PID...