ftp_source_code
所属分类:Windows编程
开发工具:Visual C++
文件大小:377KB
下载次数:37
上传日期:2009-07-02 10:03:00
上 传 者:
kevinis
说明: FTP客户端源码 附带简单GUI界面 常用的功能都实现了 不支持加密和FXP
(Collateral source FTP client GUI interface brief)
文件列表:
ftp_source_code\changes.txt (2658, 1995-09-14)
ftp_source_code\login.c (4077, 1995-07-01)
ftp_source_code\version.h (1139, 1995-07-01)
ftp_source_code\wsftp32axp.zip (98710, 1995-01-31)
ftp_source_code\wsftp32m.zip (86787, 1995-09-14)
ftp_source_code\wsftp32ppc.zip (67057, 1995-01-31)
ftp_source_code\ws_child.c (16409, 1995-01-31)
ftp_source_code\ws_con.c (34287, 1994-10-25)
ftp_source_code\ws_debug.c (4810, 1995-01-31)
ftp_source_code\ws_debug.inc (2907, 1995-01-31)
ftp_source_code\ws_error.c (4545, 1993-11-12)
ftp_source_code\ws_ftp.def (411, 1994-12-15)
ftp_source_code\ws_ftp.doc (7514, 1994-04-26)
ftp_source_code\ws_ftp.h (9926, 1995-01-31)
ftp_source_code\ws_ftp.ico (766, 1993-11-12)
ftp_source_code\ws_ftp.ini (3703, 1994-09-27)
ftp_source_code\WS_FTP.RC (9121, 1995-01-19)
ftp_source_code\ws_ftp.res (7400, 1994-10-25)
ftp_source_code\WS_FTP.VCW (1758, 1994-10-26)
ftp_source_code\ws_ftp.wsp (719, 1994-10-26)
ftp_source_code\ws_ftp32.exe (115200, 1995-07-01)
ftp_source_code\ws_ftp32.mak (10029, 1995-07-01)
ftp_source_code\ws_glob.c (5979, 1994-09-25)
ftp_source_code\ws_glob.h (6626, 1994-09-25)
ftp_source_code\ws_host.c (44833, 1995-06-05)
ftp_source_code\ws_ip.c (5766, 1994-09-25)
ftp_source_code\ws_main.c (69733, 1995-02-01)
ftp_source_code\ws_paint.c (5657, 1994-06-08)
ftp_source_code\ws_read.me (18739, 1994-09-25)
ftp_source_code\ws_sock.ico (766, 1993-07-01)
ftp_source_code\ws_xbug.ico (766, 1993-11-11)
ftp_source_code (0, 2008-04-03)
NT port comments by L. Kahn
You need to customize/and copy the ws_ftp.ini file to your winnt directory.
The Windows NT port was much harder than expected, I have been slowly
fixing problems and making enchancements to the system. The following is a
list of some of the changes made that I can remember. If you want to
actually look at all the changes get the original source from 129.29.***.246.
added support for NTFS long file names. The system will not truncate on
NTFS up to 220 char. names. with a max path name of 140 chars.
On a fat file system it will truncate/rename to 8.3. (now only truncates
on fat on win nt 3.1 since on 3.5 long names are now supported)
fixed problems where lparam and wparam were incorrectly used for
messages and all the dialgs were screwed up. Also changed all the api
and dialog entries to use the new win32 format.
fixed problem with the selection of a new setup name not filling in the
remainder of the fields. Changed lparam which should have been wparam.
added support to get other ftp server types by issueing the SYST
command. The newer version of this program (source unavailable, see below does
this). Also added support for new ftp server types such as NT.
Added a new system option -d which enables the debugging window,
otherwise it does not pop up as before.
fixed problem with doing a strcpy and not checking for a null variable
that caused an access violation under NT. Also fixed problem with newer
version of qvt/winsock ftp server.
Added support so that double clicking on a local file uploads it, double
clicking on a remote file downloads it. By default you had to use the
-> or <- arrows. There was a problem with the param. used for double
clicking, howord(lparam) instead of hiword(wparam) was being used for
the LBN_DBLCLK message.
fixed dialog box routines since makeprocinstance and freeprocinstance is
not necessary under win32.
fixed problem with vax vms where when you switch to an empty directory there is no ..
to switch back. This is still even broken in current 16 bit version.
changed throughput messages on upload/download so that if it is over 1k it
prints out stats in K/sec rather than bps.
NOTES: There is a newer version of this program available for windows 3.1.
It seems to have addressed many of the problems I have fixed and other
enhancements. Unfortunately, when I sent a message to
the original author describing the problems porting and all the fixes I had
made, he didn't respond. The latest source available for this program
is as of DEC. 1993 and this is the version I used as a starting point.
It appears the author does not want to make a newer source available
since I asked for this and he did not respond.
Notes: on our new version of the solaris ftp server there is a bug when
issueing the remotehelp command. It hangs. This program normally uses this
command to try and figure out the server commands. IT will hang if you attempt
to connect to a version of the solaris server that has this problem. To get
around this I have added a type solaris-unix set it to this and everything
should work fine. IF you don't believe me try the nt native ftp app and issue
the remotehelp command and the same problem will occur. i.e it will hang.
(note this only occurs on solaris 5.2 it is fixed on solaris 5.3 it happened
because the server was not sending the terminating line)
If other problems are found, please let me know at kahn@drcoffist.com
or 71534,600 on compuserve. No promises but as I have time available I
will try to look at specific problems with the NT version. If someone
else makes fixes/changes please forward me a copy of the updated source.
Thanks and good luck
larry kahn
910-630-0412
kahn@kahn.pdial.interpath.net or kahn@drcoffsite.com or kahn@csn.org
71534,600 on compuserve
newer version changes (06 94)
fixed stuff so fat partitions on nt daytona work with long file names.
Also now support names such as name.name.name
(on nt 3.1 fat it still will truncate names to 8.3)
Fixed startup parameters so that if you start up ws_ftp with the command
ws_ftp hostname:path/filename where there can be additional / in the path it
will automatically sign on with user name anonymous and download the file.
This is the behavior in the newer 16 bit version of ws_ftp and I'm mimicking
it here so that you can interface with other tools such as warchie for instance.
This also allows you to automatically use ws_ftp to download files as long
as anonymous is enabled on the remote system. It would not be hard to also
add support for username password on the command line instead of anonymous logins
if enough people are insterested I will implement it.
On installation also copy the file ws_ftp.ini to your winnt directory.
added muti-threading in NT so that while remote operations are pending
local operations can be performed. This also enables message processing
to happen during long remote operations so that the window is not all
screwed up and you can now shrink it during a download
Changed display to view
added an abort button but cannot get aborted remote operations to
work reliably so for no no-oped out.
Updated connect/close buttons so that when relevant they are enabled or
disabled.
Added text edit field boxes for directory selection like on the 16 bit
newer version. However for now cannot figure out how to interpret if a
return key is pressed so you will have to click on another button or
in the listing windows to get it to fire off after changing the text (ie you will have to change
the focus. Note that this is case sensitive for the remote end because
many unix system are case sensitive and also sensitive to whether or not
the . is on a file name.
Also fixed a problem with vms files since fat (on daytona) now supports the entire
file name is was downloading files like abc.de;1 ... Got rid of the
final ; version number info (even though this may someday be desireable)
it is a pain.
new version 06/29/94
finally got the abort code marginally working
had to wait for correct response on control socket if this does not
occur withing 15 seconds times out and prints a message that you may
need to close/exit the app since the abort failed.
You can now abort during downloads or uploads. A warning is printed out
since many servers do not handle the abort correctly and will abort but
subsequent operations may not work. IF this happens you can enable debuggin
by running ws_ftp32 -d and send me the log. However, for many servers
there is nothing I can do as is evident by this working on other servers.
If you abort during a remote directory operation you will not get the directory
and will have to execute the change dir command to get a directory listing.
Also fixed stuff so when aborting it will close an open download file so it
can be deleted.
Also fixed a bug in the read routine that would hang ws_ftp because it
thought a return value = 0 when the server didn't return anything meant
continuation.
new version 10/06/94
Still works on either NT 3.1 or daytona NT 3.5
Will not work on windows under win32s since it uses multi-threads.
added a retries box to host dialog and to the ws_ftp.ini
This field contries the number of retries for loggin on to a site.
It can be used so that you can keep trying automatically all day et.,
to log onto difficult sites such as cica that have a limited number of
connections. Because this could take a while it will ring
(asterisk sound) when connection
is complete if you have the bell enabled in the options menu, or ding
(exclamation sound) if the connection fails after a certain number of retries.
Also added a mirror or download/upload directory and subdirectories function.
Thanks for the idea Patty.
This function will download or upload an
entiry directory tree(s). Now you can select more than one directory in the
local or remote directory window. If you try to do this and then select the
chgdir button an appropriate error message will appear. However, if you select
at least one legal directory (ie not [-a-] or ..) and also have no files
selected (file selection overrides directory selection) and then hit either
the upload or download arrows (--> or <--) all the files in
the directory or directories selected and subdirectories will be downloaded or
uploaded. Directories will be created along the way if necessary. At the
end of this entire operation a status message will be printed telling you how
many files were transfered and how many directories were created and the overall
throughput. NOTE: You cannot do any local operations while this mirror operation
is processing since both the remote and local dir windows are used, for this
reason these windows and the local buttons and selection field
are tuned off during the operation. The remote buttons don't have to
be turned off since there is already a check in place to only allow 1
remote operation at a time. Also you can get into an infinite loop
if copying directories from you machine back to your own machine and the
form and to directories coincide. Ie if copying from e:\net to e:\net\test you
will put yourself in an endless loop. I warned you...
Also If you can't figure out a way to easily turn off the last selected item
in a list (necessary so that you can de-select all files to select only directories
to start the mirror operation), you need to hit the cntrl key and then
select the last item with the mouse.
I have also turned off (hidden) the remote and local dir windows and file list
windows, and disabled the local action buttons during a mirror operation
since these windows are used and if the user selected something in one
of them or did some operation this would screw up the mirror operation.
They will be turned back on at the end of the operation or after aborting.
I have also added new boxes on the host dialog popup for ftp server port.
There were a few requests for this to enable connection to ftp servers
that use non-standard ports. The default is still the normal port (21). This
setting is also saved in the ws_ftp.ini file just like the new retries setting.
Since Ive put quite a lot of effort into this new version donations will gladly
be accepted. Also I'm thinking of an x-windows unix version of the program
if interested drop me a line.
larry kahn
6550 countryside drive
fayetteville, nc. 28311
910-630-0412
kahn@kahn.pdial.interpath.net or kahn@drcoffsite.com or kahn@csn.org
71534,600 on compuserve
Addendum:
I know the user has also done a port of wsftp to windows NT,, he
however will not respond to any email I have sent him about the bugs I
encountered and fixed/etc. I did send him my original port to nt...
Anyway I believe my version is better than his as with my multi-threading
I can do a local operation while a remote one is pending and also resize/move
the window around. this cannot be done on his version ported to NT...
and also the new retries and mirror directory function.
See for yourself what you think... I have put my version up here since the
authors port is here and I thought that you may want to compare..
larry kahn
updates 10/94
as per a users recommendation the wait cursor was changed from an hourglass to
one which indicates better that operations can occur when others are pending
also after a little work a makefile for an AXP version is provided along
with an AXp excutable. Since not much has really changed other than this
the version number has not been updated for now.. Also note that you can
run multiple copies of wsftp32 without any problems... This is not made
clear anywhere in the documentation....
In the cards resizing of the dir/file windows.... Any other user comments
welcome....
updates
10/25 version
found bug with very long file names ie. over 35 chars that would cause
them not to be sent correctly or cause an access violation..
fixed the problem.
12/15 version
fixed bug with case preservation so sends files in both upper and lower
case. This was necessary so that when going to unix systems case would
be preserved. Previously everything was lower case while with microsoft
ftp puts everything in upper case.
Added support for os2 ftp server new type..
new makefile and recompiled with vc++ 2.0 for nt.
12/26 version
Noticed that for unix links it was displaying the eventual path ie
test -> /bs/test
it would display /bs/test
this was confusing, also for a link to ./somename or ../somename
it would not display anything.
Changed code so it now displays the link name instead of the final path
and also works correctly with links to .. and .
1/19/95 version
it was brought to my attention that no matter how many files you
selected it only processed 256. This turned out to be the size of the
selection array... Changed this max number of files to process is now
12000. Hopefully this should be enough for most people.....
Thanks to
Ladislav Rudisar
Charles University
Czech Republic
for bringing this to my attention...
NOTE: NExt version will contain a PPC executable of wsftp32
Hopefully I will get the alpha version recompiled also...
(axp version is out of date till I get someone to recompile it.)
7/1/95 new version that
now supports being called with a url such as
ftp://hostname/directory/file.zip
which will automatically download this file... this allows it to be called from imail
or other applications that pass url's
it also still supports the old auto startup style as called from wsarchie...
9/14/95 finally got a mips version now we have all platforms although
the alpha is out of date...
thanks to Holger Liebig for the mips recompile...
近期下载者:
相关文件:
收藏者: