FTP Explorer by Alan Chavis
===========================


Copyright Notice
----------------

Copyright (c) 1995-1996 by Alan Chavis
FTP Explorer is a trademark of Alan Chavis


Release Notes
-------------

THIS IS A BETA RELEASE.  THIS MEANS THAT YOU WILL ENCOUNTER PROBLEMS.
PLEASE HELP ME TO IMPROVE THE PROGRAM BY REPORTING ANY PROBLEMS OR
SUGGESTIONS TO:

achavis@datacrit.com

The main objective of FTP Explorer is to provide an FTP client that looks
and feels just like the Windows 95 Explorer interface.  Please keep this
in mind while evaluating it.

When released, FTP Explorer will be distributed FREE for non-commercial use.
Commercial pricing is still up in the air, but will be competetive with other
FTP clients.  Please email me about what you think a fair price would be.

THE LATEST RELEASE WILL ALWAYS BE AVAILABLE AT:

ftp.datacrit.com  /pub/ftpx

If you would like to be notified via email about new releases, email me
with SUBSCRIBE FTPX in the body text of the email.


Disclaimer of Warranty
----------------------

THIS SOFTWARE AND THE ACCOMPANYING FILES ARE PROVIDED "AS IS" AND
WITHOUT WARRANTIES OF ANY KIND WHETHER EXPRESSED OR IMPLIED.

In no event shall the author be held liable for any damages whatsoever,
including without limitation, damages for loss of business profits, 
business interruption, loss of business information, or any other loss 
arising from the use or inability to use  the software.


What's New
----------

* Changes in Version 0.00.020  (04/24/96)

  - Initial public beta release.

* Changes in Version 0.00.019  (04/19/96)

  - Fixed bug where "Options" dialog was not saving changes
    to the "Connection" page.

  - Added "Import" option to "Tools" menu to allow importing
    connection info from WS_FTP.  Other formats will be supported
	in the future.

  - Added "Byte Counter" indicator to the status bar to give
    some feedback when downloading directory contents.

  - Program now attempts to retain creation original date
	and time for downloaded files.


* Changes in Version 0.00.018  (04/18/96)

  - Fixed the description feature.  It's been broken for a while
    and I just noticed it!


* Changes in Version 0.00.017  (04/17/96)

  - Added icons to the transfer dialogs.

  - Changed drag and drop operations from list view to work as
    "move" operations so that the TEMP dir is cleaned up
    automatically.

  - Added code to the "Connect" dialog to set the focus to the
    profile name combo box after an "Add" or "Remove" operation.

  - Fixed bug that was caused by fix for older Windows NT FTP
    servers.  Newer NT servers list directory contents differently.

  - Fixed bug caused by code attempting to update transfer dialog
    after the dialog was closed.


* Changes in Version 0.00.016  (04/09/96)
  
  - Program now detects if "Quick View Plus" is installed and
    reflects this in the "File" menu and context menus.  Right
    now I'm doing this manually, but I hope to add support for
    any installed "Shell Extension Context Menu Handlers" in
    the future.  For more info about "Quick View Plus" check
    out http://www.inso.com

  - Added "Attempts" and "Retry Delay" options to "Connect"
    dialog to allow customizing these settings on an individual
    connection basis.  These settings default to the settings
    from the "Options" dialog.  


* Changes in Version 0.00.015  (04/08/96)

  - Fixed some bugs on the "Connect" dialog.  If you added a
    new profile, or deleted a profile, the "Profile Name"
    combo box was not being reloaded.  If you changed the name
    of the current profile, and then saved it or selected a
    different profile from the combo box, the combo was not
    updated with the new name properly.

  - Fixed a bug with the "File" context menu where the "Save As"
    and "Open" options were not functioning properly.


* Changes in Version 0.00.014  (04/07/96)

  - Fixed a bug that was causing the program to lock up or GPF
    if you opened the file menu without being connected.  This 
    crept into 013 when I added the "Create Shortcut" option 
    to the file menu.


