русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Сборка. Класс Assembly


Дата добавления: 2015-07-09; просмотров: 701; Нарушение авторских прав


Класс Assembly определяет Сборку – основной строительный блок common language runtime приложения. Как строительный блок clr, сборка обладает следующими основными свойствами:

§ возможностью многократного применения,

§ versionable (версифицированностью),

§ самоописываемостью.

 

Эти понятия являются ключевыми для решения проблемы отслеживания версии и для упрощения развертывания приложений во время выполнения.

Сборки обеспечивают инфраструктуру, которая позволяет во время выполнения полностью “понимать” структуру и содержимое приложения, и контролировать версии и зависимости элеметнов выполняемого приложения.

 

Сборки бывают:

§ частными (private). Представляют наборы типов, которые могут быть использованы только теми приложениями, в состав которых они входят. Располагаются в файлах с расширениями .dll (.exe) и .pdb (program debug Database). Для того чтобы использовать в приложении частную сборку, её надо ВКЛЮЧИТЬ в приложение, то есть, разместить в каталоге приложения (application directory) или в одном из его подкаталогов.

§ общего доступа (shared). Также набор типов и ресурсов внутри модулей (модуль – двоичный файл сборки). Предназначены для использования НЕОГРАНИЧЕННЫМ количеством приложений на клиентском компе. Эти сборки устанавливаются не в каталог приложения, а в специальный каталог, называемый Глобальным Кэшем Сборок (Global Assembly Cache - GAC). Этот каталог на платформе Windows XP имеет путь C:\WINDOWS\assembly. Таким образом, в .NET ВСЕ совместно используемые сборки собираются в одном месте. Имя (“общее имя” или “строгое имя”) сборки общего доступа строится с использованием информации о версии сборки.

Загружаемая сборка строится как БИБЛИТОТЕКА КЛАССОВ (файл с расширением .dll), либо как выполняемый модуль (файл с расширением .exe).



Если это файл с расширением .dll, то в среде Visual Studio её использование поддерживается специальными средствами среды. Это “полуавтоматическая” загрузка частной сборки в Reference приложения (Add Reference…). Сборки, располагаемые в .exe файлах, особой поддержкой для включения сборки не состав приложения не пользуется.

Для анализа сборки применяется утилита IlDasm.exe, которую можно подключить к непосредственно вызываемому из среды разработки VisualStudio списку утилит.

Ниже представлены члены класса Сборки.

 

Открытые свойства

CodeBase Возвращает местонахождение сборки, указанное первоначально, например, в объекте AssemblyName.
EntryPoint Возвращает точку входа для этой сборки.
EscapedCodeBase Возвращает URI, предоставляющий базовый код, включая escape-знаки.
Evidence Возвращает свидетельство для этой сборки.
FullName   Возвращает отображаемое имя сборки.
GlobalAssemblyCache Возвращает значение, показывающее, была ли сборка загружена из глобального кэша сборок.
ImageRuntimeVersion Возвращает версию общеязыковой среды выполнения (CLR), сохраненной в файле, содержащем манифест.
Location Возвращает местонахождение в формате базового кода загруженного файла, содержащего манифест, если для него не было теневого копирования.

Открытые методы

CreateInstance   Перегружен. Находит тип в этой сборке и создает его экземпляр, используя абстрактный метод.
CreateQualifiedName Статический. Создает тип, задаваемый отображаемым именем его сборки.
Equals (унаследовано от Object)   Перегружен. Определяет, равны ли два экземпляра Object.
GetAssembly Статический. Возвращает сборку, в которой определяется заданный класс.
GetCallingAssembly   Статический. Возвращает Assembly метода, который вызывает текущий метод выполнения.
GetCustomAttributes Перегружен. Возвращает пользовательские атрибуты для этой сборки.
GetEntryAssembly Статический. Возвращает процесс, исполняемый в домене приложения по умолчанию. В других доменах приложений это первый исполняемый процесс, который был выполнен AppDomain.ExecuteAssembly.
GetExecutingAssembly   Статический. Возвращает Assembly, из которой исполняется текущий код.
GetExportedTypes Возвращает экспортируемые типы, определенные в этой сборке.
GetFile Возвращает объект FileStream для указанного файла из таблицы файлов манифеста данной сборки.
GetFiles Перегружен. Возвращает файлы в таблице файлов манифеста сборки.
GetHashCode (унаследовано от Object)   Служит хеш-функцией для конкретного типа, пригоден для использования в алгоритмах хеширования и структурах данных, например в хеш-таблице.
GetLoadedModules Перегружен. Возвращает все загруженные модули, являющиеся частью этой сборки.
GetManifestResourceInfo Возвращает информацию о способе сохранения данного ресурса.
GetManifestResourceNames   Возвращает имена всех ресурсов в этой сборке.
GetManifestResourceStream   Перегружен. Загружает указанный ресурс манифеста из сборки.
GetModule Возвращает указанный модуль этой сборки.
GetModules   Перегружен. Возвращает все модули, являющиеся частью этой сборки.
GetName   Перегружен. Возвращает AssemblyName для этой сборки.
GetObjectData Возвращает сведения сериализации со всеми данными, необходимыми для повторного создания этой сборки.
GetReferencedAssemblies Возвращает объекты AssemblyName для всех сборок, на которые ссылается данная сборка.
GetSatelliteAssembly   Перегружен. Возвращает сопутствующую сборку.
GetType   Перегружен. Возвращает объект Type, предоставляющий указанный тип.
GetTypes   Возвращает типы, определенные в этой сборке.
IsDefined Показывает, определен ли пользовательский атрибут, заданный указанным значением Type.
Load   Статический. Перегружен. Загружает сборку.
LoadFile Статический. Перегружен. Загружает содержимое файла сборки.
LoadFrom   Статический. Перегружен. Загружает сборку.
LoadModule Перегружен. Загружает внутренний модуль этой сборки.
LoadWithPartialName Статический. Перегружен. Загружает сборку из папки приложения или из глобального кэша сборок, используя частичное имя.
ToString   Переопределен. Возвращает полное имя сборки, также называемое отображаемым именем.

Открытые события

ModuleResolve Возникает, когда загрузчик классов общеязыковой среды выполнения не может обработать ссылку на внутренний модуль сборки, используя обычные средства.

Защищенные методы

Finalize (унаследовано от Object)   Переопределен. Позволяет объекту Object попытаться освободить ресурсы и выполнить другие завершающие операции, перед тем как объект Object будет уничтожен в процессе сборки мусора. В языках C# и C++ для функций финализации используется синтаксис деструктора.
MemberwiseClone (унаследовано от Object) Создает неполную копию текущего Object.

 



<== предыдущая лекция | следующая лекция ==>
Атрибуты | Класс сборки в действии


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.046 сек.