Const OREMOTE = "banben\" ' 首先定义ftp的目录和帐号密码以及地址
Const USERNAME = "*"
Const PASSWORD = "*"
Const HOSTNAME = "*"
Dim session
Dim fso
Dim ftp
Dim oID
Dim oFileName
Dim kehu
Dim banbenhao
Const local = "C:\"
Set fso = CreateObject("Scripting.FileSystemObject")
Set ftp = CreateObject("ChilkatFTP.ChilkatFTP")
' If Not fso.FolderExists("C:\")
' Then fso.CreateFolder("C:\")
' End If
ftp.Username = USERNAME
ftp.Password = PASSWORD
ftp.Hostname = HOSTNAME
OK =
ftp.Connect ' 链接ftp
ftp.ChangeRemoteDir OREMOTE ' 开始进入ftp的制定目录。
oID = GetfieldValue("project").GetValue ' 这里的字段本来应该是取cq里面的某个字段的值,由于在外部调试就直接赋值了
ftp.CreateRemoteDir oID ' 如果需要新建就用这句,如果是已有的目录来变更当前路的话就用下句
ftp.ChangeRemoteDir oID
kehu = GetfieldValue("kehudaihao").GetValue
ftp.CreateRemoteDir kehu
ftp.ChangeRemoteDir kehu
banbenhao = GetfieldValue("banben").GetValue
ftp.CreateRemoteDir banbenhao
ftp.ChangeRemoteDir banbenhao
king =
ftp.MGetFiles("*.*", local) ' 用mgetfiles来获得ftp指定目录中的所有文件,copy到上面定义的目录中
ftp.Disconnect
fso.DeleteFile local & "*.html" ' 删除html文件,主要是软件版本报告
fso.DeleteFile local & "*.xls" ' 删除excle文件,主要是测试报告
fso.DeleteFile local & "*.doc" ' 删除word文件,主要是软件版本说明书
fso.DeleteFile local & "*.rar" ' 删除以前压缩的文件
fso.DeleteFile local & "*cs_*.txt" ' 删除config spec纪录文件
Dim Rarexe ' WinRar执行文件地址
Dim Source ' 压缩前原始文件
Dim Target ' 压缩后目标文件
Dim FileString ' Shell指令中的字符串
Dim Shell
Dim RetCode
Rarexe="C:\WinRAR.exe" ' 这里调用winrar。注意文件的存在性
Source="C:\*PCB01*.bin c:\BPLGUInfoCustom* c:\scat*.txt" ' 压缩文件原始位置
Target="C:\"&banbenhao&".rar" ' 压缩文件目标位置
FileString = Rarexe & " m " & " -m5 " & Target & " " & Source ' 这里开始压缩打包,m是删除文件压缩,-m5是最好的压缩方式
Set Shell = CreateObject("WScript.Shell")
RetCode = Shell.Run(FileString,1, True)
ftp.Username = USERNAME
ftp.Password = PASSWORD
ftp.Hostname = HOSTNAME
OK = ftp.Connect
ftp.ChangeRemoteDir OREMOTE
oID = GetfieldValue("project").GetValue
ftp.CreateRemoteDir oID
ftp.ChangeRemoteDir oID
kehu = GetfieldValue("kehudaihao").GetValue
ftp.CreateRemoteDir kehu
ftp.ChangeRemoteDir kehu
banbenhao = GetfieldValue("banben").GetValue
ftp.CreateRemoteDir banbenhao
ftp.ChangeRemoteDir banbenhao
oFileName = fso.Getfile ("C:\"&banbenhao&".rar")
oAttachment.Load oFileName
fso.CopyFile oAttachment.FileName, OTEMP
OK =
ftp.PutFile(oFileName, fso.GetFileName(oFileName))
ftp.Disconnect
Set oAttachments = Nothing
Set oAttachField = Nothing
Set oAttachFields = Nothing
Set ftp = Nothing
Set fso = Nothing
Set session = Nothing
红色之前部分运行正常
估计出错部分就是红色标记的
但查不出问题