0

我正在尝试从我的访问代码执行批处理文件。我使用以下代码:

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,所有其他方面都相同。

4

1 回答 1

0

放置FTPS.EXE在您的路径中应该可以解决问题。

于 2013-03-28T19:55:46.003 回答