Where did my COM port go?

I am having no end of problems getting my computer to talk to my arduinos. It starts off working well enough but quite often gives me messages when I go to upload saying that COM port (X) is being used by something else. This usually goes away if you just keep trying to upload. I get the same problem when I try to open the serial monitor as well. This is annoying and time wasting but at least I can work around it.

At some point in my session though I lose the COM port all together. I get warning dialog COM Port(x) not found. When I look on the tools menu there is only COM1 available, no other choices even greyed out. Now if I look on device manager the UNO is still listed as COM4 or whatever, if you unplug it, it goes away, plug it in and it reapears. Go to properties and it says it is working normally. Re-open Arduino IDE and still not listed. Now I havent changed anything that I know of, it just works (Poorly) one minute and is gone the next. The only way to get it working again is to leave it all alone for a week or two then magically we are back to square one again. If I change to the other UNO board which has a different Com Port number assigned to it, it will come up as normal and will work as normal, but eventually this one will dissapear too and then I am out of options. This is starting to drive me bonkers as it is usually just about when I am starting to get near to getting my sketch working properly.

I have Windows 7 64bit and Arduino 1.0 with 2 UNO boards with 328p’s on them. Does anyone have any suggestions as to what might be causing this?

I have similar if not identical issues if I disconnect the Arduino when the serial monitor is connected. I do not think that the software likes to have the com port yanked out from under it. If I disconnect the Arduino, I fist close the serial monitor. I then do not seem to have the issue at all or possibly just at a much lower rate.