CInternetSession sess(_T("My FTP Session"))
CFtpConnection* pConnect = NULL
try
{
// Request a connection to ftp.microsoft.com. Default
// parameters mean that we'll try with username = ANONYMOUS
// and password set to the machine name @ domain name
pConnect = sess.GetFtpConnection(_T("ftp.microsoft.com"))
// use a file find object to enumerate files
CFtpFileFind finder(pConnect)
// start looping
BOOL bWorking = finder.FindFile(_T("*"))
while (bWorking)
{
bWorking = finder.FindNextFile()
_tprintf_s(_T("%s\n"), (LPCTSTR)finder.GetFileURL())
}
}
catch (CInternetException* pEx)
{
TCHAR sz[1024]
pEx->GetErrorMessage(sz, 1024)
_tprintf_s(_T("ERROR! %s\n"), sz)
pEx->Delete()
}
// if the connection is open, close it
if (pConnect != NULL)
{
pConnect->Close()
delete pConnect
}
你好,1、方法1、直接写相对目录啊。假如你服务器ftp根目录是“C:\A文件夹”,你想传到“C:\A文件夹\B文件夹”下,就传参数“/B文件夹”。前提是你ftp连接的当前目录是根目录。
2、服务器上直接写相对目录不是更简单,判断目录是否存在,不存在创建后在用SetCurrentDirectory()就行了。
可以自己写个算法 把用户名和密码加密下这样泄露的可能性小点
这个账户也只给下载的权限 其他上传 删除 列表什么的权限都不要写
这样就算别人拿到了密码也不能干什么。也不能列表 FTP里有什么也看不到
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)