基於SFTP的文件拷貝軟件

最近打算本身作幾個軟件,便於提高工做效率,而且能夠恢復下碼代碼的能力。第一個軟件就是基於SFTP的一個文件拷貝軟件。目前能夠拷貝選定遠程服務器上的文件/文件夾內全部內容到本地目錄。界面大體以下:linux

 

右邊空白較大,由於還有些其餘功能還沒有完善。服務器

 

軟件主要有如下幾個功能:加密

1. 用戶選擇想要鏈接的linux服務器名稱(IP地址和密碼軟件內置,由於不想讓用戶看到)線程

2.鏈接到服務器後可顯示根目錄(內置)下全部文件及文件夾,忽略鏈接。excel

3.用戶在左側選中文件/文件夾後,在右側配置本地目錄,點擊StartCopy便可拷貝到本地。orm

4. 右側目標目錄在關閉軟件時會保存到軟件的Setting中。xml

 

使用的技術:blog

1. Winform界面開發。爲了儘快使用,沒有使用WPF等開發技術,僅使用了VS2017裏面標配的Winform的tool。ci

2. 跨線程更新Winform。這個問題幾年前就遇到過了,主要是在Thread裏面要更新Winform的顯示,在子線程中使用BeginInvoke方法及delegate。後續補充幾個博文連接,仍是挺有用的。開發

3.ListView的使用。增長Column,Item,SubItem等。

4. SFTP組件的使用。由於C#貌似沒有原生的sftp組件(也多是我沒找到),因此嘗試了幾個第三方組件,Tamir.SharpSSH.dll和Renci.SshNet.dll在創建connection的時候都有被主機拒絕的異常,估計是host key詢問沒處理明白。後來用了ComponentPro的組件,比較好用,不過是收費的,試用30天,30天后再看看怎麼處理吧。

5. 目錄前進與後退的簡單邏輯。主要是根據path中的"/"截取目錄位置。

 

程序比較簡單,大概用了一週的時間,天天下班後8-10點左右吧。既然作了東西,仍是記錄下。涉及的相關內容後續慢慢補充吧。

另外還想作個登陸界面,管理下用戶登陸。可是又沒有服務器存儲用戶註冊信息,想弄個配置文件,將用戶名和密碼寫進去。可能會用xml格式,密碼應該會加密後寫進去,加密方式還沒定, 可能會用RSA吧,公鑰加密後,私鑰放在軟件程序代碼裏,解密用。

 

下一個軟件想破解某excel查詢功能,主要使用vba寫的宏代碼,目前代碼已經到手,先看看vba語法,而後可能用C#或Java重寫程序,應該也是Winform的軟件,便於查詢。

相關文章
相關標籤/搜索