ActiveSocket Toolkit Add network capabilities to any Windows or .NET application

Quicklinks


HTML Form IPtoCountry Sample Source Code

ActiveSocket provides an easy-to-use development interface to a variety of IP protocols. By using ActiveSocket, you can very easily create or enhance applications with network features.

ActiveSocket features the following: DNS, FTP, HTTP, HTTPs, ICMP Ping, IP-to-Country, MSN, NTP, RSH, SCP, SFTP, SNMP v1/v2c (Get, GetNext, Set), SNMP Traps, SNMP MIB, SSH, TCP, Telnet, TFTP, UDP, Telnet, Wake-On-LAN and more.

ActiveSocket can be well integrated into HTML/Javascript environments. This document describes how the ActiveSocket Toolkit can be integrated into HTML projects.

Step 1: Installation of ActiveSocket

When using HTML, there are two ways to install the ActiveSocket Toolkit on a client PC:

  • Automatically using HTML code;
  • Using the ActiveSocket Toolkit InstallShield installation.

Automatic installation using HTML code

You can install the ActiveSocket Toolkit automatically using the following HTML code on top of the HTML page:

   <head>
      <object id="objIPtoCountry" codeBase="http://www.activexperts.com/files/network-component/asocket.dll" 
              classid="CLSID:E6645574-3DB3-418F-AF16-229EF24EE2C8" ></object>
   </head>

The ActiveSocket Toolkit will be installated automatically. The user will be asked to confirm the installation, because the DLL is coming from an untrusted site (www.activexperts.com).

There are two ways to avoid prompting:

  • Add the ActiveX/COM location to the user's trusted sites. You can manage trusted manually (by using the Internet Explorer), through a logon script (by appyling the registry change from the logon script) or by using Active Directory Group Policies;
  • OR use a trusted location for the DLL. For instance your Intranet site, because most probably this site has already been added to the list of trusted sites for all users.

Manual installation using the ActiveSocket Toolkit installation procedure

On each client PC, download the ActiveSocket Toolkit from the ActiveXperts Download Site and start the installation. The installation guides you through the installation process.

Step 2: Create the ActiveSocket object in HTML/JavaScript

You must use Javascript to declare and create the objects.

Use the following Javascript code to declare and create the object:

var objIPtoCountry;
 
objIPtoCountry  = new ActiveXObject ( "ActiveXperts.IPtoCountry" );

Step 3: Creating a simple IP to country lookup utility

You can now lookup IP addresses.

The following HTML code shows how to create a simple IP to country lookup utility:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
 <head>
  <title>ActiveSocket IP To Country Demo</title>
  <style type="text/css">
   <!--
    table{
      border: 1px solid navy;
      font-family: verdana;
      font-size: x-small;
      color: navy;    
    }
    input{
      border: 1px solid navy;
      background-color: white;
      font-family: verdana;
      font-size: x-small;
      color: navy;    
    }
    h2{
      font-family: verdana;
      font-weight: bold;
      color: navy;    
    } 
   -->
  </style>
</head>
<body>

<div align=center>

<h2>ActiveSocket IP to Country HTML/JavaScript Sample</h2>
<form name="frmForm">
<font size=1 color=black face=verdana><b>Please fill in the form:</b></font>
<table>
 <tr>
  <td><b>The hostname or IP you want to convert:</b></td>
  <td><input type=text name="txtAddress" onchange="checkUrl()" value="forum.activexperts.com" size=40></td>
 </tr>
 <tr>
  <td><b>The file you want to log into:</b></td>
  <td><input type=text name="txtLogfile" value="C:\ASocketLog.txt" size=40></td>
 </tr> 
 <tr>
  <td></td>
  <td><input type=submit onclick="getCountry()" value="Convert IP to country!"></td>
 </tr>
</table>
</form>
</div>
</body>
</html>

<script language="JavaScript" type="text/javascript">
<!--

//this function checks the hostname

function checkUrl(){
  var strUrl
  strUrl = frmForm.txtAddress.value
  if(strUrl != ""){
     strUrl = strUrl.replace("http://", "")
     return strUrl
  }
  else{
     alert("You did not fill in a proper host name or ip address!")
     return "Error"
  }
}

//this function resolves the hostname its location

function getCountry(){
  var objSocket, strUrl
  objSocket = new ActiveXObject ( "ActiveXperts.IPtoCountry" )  //Create the object
  strUrl    = checkUrl()

  if(checkUrl != "Error"){
     var strResult
     objSocket.LogFile = frmForm.txtLogfile.value               //Set the logfile
     objSocket.Host    = strUrl                                 //Fill in the hostname you want to resolve the location from
     objSocket.Query()                                          //Execute the by ActiveSocket generated query
     strResult = "Host      : " + strUrl + ":\n" + "Country: " + objSocket.CountryCode + " : " + objSocket.CountryName 
                                + "\nResults  : " + objSocket.LastError + " : " + objSocket.GetErrorDescription(objSocket.LastError)
     alert(strResult)                                           //Echo the results
  }

}

//-->
</script>

There are many working samples included with the product. You can also find them on the ActiveXperts FTP site: ftp.activexperts-labs.com/samples/network-component.