Vinodh Muthusamy Ответов: 2

Не удалось загрузить файл или сборку ' diffiehellman


я создаю приложение c# для загрузки файла из локального в SFTP, но оно не может подключиться к sftp и выдает исключение

После поиска по всему сайту они сказали установить DiffieHellman и Org. Mentalis.Безопасность.

Даже после установки этих 2 dll я получаю ту же ошибку.

ниже я привел свой пример кода

string _ftpURL = "jtend";
             string _UserName = "kascope";
             string _Password = "S@ssw0rd813";
             int _Port = 22;
             string _ftpDirectory = @"/";
             string LocalDirectory = @"E:\To_Upload";
             string FileName = "tests.xls";

             Sftp oSftp = new Sftp(_ftpURL, _UserName, _Password);
             oSftp.Connect(_Port); // Throws Error here
             string LocalDirectory1 = LocalDirectory + "/" + FileName;
             string ftpDirectory = _ftpDirectory + "/" + FileName;
             oSftp.Put(LocalDirectory + "/" + FileName, _ftpDirectory + "/" + FileName);
             oSftp.Close();


Ошибка:

Session. connect: System.IO.FileLoadException: не удалось загрузить файл или сборку 'DiffieHellman, Version=0.0.0.0, Culture=neutral, PublicKeyToken=4ed5f4288b4076af' или одну из его зависимостей. Определение манифеста расположенной сборки не соответствует ссылке на сборку. (Исключение из HRESULT: 0x80131040)
Имя файла: 'DiffieHellman, Version=0.0.0.0, Culture=neutral, PublicKeyToken=4ed5f4288b4076af'
на Тамир.SharpSsh.jsch.око.ЦТ.Гете()
на Тамир.SharpSsh.jsch.DHG1.метод init(сессии байт[] V_S, байт[] V_C, байт[] И_С, байт[] I_C)
на Тамир.SharpSsh.jsch.Session.receive_kexinit(Buffer buf)
на Тамир.SharpSsh.jsch.Сессии.подключения(типа int32 значок connecttimeout)

=== Предварительно привязать государственной информационной ===
Журнал: DisplayName = DiffieHellman, Version=0.0.0.0, Culture=neutral, PublicKeyToken=4ed5f4288b4076af
(Полностью указано)
Журнал: Appbase = файл:///Д:/vinodh/тренировки/SFTP_SharpSSH/SFTP_SharpSSH/бин/отладки/
LOG: Initial PrivatePath = NULL
Созыв собрания: Тамир.SharpSsh, версия=1.1.1.13, культура=нейтральная, PublicKeyToken=4ed5f4288b4076af.
===
LOG: эта привязка начинается в контексте загрузки по умолчанию.
Журнал: использование файла конфигурации приложения: D:\vinodh\Workout\SFTP_SharpSSH\SFTP_SharpSSH\bin\Debug\SFTP_SharpSSH.vshost.exe.Config
Журнал: использование файла конфигурации хоста:
Журнал: использование файла конфигурации машины из C:\Windows\Microsoft.NET\Framework\v4.0.30319\config\machine.config.
Журнал: Post-policy reference: DiffieHellman, Version=0.0.0.0, Culture=neutral, PublicKeyToken=4ed5f4288b4076af
Журнал: попытка загрузки нового URL-адреса file:///D:/vinodh/Workout/SFTP_SharpSSH/SFTP_SharpSSH/bin/Debug/DiffieHellman.DLL.
Предупреждение: сравнение имя сборки, в результате несоответствия: маркер открытого ключа
ERR: не удалось завершить настройку сборки (hr = 0x80131040). Зондирование закончено.

Что я уже пробовал:

<pre>   string _ftpURL = "jtend";
                string _UserName = "kascope";
                string _Password = "S@ssw0rd813";
                int _Port = 22;
                string _ftpDirectory = @"/";
                string LocalDirectory = @"E:\To_Upload";
                string FileName = "tests.xls";    

                Sftp oSftp = new Sftp(_ftpURL, _UserName, _Password);
                oSftp.Connect(_Port); // Throws Error here
                string LocalDirectory1 = LocalDirectory + "/" + FileName;
                string ftpDirectory = _ftpDirectory + "/" + FileName;
                oSftp.Put(LocalDirectory + "/" + FileName, _ftpDirectory + "/" + FileName);
                oSftp.Close();

ZurdoDev

Он не может найти библиотеку dll или правильную версию библиотеки dll.

2 Ответов

Рейтинг:
2

Pete O'Hanlon

Прежде всего, вы добавили их в качестве ссылок на свой проект? Если вы добавили их в качестве ссылок, вы убедились, что настроили их для копирования в выходной каталог? Есть ли у diffiehelman какие-либо зависимости, которые вам также нужно скопировать? Он может поставляться с установщиком среды выполнения, который вам нужно запустить на ваших клиентах, чтобы убедиться, что все зависимости установлены.


Рейтинг:
1

Richard Deeming

Соответствующая часть сообщения об ошибке, по-видимому, будет:

Цитата:
Предупреждение: сравнение имя сборки, в результате несоответствия: маркер открытого ключа

Загруженная вами сборка не соответствует той сборке, которую вы скачали. Tamir.SharpSsh был составлен против.

Если вы не можете найти подходящую версию сборки, вам нужно будет скачать исходный код[^] и перекомпилировать его против новой версии сборки Диффиэллмана.