Dim zipfl As String = "E:\开发的程序\软件授权\Reports\6D4C31081DC5704F7A23BBA17AAA8701.zip"
If FileSys.FileExists(Zipfl) Then '再次检查备份文件是否存在
Messagebox.Show("zip文件创建成功,即将上传FTP服务器!", "提示")
'上传zip文件到FTP
Dim ftp1 As New FtpClient
ftp1.Host = "***"
ftp1.Account = "***"
ftp1.Password = "***"
ftp1.RootDir = "\web"
If ftp1.Connected = False Then'如果FTP没有连接
If ftp1.Connect Then '连接FTP
msgbox(Zipfl)
msgbox("\sn\" & filesys.GetName(Zipfl))
If ftp1.Upload(Zipfl, "\sn\" & filesys.GetName(Zipfl), True) = True Then '如果上传成功
Messagebox.show("已上传至FTP服务器,请通知客户下载!", "提示", MessageBoxButtons.OK)
Else
Messagebox.show("上传至FTP服务器失败!", "提示", MessageBoxButtons.OK)
End If
Else
Messagebox.show("连接FTP失败,请手动上传!", "提示", MessageBoxButtons.OK)
End If
End If
Else
Messagebox.Show("zip文件创建失败,请手动创建后再上传至FTP服务器!", "提示")
End If
此主题相关图片如下:微信截图_20220926065606.png

此主题相关图片如下:微信截图_20220926065626.png

如果将打开FTP管理器代码加上并按照以下代码顺序:
ftp1.OpenManager() '如果连接成功,打开FTP客户端
If ftp1.Upload(Zipfl, "\sn\" & filesys.GetName(Zipfl), True) = True Then '如果上传成功
Messagebox.show("已上传至FTP服务器,请通知客户下载!", "提示", MessageBoxButtons.OK)
Else
Messagebox.show("上传至FTP服务器失败!", "提示", MessageBoxButtons.OK)
End If
执行结果:
第1步、能打开FTP管理器,选择任意目录,无需其他操作,直接关闭FTP管理器;
第2步、提示"已上传至FTP服务器,请通知客户下载!";
此主题相关图片如下:微信截图_20220926072308.png

第3步、从FTP服务器查看,确实已经上传成功,如下图:

此主题相关图片如下:微信截图_20220926081527.png

昨天反反复复测试了一下午,始终不得其解,麻烦老师帮忙看一下,谢谢!
再次测试:
msgbox("1" & ftp1.CurrentDir) '显示结果:1/
Dim dls As List(Of String)
dls = ftp1.GetDirList("")
For Each dl As String In dls
Output.Show(dl)
Next ’显示结果:Backup
LOG
WEB
ftp1.ChangeDir("\web\sn")
msgbox("2" & ftp1.CurrentDir) '显示结果:2/
ftp1.OpenManager() '如果连接成功,打开FTP客户端
msgbox("3" & ftp1.CurrentDir) '显示结果:3/web/sn(所选文件夹名称)
[此贴子已经被作者于2022/9/26 8:47:25编辑过]