Форум программистов, компьютерный форум, киберфорум
C# .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.96/26: Рейтинг темы: голосов - 26, средняя оценка - 4.96
0 / 0 / 0
Регистрация: 05.02.2009
Сообщений: 4

Создание собственного AppDomain. Ошибка при использовании

05.02.2009, 12:17. Показов 4917. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Пишу так:
C#
1
2
3
AppDomain tmpDomain = AppDomain.CreateDomain("tmpDomain");
FindDll Loader = (FindDll)tmpDomain.CreateInstanceAndUnwrap(
  Application.ExecutablePath, "TestingMyDll_WinForms.FindDll");
где
C#
1
FindDll
- класс, объявленный в этом же модуле (Главная форма проекта)

Ошибка
Could not load file or assembly 'Application.EXE' or one of its dependencies. The given assembly name or codebase was invalid. (Exception from HRESULT: 0x80131047)
Что это за ошибка?
Ведь указаный файл (ехе-шник) на месте.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
05.02.2009, 12:17
Ответы с готовыми решениями:

Ошибка при использовании собственного класса шейдеров
Ку всем!:) Использую QTCreator и OpenGL 4.4. Подключил библиотеки GLFW, GLAD и GLM. Изучаю OpenGL по урокам иностранного автора с этого...

Создание собственного компонента. Ошибка
Добрый день, почему при написании собственного компонента Делфи не может определить процедуру ShowMessage, из-за чего выдаётся ошибка, как...

Создание собственного элемента управления, ошибка в отображении
Решил создать свой собственный элемент управления, точнее несколько. Проблем не было, уже есть Checkbox`и, ProgressPar`и и прочее. Но вот...

5
Администратор
 Аватар для mik-a-el
87832 / 53153 / 249
Регистрация: 10.04.2006
Сообщений: 13,764
05.02.2009, 13:10
C#
1
2
    AppDomain Domain2 = AppDomain.CreateDomain("AppDomainB");
    MainClass MyMyClass = (MainClass)Domain2.CreateInstanceAndUnwrap("YourNameSpace", "YourClassName");
0
0 / 0 / 0
Регистрация: 05.02.2009
Сообщений: 4
05.02.2009, 15:27  [ТС]
Цитата Сообщение от mik-a-el Посмотреть сообщение
C#
1
2
    AppDomain Domain2 = AppDomain.CreateDomain("AppDomainB");
    MainClass MyMyClass = (MainClass)Domain2.CreateInstanceAndUnwrap("YourNameSpace", "YourClassName");
Попробовал и так и эдак
Параметры
assemblyName Тип: System.String - Имя файла и путь сборки, в которой определен запрошенный тип.
typeName Тип: System.String - Полное имя запрошенного типа, включая пространство имен, но не сборку, возвращаемое свойством Type.FullName.
первый параметр - это же все таки путь
а в вашем примере это простанство имен
%)
0
Администратор
 Аватар для mik-a-el
87832 / 53153 / 249
Регистрация: 10.04.2006
Сообщений: 13,764
05.02.2009, 15:38
Тогда добавьте еще загрузку сборки в домен:
C#
1
Assembly assembly = domain.Load("Assembly.Path");
После его создания.

Добавлено через 3 минуты 50 секунд
Цитата Сообщение от _andrews_ Посмотреть сообщение
первый параметр - это же все таки путь
а в вашем примере это простанство имен
Что было гугле, то и привел
Про параметры читайте мсдн:
Parameters
assemblyName
The display name of the assembly.

typeName
The fully qualified name of the requested type, including the namespace but not the assembly, as returned by the Type..::.FullName property.
0
0 / 0 / 0
Регистрация: 05.02.2009
Сообщений: 4
05.02.2009, 18:07  [ТС]
Немножко изменил названия классов
В приципе это ничего не менят:
C#
1
2
tmpDLLs = (Dlls)tmpDomain.CreateInstanceAndUnwrap(
                    "TestingMyDll_WinForms", "TestingMyDll_WinForms.Dlls");
в этом случае выдает:

Type 'TestingMyDll_WinForms.Dlls' in assembly 'TestingMyDll_WinForms, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' is not marked as serializable.

А в этом
C#
1
2
tmpDLLs = (Dlls)tmpDomain.CreateInstanceAndUnwrap(
                    "TestingMyDll_WinForms", "Dlls");
Could not load type 'Dlls' from assembly 'TestingMyDll_WinForms, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'.
Добавлено через 1 час 3 минуты 52 секунды
Упростил до предела.
Вот весь проект
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
namespace TestCreateDomain
{
    public partial class UseDomain
    {
        public void DoSomeThing()
        {            
        }
 
    }
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            AppDomain domain = AppDomain.CreateDomain("PluginLoader");
            UseDomain finder = (UseDomain)domain.CreateInstanceFromAndUnwrap("TestCreateDomain.exe", "TestCreateDomain.UseDomain");
            AppDomain.Unload(domain);
        }
       
    }
}
Ошибка
Type 'TestCreateDomain.UseDomain' in assembly 'TestCreateDomain, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' is not marked as serializable.
Подскажите, пжста
я чего то не понимаю
0
Администратор
 Аватар для mik-a-el
87832 / 53153 / 249
Регистрация: 10.04.2006
Сообщений: 13,764
05.02.2009, 18:22
Цитата Сообщение от _andrews_ Посмотреть сообщение
Type 'TestCreateDomain.UseDomain' in assembly 'TestCreateDomain, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' is not marked as serializable.
Добавьте классу атрибут [Serializable]
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
05.02.2009, 18:22
Помогаю со студенческими работами здесь

Создание собственного компонента: Ошибка Unresolved external
Всем привет. Есть задание: Построить класс - потомок класса TStringGrid, у объектов которого при нажатии клавиши F11 исчезают...

Qt ошибка при отправке собственного сигнала
Всем привет, что то не могу разобраться с ошибкой: #ifndef SNIFFER_H #define SNIFFER_H #include <pcap.h> #include...

Ошибка при установке собственного package'a
Обновив package, получаю следующую ошибку при установке: Судя по ошибке, я пытаюсь использовать модуль, который используется в...

При установке собственного шаблона на Joomla 3.3 выходит ошибка
Здравствуйте, уважаемые форумчане! При установке собственного шаблона на Joomla 3.3 выходит ошибка: Шаблон пытаюсь установить...

Ошибка при использовании vector (в конце, после вывода результатов выскакивает ошибка, но сам результат коректен)
Суть в следующем, мы считываем введеные значения и выводим этот массив Проблема такова что массив выводиться, корректно, но в конце...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru