我正在尝试从访问代码中执行批处理文件。我使用以下代码:
Open vPath & "\FtpComm.txt" For Output As fNum
Connexion (fNum) 'function printing connexion info
Print #fNum, "put " & vFile & " Temp.mdb" 'vFile = filename + full path
Deconnexion (fNum) 'function printing deconnexion info
Close fNum
Open vPath & "\doFtp.bat" For Output As batFileHandle 'vPath = full path
Print #batFileHandle, "ftps -a -s:" & vPath & "\FtpComm.txt >" & vPath & "\output.txt"
Close batFileHandle
RetVal = ExecCmd(vPath & "\doFtp.bat")
Public Function ExecCmd(cmdstr As String) As Long
Dim wsh As Object
Set wsh = CreateObject("Wscript.Shell")
ExecCmd = wsh.Run(cmdstr, 0, True)
End Function
不执行批处理文件,但会创建一个空的output.txt文件。 我使用完全相同的代码为ftp.exe而不是ftps.exe,它没有问题。 正确创建批处理文件,当我手动执行它时,它工作正常。 我不明白在MOVEit Freely(ftps.exe)的文档中有什么变化,他们说你只需要将ftp改成ftps,所有其他方面都是一样的。
有人能帮帮我吗?这非常迫切!
答案 0 :(得分:0)
在您的路径中放置FTPS.EXE
可以解决问题。