以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 请教:FTP代码上传文件失败,用管理器操作却正常,何故? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=95381) |
-- 作者:bahamute -- 发布时间:2017/1/18 10:33:00 -- 请教:FTP代码上传文件失败,用管理器操作却正常,何故? 以下为上传文件代码:每次都提示上传失败,但是用管理器却能上传成功,不知为何? 注:【使用server U】,该用户根目录从 FTP服务端设置为\\FTPData\\合同资料\\ 是否upload语句不正确? Dim ftp1 As New FtpClient ftp1.Host="10.127.158.96" ftp1.Account = "CommonUser01" ftp1.Password = "423" ftp1.UTF8 = True Dim dlg As New OpenFileDialog dlg.Filter= "影印文件|*.pdf;*.jpg" dlg.MultiSelect = False dlg.InitialDirectory = SpecialFolder.MyDocuments Dim fileName As String = "" If dlg.ShowDialog = DialogResult.OK Then fileName = dlg.FileName.SubString(dlg.FileName.LastIndexOf("\\")+1) If ftp1.Upload(dlg.FileName,"\\合同资料\\" & fileName)
= True Then Messagebox.show(dlg.FileName) Messagebox.show("\\合同资料\\" & fileName) Messagebox.show("上传完成!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information) Else Messagebox.show(dlg.FileName) Messagebox.show("\\合同资料\\" & fileName) Messagebox.show("上传失败!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information) Return Nothing End If End If
[此贴子已经被作者于2017/1/18 10:49:15编辑过]
|
-- 作者:有点色 -- 发布时间:2017/1/18 11:16:00 -- 1、ftp是否存在合同资料这个文件夹?必须存在
2、代码改一下,先测试效果
If ftp1.Upload("d:\\test.jpg", "/合同资料/test.jpg") = True Then |
-- 作者:bahamute -- 发布时间:2017/1/18 13:30:00 -- 经过反复测试,发现上传文件代码中,目标路径必须写上全路径才能成功,这是什么原因? ftp1.Upload(dlg.FileName,"d:\\FTPdata\\合同资料\\" & fileName) 明明已经从server u设置了登录用户的目录为 d:\\FTPdata\\合同资料\\
[此贴子已经被作者于2017/1/18 13:33:35编辑过]
|
-- 作者:有点色 -- 发布时间:2017/1/18 14:15:00 -- 你的ftp搭建有问题吧?你的虚拟路径设置有问题
http://jingyan.baidu.com/article/e52e36159c1ba140c70c517b.html
如果你是根据上面的帖子设置的,你要把虚拟路径设置成 / ,也就是你的虚拟路径是什么,你upload的路径就要写什么。 |
-- 作者:bahamute -- 发布时间:2017/1/18 14:30:00 -- 因为初次使用ftp,所以并没有设置虚拟路径,都是物理路径。 |
-- 作者:有点色 -- 发布时间:2017/1/18 14:44:00 -- 根据4楼设置一下。 |