ASP 2.x UDP Sample Source Code in ASP
Network Component provides an easy-to-use development interface to a variety of IP protocols. By using Network Component, you can very easily create or enhance applications with network features.
Network Component 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.
Network Component can be well integrated into any development platform that supports ActiveX objects.
Step 1: Download and install Network Component
Download Network Component from the ActiveXperts Download Site and start the installation. The installation guides you through the installation process.
Step 2: Create a new Web Site
First, create a new directory on the IIS Server's file system. This directory will hold the ASP later on.
From the 'Start menu', click on 'Administrative Tools' and click on 'Internet Information Services (IIS) Manager'. Right-click on the 'Web Sites' container and choose 'New->Web Site':
The 'Web Site Creation Wizard' is shown, guiding you thorugh the process of creating a new web site. Provide all necessary information:
- Description - a friendly description of the new site;
- IP / Port / Host Header - choose your preferred way to distinguish between other web sites on the server;
- Path - select the directory that will store the ASP file(s);
- Web Site Access Permissions - in the Web Site Access Permissions dialog, enable 'Read' and 'Run scripts (such as ASP)';
You're now able to write an ASP script to use IP protocols with Network Component.
Step 3: Create the from
First of all we need to create a form in HTML to get the login information for the ftp server. All we actually need is:
- The log-in name.
- The password.
- The server we want to connect to.
- And the directory we're going to list.
In this sample all we're going to do is create a ASP file that is able to list files and directories in a directory. Using Network Component it is easy to create a page that makes you able to upload and to download files.
You can create a form that looks like this:
Step 4:Create ActiveXperts Network Component objects in ASP
Create a new ASP script called DEFAULT.ASP in the directory that was created in Step2, using your favorite editor. On top of the ASP code, insert the following lines to declare and create the Dns object:
<object runat="server" progid="AxNetwork.Udp" id="objUdp"></object> <object runat="server" progid="AxNetwork.ASConstants" id="objConstants"></object>
Step 5: Test a small piece of ASP
Now, test if your new web site is working well with ActiveXperts Network Component using your browser. If you are using Microsoft Internet Explorer, it is recommended to disable friendly error message because this default setting doesn't show any ASP error message, making it hard to debug if there are any problems:
- Choose' Internet Options' from the 'Tools' menu;
- Select the 'Advanced' tab;
- In the 'Browsing' folder, de-select the 'Show friendly HTTP error messages' option;
- Click 'OK' to close the dialog.
Now, use the following piece of code in your DEFAULT.ASP page and test it into your favourite browser:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head> <title>ActiveXperts Network Component ASP Demo</title> <object runat="server" progid="AxNetwork.Udp" id="objUdp"></object> <object runat="server" progid="AxNetwork.Constants" id="objConstants"></object> <title>Network Component Demo</title> </head> <body> Network Component version: <% = objSmtp.Version %> <br /> Network Component License Status: <% = objSmtp.LicenseStatus %> </body> </html>
Step 6: Implementation
You can list files using Network Component TFTP in 3 steps.
- Creating an object to use Network Component
- Connect to the server
- List the files
Connecting to the server
To connect to the server we're using the Network Component method "Connect".
objFtp.connect request("server"), request("username"), request("password")
This makes a code look like this:
if request("submitbutton") <> "" then dim objFiles <span class="aclSourceComment">' create the object</span> Set objFtp = Server.CreateObject( "AxNetwork.Udp" ) objFtp.clear <span class="aclSourceComment">' set the logfile</span> objFtp.logfile = request("logfile") <span class="aclSourceComment">' connect</span> objFtp.connect request("server"), request("username"), request("password") objFtp.ChangeDir request("directory") else <span class="aclSourceComment">' do nothing</span> end if
Listing the files
If the previous actions have been succesfully executed, we can list the files. To list these files we're using two Network Component methods:
- We're using "FindFirstFile" to find the first file.
- We're using "FindNextFile" to move on to the next.
When we know what the first file is we're starting a loop. If one file is listed, FindNextFile is used to move on to the next. If there is no more file, the software will return an error. Thats why we created the following code:
' find the first file if objFtp.LastError <> 0 then response.write("Connection failed..<br>") else set objFiles = objFtp.FindFirstFile() end if ' list the files if objFtp.LastError <> 0 then response.write("<tr><td>Sorry.. Failed to list the files..</td></tr>") else getfiles end if sub getfiles 'show the contents in a table response.write ("Files in directory " & request("directory") & " :") response.write ("<table>") 'the software will return an error if there is no more file to display, so: do while objFtp.LastError = 0 response.write("<tr>") response.write("<td>") 'display folders if objFiles.IsDirectory = 0 then response.write "File:" else response.write "Directory:" end if response.write("</td>") response.write("<td class=files>") 'display the names response.write(objFiles.name) response.write("</td>") response.write("</tr>") 'find the next file; continue the loop set objFiles = objFtp.FindNextFile loop response.write "</table>" end sub
Appendix: Full source code
You can download the complete samples here. There are many other working Network Component scripts on our site and shipped with the product.