Magenta Systems Internet Protocol Helper Component v1.8
========================================================

Updated by Angus Robertson, Magenta Systems Ltd, England, 25th October 2005
delphi@magsys.co.uk, http://www.magsys.co.uk/delphi/
Copyright Magenta Systems Ltd


Introduction
------------

Magenta Systems Internet Protocol Helper Component is a set of
functions implementing the the Internet Protocol Helper (IP Helper) APIs.
They enable the retrieval and modification of network configuration
settings for the local computer. The component loads all functions
dynamically so applications will still run on earlier Windows versions
that did not support certain IP Helper functions. The component returns
the various parameters returned by the APIs as Delphi records, for ease
of integration into applications.

A comprehensive TCP/IP/ARP Monitor application is included using all the
APIs to display TCP and UPD Connections (and the names of applications
using them), IP address and routing tables, network adaptor information
(such as MAC and IP addresses), ARP table, network statistics and dynamic
DNS server addresses.

IP Helper provides capabilities in the following areas:

- Retrieving Information About Network Configuration
- Managing Network Adapters
- Managing Interfaces
- Managing IP Addresses
- Using the Address Resolution Protocol
- Retrieving Information on the Internet Protocol and the Internet Control
  Message Protocol
- Managing Routing
- Receiving Notification of Network Events
- Retrieving Information About the Transmission Control Protocol and the
  User Datagram Protocol

The conversion and demo application are based on earlier work by Dirk
Claessens, but with many bug fixes and enhancements.


Converted IP Helper APIs
------------------------

Note this is only a partial conversion of IP Helper APIs, where most
Windows API are converted into a Delphi function that return one or more
records or string lists.  Many of these records include dynamic string
arrays, for instance returning multiple IP addresses.

AllocateAndGetTcpExTableFromStack as IpHlpTCPTable
AllocateAndGetUdpExTableFromStack as IpHlpUDPTable
GetAdaptersInfo as IpHlpAdaptersInfo
GetIcmpStatistics as Get_ICMPStats
GetIfEntry as IpHlpIfEntry
GetIfTable as IpHlpIfTable
GetIpAddrTable as Get_IPAddrTable
GetIpForwardTable as Get_IPForwardTable
GetIpNetTable as Get_ARPTable
GetIpStatistics as Get_IPStatistics
GetNetworkParams as IpHlpNetworkParams
GetPerAdapterInfo as IpHlpAdaptersInfo
GetRTTAndHopCount
GetTcpStatistics as IpHlpTCPStatistics
GetTcpTable as IpHlpTCPTable
GetUdpStatistics as Get_UdpStatistics
GetUdpTable as IpHlpUDPTable

Full information about these APIs is available in MSDN.


DNS Helper
---------

The DNS Helper unit returns the dynamic DNS address for all platforms,
primarily by running the winipcfg.exe or ipconfig.exe programs and
redirecting the report output to a text file which is parsed for the
address.

On Windows 98, ME, W2K and XP, it's more efficient to use
IpHlpNetworkParams which returns the dynamic DNS IP address.


Files Enclosed
--------------

=Demo Application
utcpip.dfm
utcpip.pas
tcpipmon.dpr
tcpipmon.exe

=Headers and Components
iphelper.pas
iphlpapi.pas
dnshelper.pas


Requirements
------------

Compatible with Delphi 5/6/7/2005/2006, tested with Windows 98, NT4, 2000,
XP and 2003.  Note that some IP Helper APIs have minimum OS requirements.


Copyright Information
---------------------

Magenta Systems Internet Protocol Helper Component is freeware, but is
still copyrighted by Magenta Systems Ltd who may change the status or
withdraw it at any time, without notice.

Magenta Systems Internet Protocol Helper Component may be freely
distributed via web pages, FTP sites, BBS and conferencing systems or on
CD-ROM in unaltered zip format, but no charge may be made other than
reasonable media or bandwidth cost.


Magenta Systems Ltd
9 Vincent Road
Croydon
CR0 6ED
United Kingdom

Phone 020 8656 3636, International Phone +44 20 8656 3636
Fax 020 8656 8127, International Fax +44 20 8656 8127

Email: delphi@magsys.co.uk
Web: http://www.magsys.co.uk/delphi/



