Difference between revisions of "IsExecutingInExternalModule"

From SunFlurry wiki
Jump to: navigation, search
1>Admin
(Created page with "{{infobox function |name=IsExecutingInSeparateProcess |object=Функции общего назначения |caption=Функции среды |type=1 |status=2 |db=0 |...")
 
m (1 revision imported)
 
(No difference)

Latest revision as of 08:42, 27 November 2023

  IsExecutingInSeparateProcess (Функции среды)
Объект:Функции общего назначения
Статус разработки: Реализована
Тип:Функция
Обращение к БД:Нет
Визуальность:Нет

Функция возвращает 1, если текущая программа исполняется в контексте внешнего объекта (*.sfo). Также функция может получить имя файла объекта, с помощью которого, можно получить сам объект (см. ExternalObject.Load), если это необходимо.

Синтаксис

IsExecutingInExternalModule(<Путь и имя файла внешнего объекта (STRING)>):<Результат 0 или 1 (INT)>

Аргументы

  • <Путь и имя файла внешнего объекта (STRING)> - (возможен аргумент-переменная (ByRef)) (необязательный аргумент) Аргумент может возвращать путь и имя внешнего объекта, в контексте которого происходит исполнение текущей программы. Если исполнение не происходит в контексте внешнего объекта, аргумент возвращает пустую строку.

Возвращаемое значение

Функция возвращает числовое значение.

Примеры

//Вывести список всех файлов внешнего объекта, который исполняется в данный момент

ИмяФайла:="";
If IsExecutingInExternalModule(ИмяФайла) Then
  //Найти уже загруженный объект в системе
  аОбъект:=ExternalObject.Load(ИмяФайла);

  aList:=аОбъект.LoadFileNames("*.*",1);
  Message("Текущий объект содержит следующие файлы:");
  For i:=1 To aList.Size() Do
    Стр:=TearStr(aList[i],Chr(1));
    Message(Стр);
  EndDo;

Else
  Message("Исполнение не происходит в контексте внешнего объекта!");
EndIf;