Загрузка сборки с сетевого диска работает только при использовании именованного пути, а не IP-адреса.C#

Место общения программистов C#
Ответить
Anonymous
 Загрузка сборки с сетевого диска работает только при использовании именованного пути, а не IP-адреса.

Сообщение Anonymous »

У меня есть приложение (собственное), которое загружает смешанную DLL, которая снова загружает сборку .NET.
Это работает нормально. Даже если приложение и сборки расположены по сетевому пути.
У нас добавлен специальный код, который позволяет загружать все эти .NET-материалы из подкаталога.

Код: Выделить всё

System::AppDomain::CurrentDomain->AssemblyResolve += gcnew ResolveEventHandler(LoadFromSubFolder);
И обработчик

Код: Выделить всё

static Assembly ^LoadFromSubFolder(Object ^sender, ResolveEventArgs ^args)
{
String ^folderPath = Path::GetDirectoryName(Assembly::GetExecutingAssembly()->Location);
// String ^folder = String::Format("LL{0}",LL_VERSION.ToString());
folderPath = Path::Combine(folderPath, SUBFOLDER);
String ^assemblyPath = Path::Combine(folderPath, (gcnew AssemblyName(args->Name))->Name + ".dll");
if (File::Exists(assemblyPath) == false)
return nullptr;
Assembly ^assembly = Assembly::LoadFrom(assemblyPath);
return assembly;
}
Опять. Это работает идеально. Но теперь у нас есть клиент, который обычно запускает свое приложение с сервера, в пути которого указано имя сервера:

Код: Выделить всё

\\named-server\path1\path2\app.exe
Но когда он использует IP-адрес

Код: Выделить всё

\\10.0.0.1\path1\path2\app.exe
Не получается. В сообщении об ошибке я вижу, что мой обработчик вызывается, но сборка::LoadFrom завершается с ошибкой. (FileLoadException hResult=0x80131515)
Есть идеи, почему?

Подробнее здесь: https://stackoverflow.com/questions/792 ... nd-not-the
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»