Foxtable(狐表)用户栏目专家坐堂 → [求助]没上传成功


  共有3290人关注过本帖树形打印复制链接

主题:[求助]没上传成功

帅哥哟,离线,有人找我吗?
liujywwy
  1楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:633 积分:4034 威望:0 精华:0 注册:2014/6/23 10:27:00
[求助]没上传成功  发帖心情 Post By:2015/3/11 16:01:00 [只看该作者]

上传按钮代码如下。觉的红色代码有问题,ml的值应该不是最后创建文件夹的目录。这个怎么改?
Dim dlg As new OpenFileDialog
If dlg.ShowDialog = DialogResult.OK Then
    Dim xg As Integer = dlg.FileName.LastIndexOf("\")
    Dim fname As String = dlg.FileName.SubString(xg + 1)   '获取所选文件名称
    
    
    Dim ftp As new FTPClient
    ftp.Host = "192.168.1.35"
    ftp.Account = "tester"
    ftp.Password = "tester"
    
    Dim lj As String = "/待用户现场确认版本_产线禁止使用/2015/" & Tables("临时版本跟踪表").current("临时版本编号") & "(" & Tables("临时版本跟踪表").current("客户") & "_" & Tables("临时版本跟踪表").current("博达机型") & ")"
    Dim ml As String = lj  & "/" & Format(Date.now, "yyyy-MM-dd HH-mm-ss")
    msgbox(ml)
    
    Dim sts As List(of String) = ftp.GetFileList(ml)   '获取当前目录的文件列表
    
    If sts.Count > 0 Then
        For Each st As String In sts
            If st = fname Then
                MessageBox.Show("服务器上存在同名文件!","请注意")
                Return   
            End If
        Next
        
        e.Form.text = "所选文件上传中...."
        If ftp.Upload(dlg.FileName,ml & "\" & fname) = True Then  '若成功上传
            Functions.Execute("刷新ListView")
            e.Form.text = "版本目录文件list"
            MessageBox.Show("恭喜你上传成功!","BDSMS提示您")
        Else
            MessageBox.Show("不好意思,所选文件上传失败!,请联系刘基永1034","BDSMS提醒你")
            e.Form.text = "版本目录文件list"
        End If
    End If
End If

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/3/11 16:04:00 [只看该作者]

 看不懂你什么意思,你ml的路径是根据时间在变的啊,每一次都不同啊,你必须加入对应的文件夹,才能把文件上传进去那个路径啊

 回到顶部
帅哥哟,离线,有人找我吗?
liujywwy
  3楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:633 积分:4034 威望:0 精华:0 注册:2014/6/23 10:27:00
  发帖心情 Post By:2015/3/11 16:18:00 [只看该作者]


ml就是随时间变化的文件夹。我现在就是不知道如何把之前afterload创建的文件夹名取出来。在这个文件夹下上传文件。

图片点击可在新窗口打开查看此主题相关图片如下:ml.png
图片点击可在新窗口打开查看


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/3/11 16:22:00 [只看该作者]

 用变量存储

 

Vars("最后一个文件夹") = "d:\test"


 回到顶部
帅哥哟,离线,有人找我吗?
liujywwy
  5楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:633 积分:4034 威望:0 精华:0 注册:2014/6/23 10:27:00
  发帖心情 Post By:2015/3/11 16:51:00 [只看该作者]

Vars("最后一个文件夹") = "d:\test"
这个是指定了文件夹,并没有动态获取最后一个文件夹吧。
afterload创建文件夹的代码如下:先创建lj,然后是ml。现在就是想知道如何把最后创建的ml作为上传的文件夹。

ftp.ChangeDir("/待用户现场确认版本_产线禁止使用/2015")   '进入到待用户现场确认版本_产线禁止使用\2015目录
Dim lj As String = "/待用户现场确认版本_产线禁止使用/2015/" & Tables("临时版本跟踪表").current("临时版本编号") & "(" & Tables("临时版本跟踪表").current("客户") & "_" & Tables("临时版本跟踪表").current("博达机型") & ")"
If ftp.DirExists(lj) = False Then   '不存在临时版本编号目录时先创建临时版本编号目录
    ftp.MakeDir(lj)
End If
Dim ml As String = lj  & "/" & Format(Date.now, "yyyy-MM-dd HH-mm-ss")
If ftp.DirExists(ml) = False Then  '按照系统时间来创建时间目录
    ftp.MakeDir(ml)
End If

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/3/11 16:53:00 [只看该作者]

 呃,能不能变通下???

 

Vars("最后一个文件夹") = ml


 回到顶部
帅哥哟,离线,有人找我吗?
liujywwy
  7楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:633 积分:4034 威望:0 精华:0 注册:2014/6/23 10:27:00
  发帖心情 Post By:2015/3/12 10:46:00 [只看该作者]

还是没有成功上传,好像代码没执行。
afterload代码:
ftp.ChangeDir("/待用户现场确认版本_产线禁止使用/2015")   '进入到待用户现场确认版本_产线禁止使用\2015目录
Dim lj As String = "/待用户现场确认版本_产线禁止使用/2015/" & Tables("临时版本跟踪表").current("临时版本编号") & "(" & Tables("临时版本跟踪表").current("客户") & "_" & Tables("临时版本跟踪表").current("博达机型") & ")"
If ftp.DirExists(lj) = False Then   '不存在临时版本编号目录时先创建临时版本编号目录
    ftp.MakeDir(lj)
End If
Dim ml As String = lj  & "/" & Format(Date.now, "yyyy-MM-dd HH-mm-ss")
If ftp.DirExists(ml) = False Then  '按照系统时间来创建时间目录
    ftp.MakeDir(ml)
End If
vars("zhygwjj") = ml

上传代码:
Dim sts As List(of String) = ftp.GetFileList(Vars("zhygwjj"))   '获取当前目录的文件列表
    
    If sts.Count > 0 Then
        For Each st As String In sts
            If st = fname Then
                MessageBox.Show("服务器上存在同名文件!","请注意")
                Return   
            End If
        Next
        
        e.Form.text = "所选文件上传中...."
        If ftp.Upload(dlg.FileName,Vars("zhygwjj") & "\" & fname) = True Then  '若成功上传
            Functions.Execute("刷新ListView")
            e.Form.text = "版本目录文件list"
            MessageBox.Show("恭喜你上传成功!","BDSMS提示您")
        Else
            MessageBox.Show("不好意思,所选文件上传失败!,请联系刘基永1034","BDSMS提醒你")
            e.Form.text = "版本目录文件list"
        End If
    End If


图片点击可在新窗口打开查看此主题相关图片如下:全局变量.png
图片点击可在新窗口打开查看



 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/3/12 10:49:00 [只看该作者]

 最基本的调试,是你加入msgbox,弹出对应的值,和看有没有执行对应的代码啊。

 回到顶部
帅哥哟,离线,有人找我吗?
liujywwy
  9楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:633 积分:4034 威望:0 精华:0 注册:2014/6/23 10:27:00
  发帖心情 Post By:2015/3/12 10:54:00 [只看该作者]

没有执行
msgbox(Vars("zhygwjj"))返回的也是最后创建的文件夹。
但是之后的上传代码没有执行。

    If sts.Count > 0 Then
        For Each st As String In sts
            If st = fname Then
                MessageBox.Show("服务器上存在同名文件!","请注意")
                Return   
            End If
        Next
        
        e.Form.text = "所选文件上传中...."
        If ftp.Upload(dlg.FileName,Vars("zhygwjj") & "\" & fname) = True Then  '若成功上传
            Functions.Execute("刷新ListView")
            e.Form.text = "版本目录文件list"
            MessageBox.Show("恭喜你上传成功!","BDSMS提示您")
        Else
            MessageBox.Show("不好意思,所选文件上传失败!,请联系刘基永1034","BDSMS提醒你")
            e.Form.text = "版本目录文件list"
        End If
    End If

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/3/12 10:57:00 [只看该作者]

改成这样

 

        For Each st As String In sts
            If st = fname Then
                MessageBox.Show("服务器上存在同名文件!","请注意")
                Return   
            End If
        Next
        
        e.Form.text = "所选文件上传中...."
        If ftp.Upload(dlg.FileName,Vars("zhygwjj") & "\" & fname) = True Then  '若成功上传
            Functions.Execute("刷新ListView")
            e.Form.text = "版本目录文件list"
            MessageBox.Show("恭喜你上传成功!","BDSMS提示您")
        Else
            MessageBox.Show("不好意思,所选文件上传失败!,请联系刘基永1034","BDSMS提醒你")
            e.Form.text = "版本目录文件list"
        End If

 回到顶部
总数 11 1 2 下一页