I had a couple of intermittent problems while supporting a client that I couldn't find any information on, anywhere.
The problem manifested itself when they plugged in their mobile phone to their computer. In XP, using ActiveSync, or using Windows Mobile Device center in Vista, and Windows 7. Before they plugged in their mobile, they could use the internet browser on their computer, through a proxy auto-configured with WPAD.DAT, and after, they couldn't. The web seemed to just "stop" resulting in a "cannot connect" error at the web proxy server, every time.
I incorrectly focused on ActiveSync at first - since that was the point of contact that caused the failure, and found that although it installed a network driver to communicate with the phone - it didn't seem to matter what the network settings were.
Finally, while working with the WPAD.DAT (auto-configuration script) I found that the actual call to myIpAddress() was returning an auto-configured address, and not a DHCP address on the connected subnet. Since I was using shExpMatch(myIpAddress(), "192.168.1.*") to test the validity of the local network - the WPAD was incorrectly configured to go DIRECT through the firewall, which wasn't allowed.
Instead, I added this to WPAD.DAT:
if(shExpMatch(myIpAddress(), "169.254.*"))
return "PROXY 192.168.1.1:8080";
So, careful using myIpAddress() in WPAD.DAT, unless you account for the Windows Mobile IP Address to be returned in myIpAddress().