任何人都知道如何使用Tamir Gal的SharpSSH从SFTP服务器上删除文件?我已经能够完成其他功能,但删除。提前致谢。如何使用SharpSSH以编程方式从SFTP服务器中删除文件?
回答
要完成此操作,您需要修改SharpSSH程序集以显示所需的功能。
获得源代码,并打开$ \ SharpSSH-1.1.1.13.src \ SharpSSH \ Sftp.cs
插入下面的课结束前行代码:
public void Delete(string path)
{
SftpChannel.rm(path);
}
重新编译并在您的项目中引用重新编译的DLL。您现在可以删除SFTP服务器上的文件。
谢谢!偶然发现,它完美的作品。对于任何想要自行编译的用户来说,使用下面的构建后ILMerge命令最终会带来一个名为SharpSSH.dll的方便程序:'ilmerge/target:library/out:“$(TargetDir) SharpSSH.dll“/ v2”$(TargetDir)Tamir.SharpSSH.dll“”$(TargetDir)DiffieHellman.dll“”$(TargetDir)Org.Mentalis.Security.dll“' – mattmc3 2010-10-20 13:02:49
也帮助了我。非常感谢!! – Vbp 2013-08-19 20:33:35
那么你也可以使用SshExec类,然后使用“RunCommand”方法执行“RM”命令。这样你就不必重新编译并建立一个新的dll。
谢谢!这使我免于修改图书馆。 – 2011-01-25 11:06:38
的SshExec类并没有为我工作,但有点神奇的反思工作:
var prop = sftp.GetType().GetProperty("SftpChannel", BindingFlags.NonPublic | BindingFlags.Instance);
var methodInfo = prop.GetGetMethod(true);
var sftpChannel = methodInfo.Invoke(sftp, null);
((ChannelSftp) sftpChannel).rm(ftpPath);
使用塔米尔的DLL我会建议使用下面的代码删除。这样,你不需要修改Tamir的dll,而下面的代码可以写在你的类中。
string fromFile = "https://stackoverflow.com/a/b/MyFile.txt"
SshExec se = new SshExec(host, username, password);
se.Connect(port);
se.RunCommand("rm " + fromFile);
- 1. 使用SharpSSH从SFTP服务器下载文件?
- 2. 如何以编程方式从pdf文件中删除密码?
- 3. 如何以编程方式从DDMS中删除文件?
- 4. 如何以编程方式删除BlackBerry中的服务预订?
- 5. 如何以编程方式从服务
- 6. 从服务器上自动删除SFTP上传的文件
- 7. 如何以编程方式从grails中删除控制器?
- 8. 如何从使用PHP的服务器中删除文件?
- 9. 以编程方式从TFS2012删除/删除TestSuite使用API
- 10. 在JSP中删除按钮以从服务器删除文件
- 11. 如何以编程方式删除Android中的.3gp文件
- 12. 以编程方式从服务器检索更新的文件
- 13. 从远程服务器到本地服务器的Sftp文件
- 14. 如何使用PHP从SFTP服务器下载文件
- 15. 如何以编程方式使用c#从Word文档中删除一行?
- 16. 以编程方式删除具有目录服务的用户
- 17. 如何以编程方式删除layout_marginStart
- 18. 如何以编程方式删除AlertDialog
- 19. 如何以编程方式从服务器下载文件夹到手机?
- 20. 如何从Web浏览器控件中以编程方式删除HTML元素?
- 21. 如何以编程方式真正干净删除文件?
- 22. 如何以编程方式从COM +应用程序中删除COM +组件
- 23. 如何以编程方式从服务器登录网站
- 24. 如何从Ubuntu服务器以编程方式登录
- 25. 如何以编程方式从HLDS读取服务器日志?
- 26. 如何以编程方式从MS Office文件中删除元数据?
- 27. 如何以编程方式从eclipse构建路径中删除文件?
- 28. 使用SharpSSH从SFTP获取文件大小
- 29. 如何以编程方式从System.Net.Mail.MailMessage中删除SMTP标头?
- 30. 如何以编程方式从MP3中删除静音?
这个问题很长时间的后续工作。我在https://bitbucket.org/mattgwagner/sharpssh所做的一些更新中添加了这一点,以避免自己重新编译库。 – MattGWagner 2012-03-12 16:30:14