I use Photo Mechanic which has a facility to add GPS data - typically via a window linked to Google Earth so you can click on where you thought you were and add lat long that way. I have also used RoboGeo to add locations from GPS tracklogs. Both worked very well.
ESRI's ArcGIS has a free add on which I have just downloaded but have not had time to play with. I think it syncs images with tracklogs based on a comparison of GPS and Camera clocks. This is probably the most expensive solution.