* Changes in Version 0.00.013  (04/07/96)

  - Changed "Autoload File Descriptions" to default to on.

  - Added "Autoload File Descriptions" size limit to "Options"
    dialog.  This was previously hard coded to 50k.
    
  - Implemented asynchronous host lookup call to prevent
    non-responsiveness during connect sequence.  Program was
    blocking on host lookups before and would not respond
    or repaint itself until the host name was resolved.

  - "Options" dialog is now a tabbed dialog with "General",
    "Paths", and "Connection" pages.
  
  - Fixed several problems with date and time field.  Program
    now displays appropriate date and time for current locale.
    Also, this fixed a problem with sorting by date.

  - Changed the transfer animations.

  - Fixed a memory leak that was occurring when a download was 
    cancelled.

  - Changed "bps" indicators to read "bytes/sec" for more clarity.

  - Fixed another bug that was causing Log pane to scroll to the
    right for long lines.

  - Worked on optimizing download throughput.  Program is now
    performing at least as well as other popular FTP clients.

  - Added "transfer complete" and "transfer incomplete" notices
    to FTP log stream.  The "transfer complete" notice also displays
    throughput information.

  - Added "Create Shortcut" option to "File" and context menus to
    create a shortcut to a folder on the desktop for the currently
    selected folder.

  - Added "Connection Retry" feature.  This allows user to configure
    the number of times to try to connect, and the number of seconds
    to wait between each try.

  - Added "Enable sound" option to "General" options page.  This
    allows the user to enable or disable any sounds generated by the
    program.

  - Added sounds to connection progress.  Program will now play the
    default "Ding" sound on connecting, and the default "Asterisk"
    sound when a connection attempt fails.  (The specific sounds
    are configurable via the control panel.)

    I'll be adding additional sounds in the future.  Please let me 
    know where you would like to see sounds added.

  - Added "Automatically reconnect" option to "Connection" page.
    This option is currently disabled, but when completed it will
    allow the program to automatically reconnect if the connection
    fails.
    

* Changes in Version 0.00.012  (04/05/96)

  - Added keyboard accelerators to "Connect" and "Options"
    dialogs.

  - Added "Window" menu to allow quick switching between Tree,
    List, and Log views.

  - Added "Vertical Split" and "Horizontal Split" options to the
    "Window" menu to allow maniplating splitters via the keyboard.

  - Added confirmation dialog for delete operations.

  - Changed "Name" caption on "Connect" dialog to "Profile Name"
    and "Host" caption to "Host Address" for greater clarity.

  - Fixed bug where context menu initiated by Shift-F10 was not
    properly positioned over selected item.

  - Changed context menus so that they are more context sensitive
    depending on what is selected.

  - Added "Save Log As" option to file menu.  This allows the FTP
    log file to be saved.

  - Removed trailing line feed chars from FTP Log view entries.
    This eliminates that annoying blank line that used to appear
    at the bottom of the Log view.

  - Added "Folder Shortcuts".  You can now drag folders to the
    desktop or shell windows to create a shortcut to the FTP site!
    I plan to add the ability to drag folders from the Tree view 
    as well.
	
  - In implementing the shortcut feature I added a command line 
    option as follows:  //Profile Name!/Initial/Path  The command 
    line option must start with two slashes, followed by the profile
    name.  The initial path is optional, but if included, must be
    separated from profile name by an exclamation point.  If a path
    is not specified, then the profile's default path is used.  If
    this syntax ends up being too confusing, I'll probably change it.

  - Added "Shortcut" button to "Connect" dialog to provide an easy
    way to add a shortcut for the profile to the desktop.

  - Added an option to automatically highlight the last line in the
    FTP log.

  - Added the rest of the possible "Sort" options to the "Arrange Icons"
    menus.
	

* Changes in Version 0.00.011  (04/04/96)

  - Changed connect dialog so bytes transferred is displayed as
    "(xxx of xxx bytes transferred)".

  - Fixed tooltips on delete and properties toolbar buttons.

  - The main program icon got hosed when I added the "Go to"
    feature.  It's now been changed back to the correct icon.

  - Added code to make the TAB key cycle through the Tree, List,
    and Log views.

  - Added code to auto select the first item in the List view
    when it is loaded.

  - Fixed bug that was causing Tree and List views to not regain
    the focus when the program lost and regained focus.

  - Changed the transfer buffer sizes to 1024 bytes.  This seems
    to help the throughput some, but there's probably some more
    tuning to do to find the right size.  This may become an option.


* Changes in Version 0.00.010  (04/03/96)

  - Fixed bug in connect dialog where garbage was sometimes being
    appended to strings stored in the registry.

  - Fixed bug where if invalid initial path was specified in the
    connect dialog, it would still be added to the tree view.

  - Password field on "Connect" dialog now hides the password
    based on whether or not "Anonymous" is selected.

  - Backspace key now changes to parent directory.

  - Fixed bug where tree view was not properly tracking the
    current directory when CD was changed via method other
    than via tree control.

  - Added "Go to" command on new "Tools" menu to allow user
    to go to any specified directory.

  - Upload dialog now has same indicators as download dialog.
    (i.e. file size, bytes transfered, etc.)
  
  - Added "Bps" (bytes per second) indicator to transfer dialogs


* Changes in Version 0.00.009  (04/01/96)

  - Implemented background downloading.  This works by opening
    a new FTP connection, so it takes a little while before it
    starts up.  Background transfers are only functional for 
    "Save As" and are not available for "Open" and "Quick View"
    commands due to dependancy issues.  Eventually I may come
    back to this and try to make it work somehow.

  - Added option to "Options" dialog to allow user to specify
    the file size threshold for background transfers.

  - Added code to release the mouse capture after a drag
    drop operation to fix bug where mouse was not working during
    download initiated by drag drop.

  - Added "Add" and "Save" buttons to "Connect" dialog to add and
    save entries.

  - The "Remove" button on "Connect" dialog is now functional.

  - Added filename being transferred to download dialog caption.

  - Added file size to filename label on download dialog.

  - Added bytes transferred status indicator to download dialog.

  - Fixed the sorting routine for the list view.  It's been broken
    since I added the "Description" column.  If you clicked on the
    size column, it sorted by description.  Also added the rest of
    the columns to the sort routine so you can now sort by
    "Permissions", "Owner" and "Group".

  - Added "Properties" dialog for item detail information.

  - Fixed a bug that was making the tree view folders turn yellow
    before they had been actually opened.  This bug was also slowing
    down the process of filling the tree view.


* Changes in Version 0.00.008  (03/28/96)

  - Program now saves the list style to the registry so that it
    is restored the next time you run it.

  - Added an option to specify the default download path to the
    options dialog.  This only effects the "Save As" command.

  - The "FTP Log" pane is now read only.  A side effect of this
    is that it turned gray.  I'm not sure if I like it or not so
    let me know what you think and maybe I'll force it back to
    white.

  - Added an "FTP Log" option to the view menu to easily toggle
    the "FTP Log" pane on and off.  Actually all it does is resize
    it.

  - The "FTP Log" pane now attempts to remain the same size when
    the main window is resized.

  - You can now cancel a connection attempt by selecting "disconnect"
    from the file menu or clicking the "disconnect" icon on the toolbar.

  - Fixed the "connect" icon on the toolbar so that it is disabled
    during connection attempts.

  - Removed horizontal scroll bar from "FTP Log" pane.

  - Transfer dialog is now closing the data socket when the cancel
    button is selected.  This is just a quick fix to kill the transfer,
    you will probably have to disconnect.

  - Changed the toolbar icons for "connect" and "disconnect".

  - The options dialog's caption is now "Options" instead of "Dialog" - DUH.

  - Fooled around with the main icon a little.  Whadaya think?
  

* Changes in Version 0.00.007  (03/26/96)

  - Program now uploads files dropped on it to the current directory.

  - Added quick fix for crash if you tried to close the program
    while it was busy doing something.

  - Now loading version info from resource info.

  - Changed EXE name to ftpx.exe.

  - Added my email address to the about dialog.

  - Added "initial path" option to connect dialog.

  - Fixed bug related to new "initial path" option where tree was
    not working properly if the parent directory had not been listed
    before.


Known Problems
--------------

1.  The file formats for the INDEX files on the various FTP sites vary
    widely, so you can help by using the "Autoload File Descriptions"
    feature and reporting any problems you have with it.  Currently the
    program only looks for INDEX, INDEX.TXT, and 00_INDEX.TXT, so if you
    find other filenames or ones that don't load in correctly email them
    to me.  Don't forget to include the address of the server that you
    get them from so I can test the fixes.

2.  Cut, Copy, Paste, and Undo options don't do anything.  These may go away.
  
3.  Cancelling a transfer freaks the server out so that you have
    to disconnect.  The FTP RFC documents an ABORT command that is
    supposed to be useful for cancelling transfers, but it does not
    seem to work properly.  I checked several other FTP clients and
    they appear to have the same problem.

    NOTE: This is not as much of a problem since I added background
    downloading to build 009. If you cancel a background transfer, then
    it just kills the connection that the background transfer established
    and the main connection remains in tact.

4.  The small icons are hosed.  I was using an undocumented API call
    (ExtractIconEx) to retrieve the small icons, but when I upgraded to
    VC++ 4.1 it started corrupting memory so I had to take it out.  This
    should be fixed soon.

5.  You can drag and drop items from the list view back to itself.  Don't
    try this at home!

6.  If you rename or delete a folder, the tree view is not updated properly.

7.  Context menus do not reflect current status properly. (i.e. List view
    type, sort order, etc.)

8.	There are some problems associated with shutting down the program
    while it is busy doing something.  Expect to see a few GPF's while
	I get these worked out.


Planned Changes and Additions
-----------------------------

1.  Multiple download of all highlighted files.  Currently you can drop
    multiple files for uploading, but not downloading.

2.  Transfer of entire directory structures.

3.  Will probably add an option to the menu structure to allow you to
    load in an INDEX file manually, so you don't have to wait every time
    you change directories.

4.  Add drag drop support to tree view.  Currently only the list view
    does any drag and drop.

5.  Make recent file list represent recent connections.

6.  Add some sort of notification when an action fails, i.e. if the user
    doesn't have rights to rename a file.  This would be useful if you
    have the "FTP Log" pane sized small enough where you can't see what's
    going on.

7.  Add a way to save the current directory so that it will be used as
    the initial path the next time you log on to the current server.

8.  A help file and an install program is on the way.

9.  Add a menu option to change a link so that it is treated as a file,
    and possibly an option to change the default to treat all links as
    files.  If anyone knows of a simple way to diferentiate between
    file links and directory links, please clue me in!

10. Need to implement background uploading.

11. Add context menus to the Tree view.

