Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Разрешения на COM соединения

Разрешения на COM соединения
Я
   zippygrill
 
30.12.21 - 16:59
Привет!
Как разрешать из внешних обработок COM соединения в безопасном режиме (чтобы не было лишних диалогов предупреждений) - знаем (https://infostart.ru/1c/articles/552950/)

Но как это сделать если вызов идет из основной конфе?

Типа:

    QP = Неопределено;
    Попытка
        QP = Новый COMОбъект("DebenuPDFLibrary64AX1811.PDFLibrary");
    Исключение
   zippygrill
 
1 - 30.12.21 - 17:02
неужели оно :)

// Возвращает внутреннее описание разрешения на использование COM-класса.

//
// Параметры:

//  ProgID - Строка - ProgID класса COM, с которым он зарегистрирован в системе.
//    Например, "Excel.Application",

//  CLSID - Строка - CLSID класса COM, с которым он зарегистрирован в системе.
//  ИмяКомпьютера - Строка - имя компьютера, на котором надо создать указанный объект.

//    Если параметр опущен - объект будет создан на компьютере, на котором выполняется
//    текущий рабочий процесс,

//  Описание - Строка - описание причины, по которой требуется предоставление разрешения.
//

// Возвращаемое значение:
//  ОбъектXDTO - внутреннее описание запрашиваемого разрешения.

//  Предназначен только для передачи в качестве параметра в функции.
//  РаботаВБезопасномРежиме.ЗапросНаИспользованиеВнешнихРесурсов(),

//  РаботаВБезопасномРежиме.ЗапросНаОтменуРазрешенийИспользованияВнешнихРесурсов() и
//  РаботаВБезопасномРежиме.ЗапросНаОчисткуРазрешенийИспользованияВнешнихРесурсов().

//
Функция РазрешениеНаСозданиеCOMКласса(Знач ProgID, Знач CLSID, Знач ИмяКомпьютера = "", Знач Описание = "") Экспорт
    
    Пакет = РаботаВБезопасномРежимеСлужебный.Пакет();
    Результат = ФабрикаXDTO.Создать(ФабрикаXDTO.Тип(Пакет, "CreateComObject"));
    Результат.Description = Описание;
    
    Результат.ProgId = ProgID;
    Результат.CLSID = Строка(CLSID);
    Результат.ComputerName = ИмяКомпьютера;
    
    Возврат Результат;
    
КонецФункции
   ДедМорроз
 
2 - 02.01.22 - 23:47
Да,именно оно.
Создаешь разрешения для всех классов и уже никаких вопросов при запуске.

Список тем форума
 
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.