SOL9 Sample: DnsIP6RecordQuery
|
1 Screenshot
2 Source code
/*
* DnsIP6RecordQuery.cpp
* Copyright (c) 2015 Antillia.com TOSHIYUKI ARAI. ALL RIGHTS RESERVED.
*/
// SOL9
// 2011/1/1
// 2011/1/14 Updated
// 2011/1/18 Modified to use DnsRecordQueryT class
#include <sol/WSAInitializer.h>
#include <sol/dns/DnsRecordQueryT.h>
#include <sol/Locale.h>
namespace SOL {
class DnsIP6RecordQuery :public Object {
private:
DnsRecordQueryT<DNS_AAAA_DATA> dns;
public:
/**
* Constructor
*/
DnsIP6RecordQuery()
:dns(DNS_TYPE_AAAA)
{
}
public:
~DnsIP6RecordQuery()
{
}
public:
void start(const TCHAR* hostDomain)
{
//Call query method
int count = dns.query(hostDomain, DNS_QUERY_BYPASS_CACHE);
//Display the query result(all DNS_AAAA_DATA).
_tprintf(_T("All DNS_AAAA_DATA(count=%d)\n"), count);
dns.display();
//Get the first DNS_AAAA_DATA
DNS_AAAA_DATA data;
dns.getFirst(data);
//Display a structure data of DNS_AAAA_DATA
_tprintf(_T("\nFirst DNS_AAAA_DATA\n"));
DnsData dnsData;
dnsData.display(data);
}
};
}
void _tmain(int argc, TCHAR** argv)
{
if (argc !=2) {
_tprintf(_T("Usage:%s hostDomain\n"), argv[0]);
_tprintf(_T("Ex: %s google.com\n"), argv[0]);
return;
}
WSAInitializer initializer;
Locale locale;
try {
DnsIP6RecordQuery recordQuery;
recordQuery.start(argv[1]);
} catch (Exception& ex) {
ex.printf();
} catch (...) {
_tprintf(_T("Exception\n"));
}
}
Last modified: 2 May 2016
Copyright (c) 2016 Antillia.com ALL RIGHTS RESERVED.