我在.NET中使用Tectia作为SFTP客户端。不幸的是,Tectia没有为SFTP进程提供.NET API。
我从3个地方运行以下脚本。我正在使用System.Diagnostics.Process
来运行以下操作。类似的东西:
Process newProcess = new Process();
newProcess.StartInfo.FileName = "sftpg3";
newProcess.StartInfo.Arguments = "sftpg3 -K "C:\publicKey.com" -B "F:\FileToExecute.txt" TESTAO@sp01ftp"
一个来自命令行,另一个来自我的.Net webapplication(在IIS中托管),最后来自.Net桌面应用程序。
该脚本在命令行和桌面应用程序中运行良好,但不适用于Web应用程序。返回码为4,表示与远程SSH服务器的连接不起作用。
以上所有内容都在安装Tectia的同一台机器上运行。
sftpg3 -K "C:\publicKey.com" -B "F:\FileToExecute.txt" TESTAO@sp01ftp