AddLibraries
Подключить каталог библиотеки элементов
Вызов:
int ires = ac_request("Environment","AddLibraries",string LibPath);
Здесь:
LibPath - путь к каталогу с подключаемой библиотекой
ires -1/0 если есть/нет ошибки
Пример 1.
Вы постоянно получаете файл с проектом от своего коллеги и всякий раз требуется подключать библиотеки, которые находятся у вас в других местах, и ARCHICAD стоит не на C:, а на D:.
int main()
{
attach_lib("C:\\Моя библиотека элементов");
attach_lib("D:\\Program Files\\GRAPHISOFT\\ARCHICAD 23\\Библиотека ARCHICAD 23");
}
// функция для подключения библиотеки - подключить и сообщить результат в консоль (окно сообщений)
int attach_lib(string sLibPath)
{
int ires = ac_request("Environment", "AddLibraries", sLibPath);
cout << "\nБиблиотека "<< sLibPath;
if(ires == 0) {
cout << "\nуспешно подключена";
}
return ires;
}
Пример 2.
Если в названии проекта есть фраза "Москва-Сити" - подключить дополнительную библиотеку.
int main()
{
attach_lib("D:\\Program Files\\GRAPHISOFT\\ARCHICAD 23\\Библиотека ARCHICAD 23");
attach_lib("C:\\Моя библиотека элементов");
// Анализируем название проекта в информации о проекте
ac_request_special("get_element_value", "PInfo", "Наименование Проекта");
string svalue = ac_getstrvalue();
if(strcontains(svalue, "Москва-Сити"))
{
attach_lib("C:\\Библиотека элементов Москва-Сити");
}
}
// функция для подключения библиотеки - подключить и сообщить результат в консоль (окно сообщений)
int attach_lib(string sLibPath)
{
int ires = ac_request("Environment", "AddLibraries", sLibPath);
cout << "\nБиблиотека "<< sLibPath;
if(ires == 0) {
cout << "\nуспешно подключена";
}
return ires;
}