Внешняя компонента для 1С:Предприятие, предоставляет различные сервисные возможности: получение переменных среды, информация о процессе, пауза и т.д.
Объект содержит вспомогательные возможности
Pid(): Число
- возвращает pid процесса, в котором выполняется внешняя компонентаEnv(имя: Строка): Строка|Неопределено
- возвращает значение переменной среды, если переменной нет, то возвращается НеопределеноEnvs(): Строка
- возвращает все переменные средыCurrentDir(): Строка
- возвращает текущий каталогCurrentExe(): Строка
- возвращает текущее имя процессаPrint(Текст: Строка)
- выводит текст в стандартный поток вывода, имеет смысл использовать, если используется запуск из консоли, в CI/docker/etcEPrint(Текст: Строка)
- выводит текст в стандартный поток ошибок, использование аналогично методуPrint
Sleep(Длительность: Число)
- пауза, время задается в миллисекундах
Этот объект позволяет выполнять замеры производительности с точностью до микросекунд
Start()
- начинает замерElapsed(): Число
- возвращает время пройденное с момента старта в микросекундах
Если Не ПодключитьВнешнююКомпоненту(ИмяФайла(), "MedIgor", ТипВнешнейКомпоненты.Native,
ТипПодключенияВнешнейКомпоненты.НеИзолированно) Тогда
ВызватьИсключение "Не удалось подключить внешнюю компоненту";
КонецЕсли;
Utils = Новый ("Addin.MedIgor.Utils");
Envs = Utils.Envs();
Сообщить(СтрШаблон("Pid: %1", Utils.Pid()));
Сообщить(СтрШаблон("APPDATA: %1", Utils.Env("APPDATA")));
Сообщить(СтрШаблон("CurrentDir: %1", Utils.CurrentDir()));
Сообщить(СтрШаблон("CurrentExe: %1", Utils.CurrentExe()));
Instant = Новый ("Addin.MedIgor.Instant");
Instant.Start();
Utils.Sleep(100);
Сообщить(СтрШаблон("Длительность паузы 100мс: %1 мкс", Instant.Elapsed()));
Utils.Print("Hello std" + Символы.ПС);
Utils.EPrint("Hello error" + Символы.ПС);