Internet Connection Checker 1.2 - Jeroen Tulp (jeroentulp@hotmail.com) - 1st of July 2001

Before reading this document you have to read and accept all of the license terms as stated in the "License.txt" document.

Table of Contents
-----------------
- What is ICheck
- Why was Icheck created
- What does ICheck do
- How do I figure out what my IPs are
- What do the icons tell me
- What can be expected of future versions of ICheck
- ICHeck ToDo list
- What do I want(!)
- Known bugs
- msvbvm60.dll and mscomctl.ocx troubles
- (Un)installing
- Acknowledgement
- Me: The author
- Contact information

What is ICheck
--------------
ICheck is a small free utility, intended for people who are connected to the internet through a network (e.g. ICS), but it could also work on a computer which is connected directly to the Internet. ICheck checks the connections to internet, host and computer every minute. It displays the status in the system tray so you can easily see if you are connected to the internet. If that is not the case, then you can easily see where the problem is and what course of action to take.

ICheck was designed, tested and run under Microsoft Windows Millenium only. It should work correctly under Windows 9X too, however no information about this is available at current.

Why was ICheck created
----------------------
I have an host pc, which is not stable at all and as if that was not enough my Cable ISP has the tendency to disconnect me from time to time. Because I got tired from running down the stairs checking if either one was failing on me, I wanted a program that could check my computers state in relation to the internet. After I had a short (and rather useless) Visual Basic course, I decided to make my own program. From the beginning I named the program ICheck, later on I decided to lengthen it to Internet Connection Checker.

What does ICheck do
-------------------
At startup ICheck tries to read the IP-addresses from the registry, if that fails the ICheck screen will popup with the default settings. There you have the opportunity to change all IP-addresses.
When ICheck is minimized to the system tray it checks Internet, Host and Computer IP, respectively every minute. This checking is done by sending an ICMP packet (ping) to the IPs. After this check it displays the status in the system tray.

How do I figure out what my IPs are
-----------------------------------
When you start "winipcfg.exe", it will show you your adapters. If you have multiple adapters, you will have to figure out which is used to connect to the host pc.
- IP-address is the Computer IP
- Standardgateway will most likely show the Host IP

The internet IP-address can be any fast and reliable internetsite, for instance your ISP internetsite. But even better would be an internetsite a bit further away (sometimes the link between your ISP and the rest of the Internet can be down, so you can view your ISP internetsite, but nothing else).

To determine the IP-address, start a Dos-box and type the folowing for instance:
"ping www.tweakfiles.com", do not add "http://"

It will then show you the IP-address in this format: [xxx.xxx.xxx.xxx]
(last time I checked it was 216.247.236.68)
If not more than one packet was lost and Maximum was not greater than 200ms, it can be used as Internet IP.

*** Since version 1.2 it is not necessary to use ping to retrieve the IP address, just click on Name and enter the name of the Website.

What do the icons tell me
-------------------------
They tell you the state of ICheck. If you move your mouse over the system tray icon you will see tooltips.
ICheck icon            - Checking your Internet connection
ICheck icon with cross - ICheck has been disabled
Green traffic icon     - Connected to the Internet
Yellow traffic icon    - Not connected to the Internet, connected to host
Red traffic icon       - Not connected to the Internet, Not connected to host
Exclamation mark icon  - The link between Computer and host is down


What can be expected of future versions of ICheck
-------------------------------------------------
I made this program in the Learning Edition and it is somewhat restricted and has not got some functions which I would like to use (mswinsck.ocx). Depending on the functions I want to add and the public interest I might buy the Visual Basic Pro version and make an ICheck "Pro" version.

*** As of version 1.2 ICheck is further developed with Visual Basic Pro.

Future ICheck versions will remain "Freeware", but will contain only code optimizations, bug fixes and things I allready wanted to add. The Pro version will have more functions, depending on what you want. So please send feedback!

ICHeck ToDo list
----------------
- Remove bugs (if any)
- Make an (un)installer
- (?) Create ICheck internetsite
- (?) Adapt program to fit the name: not only of use if you are connected to the internet through a network

What do I want(!)
-----------------
I want you, the users, to mail me:
- Comments you have on ICheck
- If you like or hate ICheck and also comment on that
- Bugs you have found
- Things you would like to see implemented, changed or left out
- Comments on programming in Visual Basic relating ICheck
- Anything else which might be relevant

Known bugs
----------
- When you doubleclick on the system tray icon and you have a window on your desktop, systray will not focus on the ICheck window.

msvbvm60.dll and mscomctl.ocx troubles
--------------------------------------
If you have a problem with msvbvm60.dll you can download it here:
msvbvm60.dll: http://www.microsoft.com/downloads/release.asp?ReleaseID=28337

mscomctl.ocx is required and as such included with ICheck. If ICheck fails 
and refers to this file, try placing it in your Windows\System directory.

(Un)installing
--------------
Installing is fairly simple:
Extract ICheck to a directory of your choice.

To uninstall ICheck delete the program directory.
Before deleting any files, run ICheck, uncheck "Load ICheck at Windows startup" and save the setting and press Ok.

The following is for experts only as you could cripple your Registry!:
Delete the key [HKEY_LOCAL_MACHINE\Software\ICheck] in the Registry.

Acknowledgement
---------------
I would like to thank the following people. Without their help, I would have had a hard time programming ICheck:
Josh Kimbrough
Randy Mcdowell (Read from/write to Registry)
Keir Gordon (Address conversion and pinger)
Mark Hunter (System tray routines)
Jay Tr. (Host to Ip resolver)
Cognito (External IP resolver)

Special thanks go to Josh Kimbrough for helping me with everything relating Visual Basic. He has been a great help and I owe a lot to this guy (Hungarian from an American).

Me: The author
--------------
I am Jeroen Tulp, 22 years old and I live in Hoogvliet, Netherlands. I study Electronic Engineering (Informationtechnology) at the University of Rotterdam and I am in my fourth and final year. My hobbies are amongst others many things relating computers and sports.

Contact information
-------------------
You can contact me by e-mail, the address is jeroentulp@hotmail.com. Please use "ICheck, ..." as subject. I also use Icq, the number is: 20469664.


Thank you for reading this document and I hope you enjoy ICheck as much as I enjoyed creating it.

- Jeroen Tulp
