Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Перезагрузить dll, есть что то подобное? 
:(
    Опции темы
kuller
Дата 1.6.2011, 07:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 310
Регистрация: 15.11.2007

Репутация: нет
Всего: нет



Здравствуйте!!!

Я в своей программе, в событии формы Load загружал dll-ки (из той папки откуда была запущена программа).

Загружал вот таким образом:
Код

Assembly.Load(путь к dll);


Ну затем анализировал dll-ку, искал нужные мне классы, методы и вызывал их.

Столкнулся с проблемой когда dll-ку вызываю второй и более разы, то получаю совсем неверные результаты, такое ощущение, что где то в памяти значения всех переменных из dll-к сохраняются и при повторном вызове накапливаются.

Ну вот я и подумал, может есть какой то метод, который ПЕРЕЗАГРУЗИТ dll-ку и не будет такого глюка???

Заранее спасибо!!!
PM MAIL   Вверх
Dennnis
Дата 1.6.2011, 07:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 145
Регистрация: 23.3.2008

Репутация: 1
Всего: 4



Перезагрузить отдельно загруженную DLL'ку нельзя, только вместе с доменом в который она была загружена.
Цитата(kuller @  1.6.2011,  07:05 Найти цитируемый пост)
Столкнулся с проблемой когда dll-ку вызываю второй и более разы
Что значит "вызвать dll'ку?

Не должно быть такого глюка если ты не используешь внутри каких-нибудь статических полей.

Это сообщение отредактировал(а) Dennnis - 1.6.2011, 07:38
--------------------
Get Rich or Die Tryin'
PM   Вверх
kuller
Дата 1.6.2011, 07:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 310
Регистрация: 15.11.2007

Репутация: нет
Всего: нет



Цитата

Что значит "вызвать dll'ку?

Dennnis, ну тут немного не правильно выразился, имелось ввиду повторный вызов метода, который описан в dll-ке.

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

Код

        public DataTable Method1(List<double[]> A)
        {
            DataTable DT = new DataTable();
            DT.Columns.Add("Сумма", typeof(double));
            for (int i = 0; i < A[0].Length; i++)
            {
                double sum = 0;
                for (int j = 0; j < A.Count; j++)
                {
                    sum += A[j][i];
                }
                DataRow DR = DT.NewRow();
                DR[0] = sum;
                DT.Rows.Add(DR);
            }
            return DT;
        }


Так вот при каждом вызове метода "Method1" сумма накапливается, в чем дело???
PM MAIL   Вверх
jonie
Дата 1.6.2011, 09:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 5613
Регистрация: 21.8.2005
Где: Владимир

Репутация: 6
Всего: 118



перезагрузить просто не получится. Надо загружать в отдельный домен, который затем и грохать.
http://blogs.msdn.com/b/ericgu/archive/200...st-columns.aspx


--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Partizan
PashaPash

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | .NET для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0650 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.