Visual Basic 6.0
Visual Basic 6.0
MaxMind IPv4 Geolocation Lookup
See more Geolocation Examples
Demonstrates how to lookup Geolocation data for an IPv4 address using the MaxMind GeoIP2 Precision Web Service.Chilkat Visual Basic 6.0 Downloads
Dim success As Long
success = 0
' This example requires the Chilkat API to have been previously unlocked.
' See Global Unlock Sample for sample code.
Dim http As New ChilkatHttp
http.Login = "MAXMIND_ACCOUNT_ID"
http.Password = "MAXMIND_LICENSE_KEY"
http.Accept = "application/json"
' Lookup an IPv4 address: 149.250.207.170 (this was a randomly chosen address)
Dim jsonStr As String
jsonStr = http.QuickGetStr("https://geoip.maxmind.com/geoip/v2.1/country/149.250.207.170")
If (http.LastMethodSuccess = 0) Then
Debug.Print http.LastErrorText
Exit Sub
End If
Dim json As New ChilkatJsonObject
json.EmitCompact = 0
success = json.Load(jsonStr)
Debug.Print json.Emit()
' Sample output:
' Use this online tool to generate parsing code from sample JSON:
' Generate Parsing Code from JSON
' {
' "continent": {
' "code": "EU",
' "geoname_id": 6255148,
' "names": {
' "ja": "?????",
' "pt-BR": "Europa",
' "ru": "??????",
' "zh-CN": "??",
' "de": "Europa",
' "en": "Europe",
' "es": "Europa",
' "fr": "Europe"
' }
' },
' "country": {
' "is_in_european_union": true,
' "iso_code": "DE",
' "geoname_id": 2921044,
' "names": {
' "fr": "Allemagne",
' "ja": "????????",
' "pt-BR": "Alemanha",
' "ru": "????????",
' "zh-CN": "??",
' "de": "Deutschland",
' "en": "Germany",
' "es": "Alemania"
' }
' },
' "maxmind": {
' "queries_remaining": 49999
' },
' "registered_country": {
' "is_in_european_union": true,
' "iso_code": "DE",
' "geoname_id": 2921044,
' "names": {
' "es": "Alemania",
' "fr": "Allemagne",
' "ja": "????????",
' "pt-BR": "Alemanha",
' "ru": "????????",
' "zh-CN": "??",
' "de": "Deutschland",
' "en": "Germany"
' }
' },
' "traits": {
' "ip_address": "149.250.207.170"
' }
' }
'
'
Dim continentCode As String
Dim continentGeoname_id As Long
Dim continentNamesJa As String
Dim continentNamesPt_BR As String
Dim continentNamesRu As String
Dim continentNamesZh_CN As String
Dim continentNamesDe As String
Dim continentNamesEn As String
Dim continentNamesEs As String
Dim continentNamesFr As String
Dim countryIs_in_european_union As Long
Dim countryIso_code As String
Dim countryGeoname_id As Long
Dim countryNamesFr As String
Dim countryNamesJa As String
Dim countryNamesPt_BR As String
Dim countryNamesRu As String
Dim countryNamesZh_CN As String
Dim countryNamesDe As String
Dim countryNamesEn As String
Dim countryNamesEs As String
Dim maxmindQueries_remaining As Long
Dim registered_countryIs_in_european_union As Long
Dim registered_countryIso_code As String
Dim registered_countryGeoname_id As Long
Dim registered_countryNamesEs As String
Dim registered_countryNamesFr As String
Dim registered_countryNamesJa As String
Dim registered_countryNamesPt_BR As String
Dim registered_countryNamesRu As String
Dim registered_countryNamesZh_CN As String
Dim registered_countryNamesDe As String
Dim registered_countryNamesEn As String
Dim traitsIp_address As String
continentCode = json.StringOf("continent.code")
continentGeoname_id = json.IntOf("continent.geoname_id")
continentNamesJa = json.StringOf("continent.names.ja")
continentNamesPt_BR = json.StringOf("continent.names.pt-BR")
continentNamesRu = json.StringOf("continent.names.ru")
continentNamesZh_CN = json.StringOf("continent.names.zh-CN")
continentNamesDe = json.StringOf("continent.names.de")
continentNamesEn = json.StringOf("continent.names.en")
continentNamesEs = json.StringOf("continent.names.es")
continentNamesFr = json.StringOf("continent.names.fr")
countryIs_in_european_union = json.BoolOf("country.is_in_european_union")
countryIso_code = json.StringOf("country.iso_code")
countryGeoname_id = json.IntOf("country.geoname_id")
countryNamesFr = json.StringOf("country.names.fr")
countryNamesJa = json.StringOf("country.names.ja")
countryNamesPt_BR = json.StringOf("country.names.pt-BR")
countryNamesRu = json.StringOf("country.names.ru")
countryNamesZh_CN = json.StringOf("country.names.zh-CN")
countryNamesDe = json.StringOf("country.names.de")
countryNamesEn = json.StringOf("country.names.en")
countryNamesEs = json.StringOf("country.names.es")
maxmindQueries_remaining = json.IntOf("maxmind.queries_remaining")
registered_countryIs_in_european_union = json.BoolOf("registered_country.is_in_european_union")
registered_countryIso_code = json.StringOf("registered_country.iso_code")
registered_countryGeoname_id = json.IntOf("registered_country.geoname_id")
registered_countryNamesEs = json.StringOf("registered_country.names.es")
registered_countryNamesFr = json.StringOf("registered_country.names.fr")
registered_countryNamesJa = json.StringOf("registered_country.names.ja")
registered_countryNamesPt_BR = json.StringOf("registered_country.names.pt-BR")
registered_countryNamesRu = json.StringOf("registered_country.names.ru")
registered_countryNamesZh_CN = json.StringOf("registered_country.names.zh-CN")
registered_countryNamesDe = json.StringOf("registered_country.names.de")
registered_countryNamesEn = json.StringOf("registered_country.names.en")
traitsIp_address = json.StringOf("traits.ip_address")