I have used a program called bitpim, it works for a lot of CDMA phones. Verizon and Sprint are the two largest CDMA phone companies in the US.
I am not sure if there is a program like that for GSM phones (T-Mobile, Cingular, and a few others whose names escape me). I would think that there would be a program like it but I am unsure. As a worst case scenario, since most of the data is saved on the sim card anyway, all you would need is to buy a smart card reader, and the holder for the sim card. Again, I do not know if that is the case, nor how much it would cost.
As for emailing the photos to your email account from your phone, that can get costly if you do not have an internet plan on your phone. For example my phone takes pictures at 1286 x 966 (I looked at on photo that I had emailed to my self from my phone) at is was 186 KB. Sprint charges (or used to) $.02 per KB. 186 * .02 = 3.72 per picture. Imagine if I had 10 pictures. that would be over $32