Ray,
You don't need wwHTTP necessarily - you can also use XmlHttp or other HTTP client. I just used this as an example because it's the easiest way to write it out - I'm lazy <s>...
+++ Rick ---
>Looks like a pretty good excuse to buy wwHttp. <g>. Seriously, good information, Rick; thanks for the heads-up.
>
>>As an alternative you can also use query strings with a plain HTTP client to retrieve the data.
>>
>>
http://maps.google.com/maps?f=q&source=s_q&hl=en&geocode=&q=300+N.+15th+Street,+Hood+River+OR+97031&sll=37.0625,-95.677068&sspn=50.557552,81.298828&ie=UTF8&z=16&iwloc=A>>
>>Using any HTTP client (XmlHttp, wwHttp, WinInet) should allow you to retrieve content the same way and parse out the details without the overhead of Web Browser control:
>>
>>
>>DO wwHttp
>>loHttp = CREATEOBJECT("wwHTTP")
>>lcHtml = loHttp.HttpGet("http://maps.google.com/maps?f=q&source=s_q&hl=en&geocode=&q=10+SS.+15th+Street,+Hood+River+OR+97031&sll=37.0625,-95.677068&sspn=50.557552,81.298828&ie=UTF8&z=16&iwloc=A")
>>ShowText(lcHtml)
>>RETURN
>>
>>
>>This data is a bit more terse - mostly JSON but you can probably find the right kind of text in there for failure scenarios as well. I didn't look closely on figuring out whether it worked or not <s>...
>>
>>FWIW, your code that checks for Did you mean: may be fragile - it'll only work if the address can resolve to something else.
>>
>>I think you may also be able to utilitize the Google Map API for address lookups. They have a GeoTagging API that you can pass an address to - if that fails to produce a geo code I presume you could assume that the address doesn't exist?
>>
>>Lots of options.
>>
>>+++ Rick ---
>>
>>>>Has anyone tried using Google Maps for address verification? That is, send the address to Google and _retrieve_ a standardized format address or a "did you mean" address?
>>>
>>>One of the solutions:
>>>
>>>
>>>=YGoogleMapSearch("11072 Greinerrr Rd., Phila")
>>>
>>>Procedure YGoogleMapSearch
>>>LPARAMETERS lcAddress
>>>#DEFINE READYSTATE_COMPLETE 4
>>>clear
>>>if not (type("oIE")="O" and not isnull(oIE))
>>> oIE = CreateObject("InternetExplorer.Application")
>>>endif
>>>
>>>oie.visible=.t.
>>>lcURL="http://maps.google.com/"
>>>
>>>oIE.Navigate(lcURL)
>>>
>>>do while oIE.Readystate <> READYSTATE_COMPLETE
>>> wait wind time 1.0 ""
>>>enddo
>>>
>>>oShell = CreateObject("WScript.Shell")
>>>lnstart=second()
>>>do while not oShell.AppActivate(OIE.DOCUMENT.title) and second()-lnstart <=10
>>> wait wind time 1.0 "Entering ..."
>>>ENDDO
>>>
>>>if oShell.AppActivate(OIE.DOCUMENT.title)
>>> oShell.SendKeys(lcAddress+"{ENTER}")
>>> WAIT WINDOW TIMEOUT 1.0 ""
>>>
>>> DO case
>>> CASE "Did you mean:" $OIE.DOCUMENT.body.innerText
>>> lcresult= SUBSTR(OIE.DOCUMENT.body.innerText, AT("Did you mean:",OIE.DOCUMENT.body.innerText))
>>> ?LEFT(lcresult,AT(CHR(13),lcresult))
>>> ?substr(lcresult,AT(CHR(13),lcresult)+2,AT(CHR(13),lcresult,2) -AT(CHR(13),lcresult)-1)
>>> ENDCASE
>>>endif
>>>
>>>RETURN
>>>
>>>