質問編集履歴

2 エラーメッセージを置く位置を間違えていたため.

inupii

inupii score 7

2018/06/19 17:53  投稿

VS2017のアプリ内でscpコマンドによるraspberry piへのファイル転送 (ssh接続)
### 前提・実現したいこと
VS2017(C#)のWebフォームアプリケーション内で,buttonを押すと(イベントハンドラ),scpが実行されて,raspberry piにファイルが転送されるようにしたいです.
### 発生している問題・エラーメッセージ
Sharpsshを参照し,buttonがクリックされると,raspberry piにssh接続がされ,scp.Put()でファイル転送を行おうとしましたが
機能しません.
```
エラーメッセージ
```ハンドルされていない例外 Tamir.SharpSsh.jsch.JSchException: 'Algorithm negotiation fail というエラーメッセージが出てしまいます.
ハンドルされていない例外 Tamir.SharpSsh.jsch.JSchException: 'Algorithm negotiation fail というエラーメッセージが出てしまいます.
### 該当のソースコード
```### 該当のソースコード
```C#
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using Tamir.SharpSsh;
using Tamir.SharpSsh.jsch;
namespace Sharpssh
{
   public partial class Form1 : Form
   {
       public Form1()
       {
           InitializeComponent();
       }
       private void button1_Click(object sender, EventArgs e)
       {
           Scp scp = new Scp("raspberrypi.local", "pi");
           scp.Password = "raspberry";
           scp.Connect(22);
           scp.Put(@"C:\vs2017\test.text", "/home/pi/python_test.text");
           scp.Close();
       }
   }
}
```
### 試したこと
Sharpsshのインストールのし直しや,エラーメッセージを理解しようといろいろと調べましたが,わかりませんでした.
### 補足情報(FW/ツールのバージョンなど)
VS2017(C#), raspberry pi3 Model B windows7
ここにより詳細な情報を記載してください。
2台のpcを使っており,1台のデスクトップpcにラズパイをhdmiケーブルでつなぎ,そのラズパイと,もう1台のノートpcを有線lanでつないでいます. teratermなどでは,raspberrypi.localと入力し,ユーザー名やパスワードを打つと,ssh接続ができる状況です.VS,Raspberry pi,C#ともに始めたばっかりで,的外れなことを言ってしまっているかもしれません. どなたか
詳しい方,解決策を教えていただきたいです. よろしくお願いします.
  • C#

    10987 questions

    C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

  • Visual Studio

    2912 questions

    Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

  • Raspberry Pi

    1389 questions

    Raspberry Piは、ラズベリーパイ財団が開発した、名刺サイズのLinuxコンピュータです。 学校で基本的なコンピュータ科学の教育を促進することを意図しています。

1 ソースコードを置く位置を間違えていたので編集しました.

inupii

inupii score 7

2018/06/19 17:53  投稿

VS2017のアプリ内でscpコマンドによるraspberry piへのファイル転送 (ssh接続)
### 前提・実現したいこと
VS2017(C#)のWebフォームアプリケーション内で,buttonを押すと(イベントハンドラ),scpが実行されて,raspberry piにファイルが転送されるようにしたいです.
### 発生している問題・エラーメッセージ
Sharpsshを参照し,buttonがクリックされると,raspberry piにssh接続がされ,scp.Put()でファイル転送を行おうとしましたが
機能しません.
```
エラーメッセージ
```
ハンドルされていない例外 Tamir.SharpSsh.jsch.JSchException: 'Algorithm negotiation fail というエラーメッセージが出てしまいます.
```ハンドルされていない例外 Tamir.SharpSsh.jsch.JSchException: 'Algorithm negotiation fail というエラーメッセージが出てしまいます.
### 該当のソースコード
```C#
ソースコード
```using System;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using Tamir.SharpSsh;
using Tamir.SharpSsh.jsch;
namespace Sharpssh
{
   public partial class Form1 : Form
   {
       public Form1()
       {
           InitializeComponent();
       }
       private void button1_Click(object sender, EventArgs e)
       {
           Scp scp = new Scp("raspberrypi.local", "pi");
           scp.Password = "raspberry";
           scp.Connect(22);
           scp.Put(@"C:\vs2017\test.text", "/home/pi/python_test.text");
           scp.Close();
       }
   }
}
```  
### 試したこと
Sharpsshのインストールのし直しや,エラーメッセージを理解しようといろいろと調べましたが,わかりませんでした.
### 補足情報(FW/ツールのバージョンなど)
VS2017(C#), raspberry pi3 Model B windows7
ここにより詳細な情報を記載してください。
2台のpcを使っており,1台のデスクトップpcにラズパイをhdmiケーブルでつなぎ,そのラズパイと,もう1台のノートpcを有線lanでつないでいます. teratermなどでは,raspberrypi.localと入力し,ユーザー名やパスワードを打つと,ssh接続ができる状況です.VS,Raspberry pi,C#ともに始めたばっかりで,的外れなことを言ってしまっているかもしれません. どなたか
詳しい方,解決策を教えていただきたいです. よろしくお願いします.
  • C#

    10987 questions

    C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

  • Visual Studio

    2912 questions

    Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

  • Raspberry Pi

    1389 questions

    Raspberry Piは、ラズベリーパイ財団が開発した、名刺サイズのLinuxコンピュータです。 学校で基本的なコンピュータ科学の教育を促進することを意図しています。

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る