If transfering files has never completed. one can suppose that it did indeed start in the first place. This being so means the connection itself is indeed correct. Chech the integrity of the cable itself, is it a good fit, is it slack, is it mucky, can you try another cross over cable? if all that seems ok or makes no difference go to the XP machine and check it's connection plug as if the same is happening on 2 XP machines, maybe the Vista machine is ok and the fault is with the common link, one of the XP machines.
Hope this helps