Member of Software HyperBanner

Main menu
Go back to main page

Why should I use it?
Creating skins

Skin gallery
Language translations
Mirror sites

On-line credit cards
By phone or fax
Check by mail

Join our mailing lists
Message board
Screen shots

Send us an Email

GetSmart Logo
The smartest download manager around!

GetSmart Help / About

Why did I write GetSmart ?
(some history...)

After surfing the Net for a couple of years I got frustrated that there wasn't any program that I could gave it some files to download and be sure it will. I tried many of those softwares, each promising that it will be reliable and nothing will stop it until it got the files I needed. This was very promising, but whenever I set one of those programs to do some big downloads and went to sleep, I can't recall one case in which I got up and everything was right. Even though I had only experience in programming for DOS in Pascal, I've decided I could not accept with the situation and that I was gonna make a program which will answer all my needs. I got a book about C++ and bought one about WIN32 programming, and with one book on each hand, I started programming GetSmart. This is actually my first Windows application I program.


What is different in GetSmart ?

The main idea behind GetSmart is the split option which I will now describe.

Every usual program when received a URL to download, uses one task for each. It takes the URL you have given, connects to the server and starts downloading the file. If the rout to the server is jammed this can result in a slow transfer and there's not much those programs will do about it.

GetSmart in contrast to other programs uses more than one task for each download. If you see that you get a slow transfer, you can use GetSmart to split the download into smaller parts (up to 6 parts) and then it will download them simultaneously. if for example you have splitted the file into 3 parts, it will have three different connections to the server, and each connect will transfer one part of the file. For slow connections it can significantly increase the speed (using 6 parts with a server of which connection to is real bad, can increase the speed by up to 5 times than using one connection). So if you got 3 connections, the download has now 3 tasks bonded to it and you will see in the small download window "tasks: 3". You will also have a button "show tasks", which will then show you instead of one small download window, 3 download windows, each represents a different part of the file which is being downloaded. 


Starting a download

You can either start a download by entering it's url in the "Enter URL" dialog box, or you can copy it from the Clipboard. GetSmart by default will detect URLs from clipboard, and if the file's extension was defined in the configuration (under "URL extensions to catch"), it will automatically be added and started. If the extension was not defined and you still want to download the file, you can use the pull down menus, or press Shift+INS, which will add the URL even if it has an unknown extension.

For the novice users I'll just say that all you have to do is right click the URL you want to download and choose copy link to clipboard, and GetSmart should start downloading.

Entering a URL manually

GetSmart - Entering a URL manually screen shot

There are two different ways to enter a URL. You could use the URL edit box to enter a complete URL. This will automatically update the other edit boxes, for example:

Example 1 - By entering that in the URL edit box, GetSMart will update the others so they will contain:

  • Host:
  • Port: 80 (that's the default port for an HTTP URL)
  • Dir: /m507/GetSmart.exe
  • Protocol: HTTP

Example 2

You can also enter in the URL Login, Pass and Port for example:

  • Login: ehuds
  • Pass: unknown
  • Port: 31
  • Dir: /m507/GetSmart.exe
  • Protocol: FTP

The second way is to update each edit box separately. In this case GetSmart will update the URL edit box automatically using the info you write.

  • Host: this should contain only the host (either words separated by a dot - or an IP number - ). It should NOT have anything else like http:// ot ftp://.
  • Port: This is the port number.HTTPs usually using port 80 and FTPs port 21
  • Dir: This should contain the server's directory and filename you wish to download
  • Login and Pass: your login name and password
  • Protocol: There are two main protocols which are used to transfer files in the Web: HTTP and FTP. You should choose the correct protocol for the download
  • URL: This area will be updated automatically. In any case that there's a difference between the URL edit box and the other edit boxes, what will count are the separate boxes and not the URL


Local download directory

This is where GetSmart will put the files it downloads. You can change in the configuration the default download directory. GetSmart for now will NOT create a dir by itself nor it will check for existence so make sure the dir is correct.


Wild cards and FTP browsing

Using wild cards as the filename or not specifying any dir and file, will let you browse the FTP. You will get a list box with the filenames and directories of the server. You can then choose files and add them to GetSmart's queue, or you could change the server's directory and get a new list of the new directory.

GetSmart will have a complete FTP client, this is being developed.


The download box

GetSmart - The download box - screen shot

This is the download box. It contains information about the file and some options:

Tasks: This button shows how many tasks are used on this download. Pressing on it will display the task manager (will be explained later);

Hide: This button will hide the download manager. It will still continue the download. To Unhide it, you can double click on the main menu, or use the task manager (will be explained later);

Console: This will show you a console with the FTP or HTTP negotiation, and some more info;

Split: This will split a download (read about it in "What is different in GetSmart" the second topic. This is the main option of GetSmart). It will show a dialog box which will allow to choose how many parts to split the file (minimum of 2, up to 6).

* The split option will only be available if the server supports resume. When starting a download, the split option will be disabled, until GetSmart will figure up if resume is possible;

Ping: This will show you the ping time to the server of which you are downloading the file from. It will also ping to increase the speed, every 4 seconds of time-out.


The download box of a splitted session

GetSmart - The download box of a splitted session - screen shot

There isn't much of a difference. The info here is taken from all the task windows of this download and gathered together.

Tasks: Shows how many tasks are used for this download;

Show Tasks: This will show instead of 1 window, which gathers info from the other tasks, every task window separately. In this case we'll see 4 different windows, each represents one part of the file being downloaded. Pressing this button again will hide those windows and will again show only 1.

Split: This button is now disabled. You can't change the split number when already started (you can however decrease the task number to use less tasks for the download - next topic).


The Task Manager

    GetSmart - The Task Manager - screen shot

This is the task manager. In this example I'm downloading GetSmart.exe using split of 4 parts. You can see in the split slots that 4 places are taken and 2 are unused. Each line gives you detailed information about a task. You can see the name which includes the starting and end bytes of any part.

Hammer tasks: Whenever GetSmart find a busy site, it will launch 4 more tasks which will also try to enter that site. The first task which will log in, will be used. Every hammer tasks is also included as a normal task and will be added to the task number in the download window.


Show/Hide task: This will show or hide any selected task (you can select more than one tasks using Shift/Ctrl and mouse click);

Pause/Resume task: This will allow you to pause and resume specific tasks. In every download there is a main task (usually the first part of the file. This is the download window which have the "show tasks" button and shows in "tasks:" the whole tasks number). Pausing it will automatically pause the whole download and close any task (Split / hammer).

If you will however pause a task which is not main, it will pause alone. When a task has been finished, it will check for paused tasks and will automatically resume one of them. If you have started a download and splitted it to 4 parts and now you want to decrease the task which are used for it, you can safely pause the last two tasks and whenever one of the running tasks is finished, it will start one of the paused tasks).


Integrity check / crash recovery

If GetSmart / window has crashed on the second GetSmart tried to write data to your local file, there's a chance that it won't be able to do it right and your local file may contain some corrupt data in it's end. To solve that, whenever GetSmart resumes a file, it will compare the last bytes of your local file to the server's file, and will recover if there's a difference.

If you lost the entry of your download in the main menu, enter the URL again with the same download directory. GetSmart will detect that the file exists and will offer to resume it (it will also detect a split download and will resume it correctly).


Automatic Download

This option is available from the advanced pull down menu. It will start downloading automatically the files that are queued in the main menu. You can change how many files GetSmart will download simultaneously from the configuration box. When this option is enabled and GetSmart encounters an error. It will count 5 minutes and will try it again. If you have also chosen the disconnect when done option GetSmart will retry each error up to 5 times and then disconnect.