Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Как получить все AppDomains в процессе?

15K
13 марта 2006 года
alex_chief
4 / / 31.01.2006
Народ! Возможно ли получить все домены в текущем процессе?
273
14 марта 2006 года
3A3-968M
1.2K / / 22.12.2005
В .NET один процесс работает только в одном домене (есть кроме DefaultDomain, ээкземпляра AppDomain ещё и SystemDomain и SharedDomain). Процесс может создать домен и загрузить в него сборку, дальше она работает автономно. Получить стандартными средствами все домены созданные одним доменом Framework не получится. Расскажи, что ты этим хочешь сделать, а решение уже придумаем
15K
14 марта 2006 года
alex_chief
4 / / 31.01.2006
Цитата:
Originally posted by 3A3-968M
В .NET один процесс работает только в одном домене (есть кроме DefaultDomain, ээкземпляра AppDomain ещё и SystemDomain и SharedDomain). Процесс может создать домен и загрузить в него сборку, дальше она работает автономно. Получить стандартными средствами все домены созданные одним доменом Framework не получится. Расскажи, что ты этим хочешь сделать, а решение уже придумаем



имееться ввиду все домены, которые были созданы в контексте текущего процесса.
например: AppDomain tempDomain = AppDomain.CreateDomain("Temporary",AppDomain.CurrentDomain.Evidence, AppDomain.CurrentDomain.SetupInformation);

я могу получить текущий домен в процессе AppDomain.CurrentDoamin,
а вот как получить вот этот временный домен, если он был создан где-то далеко.

273
15 марта 2006 года
3A3-968M
1.2K / / 22.12.2005
Есть такой класс WebProcessStatistics. У его экземпляра есть свойство AppDomainCount. Если его использовать в обычном приложении (не Web-приложении), то оно не работает. Если не лень, дизассемблируй этот класс и посмотри, откуда берётся значение этого свойства. Я дошёл до третего по вложенности вызова функции и затерялся в System.Web.Hosting. Больше никаких способов я не нашёл:(
Другое дело, если тебе нужно собрать инфу о доменах из твоего кода, а не из другого приложения...
15K
16 марта 2006 года
alex_chief
4 / / 31.01.2006
Цитата:
Originally posted by 3A3-968M
Есть такой класс WebProcessStatistics. У его экземпляра есть свойство AppDomainCount. Если его использовать в обычном приложении (не Web-приложении), то оно не работает. Если не лень, дизассемблируй этот класс и посмотри, откуда берётся значение этого свойства. Я дошёл до третего по вложенности вызова функции и затерялся в System.Web.Hosting. Больше никаких способов я не нашёл:(
Другое дело, если тебе нужно собрать инфу о доменах из твоего кода, а не из другого приложения...



Конечно из моего кода!!
Мне нужны домены, которые создавались в контексте
моего процесса (текущего). Т.е. так как я например
получаю текущий поток (Thread.CurrentThread) или
текущий домен (AppDomain.CurrentDomain)

273
17 марта 2006 года
3A3-968M
1.2K / / 22.12.2005
Напиши тогда свою функцию по созданию домена, например:
private List<AppDomain> domains=new List<AppDomain>();
public static AppDomain CreateNewDomain(string name)
{
AppDomain domain=AppDomain.CreateDomain(name, AppDomain.CurrentDomain.Evidence, AppDomain.CurrentDomain.SetupInformation);
domains.Add(domain);
return domain;
}
public AppDomain[] GetDomains()
{
return domains.ToArray();
}
Потом создавай домены функцией CreateNewDomain, все имеющиеся домены можно получить функцией GetDomains.
15K
17 марта 2006 года
alex_chief
4 / / 31.01.2006
Спасибо за ответы и уделенное моему вопросу время.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог