資源簡介
關于ftp的實現代碼,包括客戶端和服務器端

代碼片段和文件信息
/*/////////////////////////////////////////////////////////////////////
FTPclient.cpp?(c)?GDI?1999
V1.0.0?(10/4/99)
Phil?Anderson.?philip@gd-ind.com
Simple?FTP?client?functionality.?If?you?have?any?problems?with?it
please?tell?me?about?them?(or?better?still?e-mail?me?the?fixed
code).?Please?feel?free?to?use?this?code?however?you?wish?although
if?you?make?changes?please?put?your?name?in?the?source?&?comment?what
you?did.
Nothing?awesome?going?on?here?at?all?(all?sockets?are?used?in
synchronous?blocking?mode)?but?it?does?the?following
things?WinInet?doesn‘t?seem?to:
*?Supports?loads?of?different?firewalls?(I?think?I?don‘t
??have?access?to?all?types?so?they?haven‘t?all?been?fully
??tested?yet)
*?Allows?you?to?execute?any?command?on?the?FTP?server
*?Adds?10K?to?your?app?install?rather?than?1Mb?#;-)
Functions?return?TRUE?if?everything?went?OK?FALSE?if?there?was?an
error.?A?message?describing?the?outcome?(normally?the?one?returned
from?the?server)?will?be?in?m_retmsg?on?return?from?the?function.
There?are?a?few?error?msgs?in?the?app‘s?string?table?that?you‘ll
need?to?paste?into?your?app?along?with?this?file?&?FTPclient.h
If?you?created?your?app?without?checking?the?“Use?Windows?Sockets“
checkbox?in?AppWizard?you‘ll?need?to?add?the?following?bit?of?code
to?you?app‘s?InitInstance()
if(!AfxSocketInit())
{
AfxMessageBox(“Could?not?initialize?Windows?Sockets!“);
return?FALSE;
}
To?use:
1/?Create?an?object?of?CFTPclient.
2/?Use?LogOnToServer()?to?connect?to?the?server.?Any?arguments
not?used?(e.g.?if?you‘re?not?using?a?firewall)?pass?an?empty
string?or?zero?for?numeric?args.?You?must?pass?a?server?port
number?use?the?FTP?default?of?21?if?you?don‘t?know?what?it?is.
3/?Use?MoveFile()?to?upload/download?a?file?1st?arg?is?local?file
path?2nd?arg?is?remote?file?path?3rd?arg?is?TRUE?for?a?PASV
connection?(required?by?some?firewalls)?FALSE?otherwise?4th?arg
is?TRUE?to?upload?FALSE?to?download?file.?MoveFile?only?works?in
synchronous?mode?(ie?the?function?will?not?return?‘till?the?transfer
is?finished).?File?transfers?are?always?of?type?BINARY.
4/?You?can?use?FTPcommand()?to?execute?FTP?commands?(eg
FTPcommand(“CWD?/home/mydir“)?to?change?directory?on?the?server)
note?that?this?function?will?return?FALSE?unless?the?server?response
is?a?200?series?code.?This?should?work?fine?for?most?FTP?commands?
otherwise?you?can?use?WriteStr()?and?ReadStr()?to?send?commands?&?
interpret?the?response?yourself.?Use?LogOffServer()?to?disconnect
when?done.
/////////////////////////////////////////////////////////////////////*/
#include?“stdafx.h“
#include?“FTPSOCKET.h“
#include?“FTPClass.h“
#ifdef?_DEBUG
#undef?THIS_FILE
static?char?THIS_FILE[]=__FILE__;
#define?new?DEBUG_NEW
#endif
//////////////////////////////////////////////////////////////////////
//?Construction/Destruction
//////////////////////////////////////////////////////////////////////
//構造函數,變量初始化
CFTPclie
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????13630??2002-09-26?14:15??FTPClient\FTPClass.cpp
?????文件???????1279??2002-08-07?00:48??FTPClient\FTPClass.h
?????文件??????22568??2005-08-10?11:17??FTPClient\FTPSOCKET.APS
?????文件???????1898??2005-08-10?12:23??FTPClient\FTPSOCKET.clw
?????文件???????2199??2002-08-06?13:24??FTPClient\FTPSOCKET.cpp
?????文件???????4469??2002-08-07?00:59??FTPClient\FTPSOCKET.dsp
?????文件????????543??2002-08-06?13:24??FTPClient\FTPSOCKET.dsw
?????文件???????1357??2002-08-06?13:24??FTPClient\FTPSOCKET.h
?????文件?????115712??2005-08-10?12:23??FTPClient\FTPSOCKET.ncb
?????文件??????66048??2005-08-10?12:23??FTPClient\FTPSOCKET.opt
?????文件???????2779??2005-08-10?11:17??FTPClient\FTPSOCKET.plg
?????文件???????6991??2002-08-08?20:58??FTPClient\FTPSOCKET.rc
?????文件??????18185??2002-08-18?23:26??FTPClient\FTPSOCKETDlg.cpp
?????文件???????3565??2002-08-08?21:23??FTPClient\FTPSOCKETDlg.h
?????文件???????1614??2002-08-07?18:02??FTPClient\ListItem.cpp
?????文件????????691??2002-03-19?16:53??FTPClient\ListItem.h
?????文件???????3633??2002-08-06?13:24??FTPClient\ReadMe.txt
?????文件???????1462??2002-08-08?20:58??FTPClient\Resource.h
?????文件????????211??2002-08-06?13:24??FTPClient\StdAfx.cpp
?????文件???????1108??2002-08-06?19:04??FTPClient\StdAfx.h
?????文件???????1078??2002-08-06?13:24??FTPClient\res\FTPSOCKET.ico
?????文件????????401??2002-08-06?13:24??FTPClient\res\FTPSOCKET.rc2
?????目錄??????????0??2007-01-20?20:10??FTPClient\res
?????目錄??????????0??2007-01-20?20:10??FTPClient\Debug
?????目錄??????????0??2007-01-20?20:10??FTPClient
?????文件???????1003??2005-07-11?16:22??FTPServer\FTPserver\AboutDlg.cpp
?????文件???????1108??2002-03-18?11:55??FTPServer\FTPserver\AboutDlg.h
?????文件???????2656??2002-07-30?19:29??FTPServer\FTPserver\AddIPDlg.cpp
?????文件???????1260??2002-05-19?12:36??FTPServer\FTPserver\AddIPDlg.h
?????文件???????1406??2002-07-10?13:34??FTPServer\FTPserver\AddUserDlg.cpp
............此處省略88個文件信息
評論
共有 條評論