【问题标题】:How to use sftp from within an MS Access database module?如何在 MS Access 数据库模块中使用 sftp?
【发布时间】:2010-09-17 03:53:33
【问题描述】:

我需要在 Access 中创建一个简单的数据库来收集一些用户数据,这些数据将被加载到另一个数据库中以进行进一步报告。 Access db 中将有一个模块,当用户调用(可能通过单击按钮)时,它将向分隔文件输出查询。用户还需要一种机制(例如带有按钮的表单)来使用 sftp 轻松地将文件传输到远程服务器。有谁知道如何做到这一点?

【问题讨论】:

    标签: ms-access vba sftp


    【解决方案1】:

    如果您想完成此操作,只需通过批处理文件编写对 sftp 命令行客户端的调用即可。

    查看 VBA 中的 Shell() 函数。

    在表单上按钮的点击事件下添加代码:

    mySFTPCall = "sftp <insert your options here!>"
    Call Shell(mySFTPCall, 1)
    

    我以前使用它来直接跨网络共享复制文件等,以共享来自内部 Access DB 的数据。当然如果有必要你可以变得更花哨。

    【讨论】:

    • 如果您使用 ShellAndWait (mvps.org/access/api/api0004.htm),您将知道脚本何时完成。
    • @David -- 感谢 ShellAndWait 脚本创意——我需要这个选项。
    • @David - 好叫我的朋友!
    【解决方案2】:

    您可以使用我们的SFTPBlackbox (ActiveX Edition)

    【讨论】:

      【解决方案3】:

      我想你只需要找到一个 FTP COM 对象。然后,您应该能够在 Access 模块代码中实例化它。 dart.com 有一个,我相信还有更多(只是 Google FTP COM)。

      【讨论】:

        【解决方案4】:

        您可以对命令行应用程序(例如免费软件 MOVEit Freely)进行 shell 调用,以编写安全 ftp 传输脚本。我过去使用过它,它有一些不错的功能并且运行良好。

        MOVEit Freely 是一个免费的命令行 FTP/安全 FTP SSL (FTPS) 客户端,适用于 Windows Vista Business Edition、2003、XP、2000、ME 和 NT 4.0 系统。

        【讨论】:

        【解决方案5】:

        Chilkat 有一个与 COM/ActiveX 配合使用的 FTP 组件。它说它支持 FTP over SSL (FTPS),我认为它与 SFTP 相同。我以前在.Net 上使用过他们的一些其他产品,它们运行良好。他们提供免费试用,因此您可以下载并检查它们是否适合您。

        【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-01-31
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-11-29
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多