资源简介
C#版本的SCP上传和下载(基于Renci.SshNet),Vs2008工程,完整源代码,有进度条提示。
代码片段和文件信息
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Renci.SshNet;
using Renci.SshNet.Common;
namespace ScpFileTransfer
{
public partial class Form1 : Form
{
private static ScpClient scpClient=null;
public Form1()
{
InitializeComponent();
}
private void btnDownload_Click(object sender EventArgs e)
{
if (scpClient != null)
{
if (scpClient.IsConnected)
{
scpClient.Disconnect();
}
scpClient.Dispose();
}
string scpHostIP = textHostIp.Text;
string scpUSER = textUsr.Text;
string scpPwd = textPwd.Text;
int scpPORT = 22;
string remotePath = textServerFile.Text;
string localPath = textLocalFile.Text;
try{
//注意,需要加上try catch语句
scpClient = new ScpClient(scpHostIP scpPORT scpUSER scpPwd);
scpClient.BufferSize = 1024;
System.IO.FileInfo fi = new System.IO.FileInfo(localPath);
scpClient.Connect();
scpClient.Downloading += scpDownloadInfoShow;//这里是直接使用+号,不能用new来添加.用new方式会报错
initProgressbar();
setBtnStatus(false);
scpClient.Download(remotePath fi);
}
catch(Exception e1){
setBtnStatus(true);
MessageBox.Show(e1.Message);
}
}
//定义委托方法
void scpDownloadInfoShow(object sender ScpDownloadEventArgs e)
{
progressBar1.Value = (int)(100 * (e.Downloaded) / (e.Size));
if (e.Downloaded >= e.Size)
{
setBtnStatus(true);
MessageBox.Show(“下载完成“);
}
}
private void setBtnStatus(bool st)
{
btnDownload.Enabled = st;
btnUpload.Enabled = st;
}
private void initProgressbar()
{
progressBar1.Maximum = 100;//设置最大长度值
progressBar1.Value = 0;//设置当前值
progressBar1.Step = 1;//设置没次增长多少
progressBar1.Visible = true;
}
private void btnUpload_Click(object sender EventArgs e)
{
if (scpClient != null)
{
if (scpClient.IsConnected)
{
scpClient.Disconnect();
}
scpClient.Dispose();
}
string scpHostIP = textHostIp.Text;
string scpUSER = textUsr.Text;
string scpPwd = textPwd.Text;
int scpPORT = 22;
string remotePath = textServerFile.Text;
s
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 470016 2019-03-02 16:45 ScpFileTransfer\ScpFileTransfer\bin\Debug\Renci.SshNet.dll
文件 12288 2019-03-04 10:21 ScpFileTransfer\ScpFileTransfer\bin\Debug\ScpFileTransfer.exe
文件 28160 2019-03-04 10:21 ScpFileTransfer\ScpFileTransfer\bin\Debug\ScpFileTransfer.pdb
文件 14328 2019-03-04 10:23 ScpFileTransfer\ScpFileTransfer\bin\Debug\ScpFileTransfer.vshost.exe
文件 490 2009-06-11 05:14 ScpFileTransfer\ScpFileTransfer\bin\Debug\ScpFileTransfer.vshost.exe.manifest
文件 470016 2019-03-02 16:45 ScpFileTransfer\ScpFileTransfer\dll\Renci.SshNet.dll
文件 167266 2019-03-02 16:49 ScpFileTransfer\ScpFileTransfer\dll\Renci.SshNet.rar
文件 4256 2019-03-04 10:21 ScpFileTransfer\ScpFileTransfer\Form1.cs
文件 8568 2019-03-04 10:14 ScpFileTransfer\ScpFileTransfer\Form1.Designer.cs
文件 5814 2019-03-04 10:14 ScpFileTransfer\ScpFileTransfer\Form1.resx
文件 4569 2019-03-04 09:05 ScpFileTransfer\ScpFileTransfer\obj\Debug\ResolveAssemblyReference.cache
文件 730 2019-03-04 10:23 ScpFileTransfer\ScpFileTransfer\obj\Debug\ScpFileTransfer.csproj.FileListAbsolute.txt
文件 847 2019-03-04 10:17 ScpFileTransfer\ScpFileTransfer\obj\Debug\ScpFileTransfer.csproj.GenerateResource.Cache
文件 12288 2019-03-04 10:21 ScpFileTransfer\ScpFileTransfer\obj\Debug\ScpFileTransfer.exe
文件 180 2019-03-04 10:17 ScpFileTransfer\ScpFileTransfer\obj\Debug\ScpFileTransfer.Form1.resources
文件 28160 2019-03-04 10:21 ScpFileTransfer\ScpFileTransfer\obj\Debug\ScpFileTransfer.pdb
文件 180 2019-03-04 09:05 ScpFileTransfer\ScpFileTransfer\obj\Debug\ScpFileTransfer.Properties.Resources.resources
文件 496 2019-03-04 08:51 ScpFileTransfer\ScpFileTransfer\Program.cs
文件 1380 2019-03-04 08:51 ScpFileTransfer\ScpFileTransfer\Properties\AssemblyInfo.cs
文件 2880 2019-03-04 08:51 ScpFileTransfer\ScpFileTransfer\Properties\Resources.Designer.cs
文件 5612 2019-03-04 08:51 ScpFileTransfer\ScpFileTransfer\Properties\Resources.resx
文件 1100 2019-03-04 08:51 ScpFileTransfer\ScpFileTransfer\Properties\Settings.Designer.cs
文件 249 2019-03-04 08:51 ScpFileTransfer\ScpFileTransfer\Properties\Settings.settings
文件 3994 2019-03-04 09:05 ScpFileTransfer\ScpFileTransfer\ScpFileTransfer.csproj
文件 935 2019-03-04 08:51 ScpFileTransfer\ScpFileTransfer.sln
..A..H. 17920 2019-03-04 10:36 ScpFileTransfer\ScpFileTransfer.suo
目录 0 2019-03-04 10:15 ScpFileTransfer\ScpFileTransfer\obj\Debug\Refactor
目录 0 2019-03-04 08:51 ScpFileTransfer\ScpFileTransfer\obj\Debug\TempPE
目录 0 2019-03-04 09:06 ScpFileTransfer\ScpFileTransfer\bin\Debug
目录 0 2019-03-04 10:21 ScpFileTransfer\ScpFileTransfer\obj\Debug
............此处省略9个文件信息
相关资源
- C# 调用win32 api函数-user32.dll详细说明
- C# 调用BarTender打印条码DEMO
- 大型比赛竞赛抽签系统 可打印 c# vs
- C#编写的Gerber查看器
- lua C# .Net4.0 vs2010 LuaInterface
- C#十六进制编辑器
- 明华URF-35H读卡器 C#读写源码 为大家
- C#文件流读取CSV文件
- c#读写PDF文件sql
- C# winform Socket大文件传输
- c#车牌识别系统附30张测试图片
- 《C#面向对象程序设计》源代码(CS)
- 金旭亮《C#面向对象程序设计》教案
- 试题库管理系统毕业论文(C#)源程序
- 学校网站原代码(C#.NET)
- C#-数据库操作技术-员工管理系统
- c#web开发入门经典
- C#与Matlab混合编程的几种方式
- c# 开发与 mysql数据库实现的增删改查
- C#异步操作 异步查询数据库 异步处理
- Basler相机通过IO触发源码
- [源代码] 《领域驱动设计 (C# 2008 实
- 松下PLC与C#通讯串口调试入门教程.z
- USB 继电器控制器 LCUS-1 保证能用 c#
- C# AES加密解密小工具
- C#圆形按钮,非常漂亮动态~~
- [精]C#仿QQ右下角弹出提示框()
- C#进程间通信-共享内存代码
- 有史以来最简单的三层(C#)
- vb调用c#编写的串口DLL文件(vb源码
评论
共有 条评论