1. Если в качестве аргумента CompName дана строка, первые четыре символа которой составляют слово File, то остальная часть строки содержит имя компонента и после пробела имя файла, содержащего компонента. В противном случае считается, что аргумент CompName содержит указатель на область памяти, содержащую описание компонента в формате для записи на диск. Если описание не вмещается в одну область памяти, то допускается включение в текст описания компонента ключевого слова Continue, за которым следует четыре байта, содержащие адрес следующей области памяти.
2. Экземпляр компонента считывается из файла или из памяти и добавляется
3. Если считывание завершается по ошибке, то возникает ошибка n02 — ошибка считывания компонента, управление передается обработчику ошибок, а обработка запроса прекращается.
Удаление экземпляра компонента (xxDelete)
Описание запроса:
Pascal:
Function xxDelete(CompName: PString): Logic;
C:
Logic xxDelete(PString CompName)
Описание аргумента:
CompName — указатель на строку символов, содержащую полное имя компонента.
Назначение — удаляет указанного в параметре CompName компонента из списка компонентов.
Описание исполнения.
1. Если список компонентов пуст или имя компонента, переданное в аргументе CompName, в этом списке не найдено, то возникает ошибка n01 — неверное имя компонента, управление передается обработчику ошибок, а обработка запроса прекращается.
Заметим, что попытка удаления младшей структурной единицы приводит к удалению всего компонента содержащего данную структурную единицу.
Запись компонента (xxWrite)
Описание запроса:
Pascal:
Function xxWrite(CompName: PString; FileName: PString): Logic;
C:
Logic xxWrite(PString CompName, PString FileName)
Описание аргументов:
CompName — указатель на строку символов, содержащую имя компонента.
FileName — имя файла или адрес памяти, куда надо записать компонента.
Назначение — сохраняет в файле или в памяти компонента, указанного в аргументе CompName.
Описание исполнения.
1. Если в качестве аргумента CompName дан пустой указатель, или указатель на пустую строку, то исполняющим запрос объектом является текущий компонент.
2. Если список компонентов пуст или имя компонента, переданное в аргументе CompName, в этом списке не найдено, то возникает ошибка n01 — неверное имя компонента, управление передается обработчику ошибок, а обработка запроса прекращается.
3. Если в качестве аргумента FileName дана строка, первые четыре символа которой составляют слово File, то остальная часть строки содержит имя файла, для записи компонента. В противном случае FileName должен содержать пустой указатель. В этом случае запрос вернет в нем указатель на область памяти, куда будет помещено описание компонента в формате для записи на диск. Если описание не вмещается в одну область памяти, то в текст будет включено ключевое слово Continue, за которым следует четыре байта, содержащие адрес следующей области памяти.
4. Если во время сохранения компонента возникнет ошибка, то генерируется ошибка n03 — ошибка сохранения компонента, управление передается обработчику ошибок, а обработка запроса прекращается.
Вернуть имена структурных единиц (xxGetStructNames)
Описание запроса:
Pascal:
Function xxGetStructNames(CompName: PString; Var Names: PRealArray): Logic;
C:
Logic xxGetStructNames(PString CompName, RealArray* Names)
Описание аргументов:
CompName — указатель на строку символов, содержащую имя компонента или полное имя его структурной единицы.
Names — массив указателей на имена структурных единиц.
Назначение — возвращает имена всех компонентов в списке компонентов или имена всех структурных единиц структурной единицы, указанной в аргументе CompName.
Описание исполнения.
1. Если в качестве аргумента CompName дан пустой указатель, или указатель на пустую строку, то исполняющим запрос объектом является соответствующий программный компонент. В качестве ответа в указателе Names возвращается массив, каждый элемент которого является указателем на
2. Если имя компонента, переданное в аргументе CompName, не найдено в списке компонентов, то возникает ошибка n01 — неверное имя компонента, управление передается обработчику ошибок, а обработка запроса прекращается.