这个小程序用VC
++很方便地实现了FTP
功能。这只是个小测试程序,通过这个程序还可以扩展许多功能,如实现FTP
的下载文件等。在实现这个小程序之前,可用VC
+编写一个拨号上网的小程序,先实现拨号上网,再运行这个小程序。
以下是该程序的源代码和运行窗口。
在VC
++中创建一个基于对话框的应用程序,需要注意的是在创建此工程时,一定要选择Windows
Sockets
这一选项。创建的对话框结构如上图,并在对话框类的文件中加入#include
头文件,然后在对话框这个类的文件中加入下列函数,此函数是敲击Send
-Button 按钮发生的事件,主要是完成FTP
传送文件的功能,本程序中要传的文件应该放在本工程中。
void CFtptestDlg::OnSendButton()
{
CString host;
m_HostEdit.GetWindowText(host);
//m_HostEdit 是对话框中
FTP Host :Edit 控件的命名
CString user;
m_UserEdit.GetWindowText(user);
//m_UserEdit 是对话框中
User:Edit 控件的命名
CString password;
m_PasswordEdit.GetWindowText(password);
//m_PasswordEdit 是对话框中
Password:Edit 控件的命名
CString filename;
m_FileEdit.GetWindowText(filename);
//m_FileEdit 是对话中
SendFile:Edit 控件的命名
TRACE(": %s: %s: %s: %s\n",
host, user, password, filename);
CInternetSession session(AfxGetApp()
->m_pszAppName);
CFtpConnection *pConn=NULL;
pConn = session.GetFtpCon ?
nection(host,user,password);
if (pConn) {
if (!pConn ->PutFile(filename,filename)){
MessageBox("传送文件失败??");
} else {
MessageBox("传送文件成功!");
}
pConn ->Close();
delete pConn;
session.Close();
} else {
MessageBox("Cannot Connect");
}
}
本程序在中文Win95 操作系统、VC ++5.0 上编译、运行通过。