Hey there, Hassy500.
As I can't find my old email login or my old account, I had to remake an account here to answer your question. I realize it's been a few months and you probably solved your problem, but perhaps those googling the issue of bootcamp not mounting on Vista or Windows 7 will read this and finally figure out why they have encountered this issue. As for Windows XP, the reason is probably similar. I'll give my solution at the end and perhaps you can apply it to XP as well.
In the last half a year I've had my macbook pro, I would occasionally lose the ability to view the drive from OSX (on the desktop, labeled BOOTCAMP). I would also lose the ability to mount the partition it's on through the Disk Utility (which would be labeled FAT32 and not NTFS). VMWare Fusion and Parallels would not be able to mount the partition and may not even see it when importing the partition into a VM container, so I can't use my bootcamp in OSX. Strangely, it still boots fine as a dual boot.
So, I finally figured out the reason that we are unable to see the partition and unable to mount from OSX, but able to boot from the EFI OS selection screen when we boot up.
Basically, the issue is that Windows is changing the partitioned structure that the Bootcamp assistant creates for us when we make our partitions. If you'll notice on Windows 7 when you install, there is a FAT32 partition already made by the assistant, along with two other partitions also made by the assistant (one is EFI, the other is a blank partition or it can be the GPT protective partition as well). On 7 and Vista, we can't use FAT32 and it won't let us install without formatting NTFS. This is a problem because...
You'll notice that the GPT assigns this whole block as Basic Data. Well, when we install on Vista/7, we will end up deleting the FAT32 partition. We will then remake it as a NTFS partition. This already screws up the sector counts in both the MBR and the GPT. Also, Windows makes a small 100-200mb partition for recovery without the install DVD (it's also used for bitlocker), which will screw up the GPT/MBR even more.
Well, we have more than one partition. So, the MBR will divide it into two. One of those has the boot code for the second one, which holds all your data and your OS. But your GPT sees those two as one!
Some people have suggested that the reason is because the GPT/GUID is out of sync with the MBR, which is partially true. Using rEFIt and syncing would make them sync, but it would change the MBR to FAT32 (CHS), rendering Windows potentially unbootable. The reason is because Vista/7 add that extra partition, which does not match the GPT. Since there's no easy way to sync the GPT with the MBR (but we can sync the MBR to the GPT), this is a huge headache.
So, what's the solution? Well, it's fairly simple. Have Apple make the bootcamp assistant format as NTFS and not fat32. Also, have Microsoft add the option to not add that extra partition (and take the risk). This way, the two partitions Vista/7 make will only be one, and it will match the GPT.
Okay. So that's not that simple. What about a workaround? Unfortunately, there aren't that many of them. I just reinstalled and luckily I worked around the issue and everything works well. What did I do? Well, you can try to just delete the partition they made and install without clicking "New", installing on the unformatted space. I don't believe it asked me to create that new partition necessary for blah blah blah. The point is to try to cancel that. We want Windows to install without it. That way, our MBR will have only one partition with the bootcode on it instead of two and we'll be able to keep them in sync.
How do you know it works? Right after you install, boot into OSX. If you see BOOTCAMP right on your desktop, you did it! Also, when booting and holding ALT, you should see Windows on the right side with a harddrive icon.
As for Windows XP, I don't believe that it creates any extra partitions. Did you install as FAT32? If you didn't and installed as NTFS, I'd check your GPT table. Your issue is the same as ours in that the GPT is not in sync with the MBR. However, since you can only sync the MBR to the GPT and not vice versa, you will probably need a reinstall. I have heard ways of manually wiping the GPT and manually syncing the sectors while creating your own table, but I can't find the instructions anymore.
Good luck to everyone!