Сообщения

Показаны сообщения с ярлыком "com"

Ошибка получения объекта com: отказано в доступе.

Изображение
Данная ошибка возникла при использовании библиотеки, например HASP, которая была зарегистрирована с помощью COM+. Такая регистрация помогает использовать 32 разрядные библиотеки на 64 разрядных серверах. Подробное описание действий по регистрации библиотек легко найти на просторах интернета . После регистрации не всегда проходит все гладко по созданию COM объекта. Может возникнуть ошибка доступа к COM объекту, которая звучит примерно так: Ошибка получения объекта COM: отказано в доступе. Что бы избавиться от ошибки, откройте оснастку "Службы компонентов". Раскройте дерево служб и в ветке COM+ найди нужную службу, откройте её свойства (см. рисунок 1). Рисунок 1. Свойства приложения COM+

Настройка системы для формирования документов Word или Excel на стороне сервера

Изображение
Допустим, необходимо формировать документ офисного пакета Microsoft Office на стороне сервера, то есть от имени сервера 1С, но не всегда установка "из коробки" позволяет выполнять данную операцию. так как обычно происходит исключительная ошибка создания COM-объекта. В этом случае требуется более тонкая настройка системы в целом. Настройка заключается в установке прав доступа сервера 1С к DCOM-приложению и папке Desktop. Рассмотрим процесс настройки. Откройте оснастку "Службы компонентов", для этого в командной строке выполните команду dcomcnfg (или comexp.msc /32 для 64-разрядной Windows, см. рисунок 1). Рисунок 1. Запуск оснастки "Службы компонентов" В узле Настройка DCOM найдите элемент Microsoft Excel Application(если хотите выполнять формирование документов Excel) или элемент Документ Microsoft Office Word 97 - 2003(если хотите выполнять формирование документов Word), нажмите правой кнопкой мыши и выберите пункт Свойства (см. рисунок 2). Ри...

Шифрование строковых данных с помощью CAPICOM.EnvelopedData

Изображение
Шифрование строковых данных. Менеджер криптографии. Просмотр криптопровайдеров ОС Windows. Инициализация менеджера криптографии. Шифрование строковых данных с помощью CAPICOM.EncryptedData Создание тестового сертификата Для получения необходимых утилит для работы с тестовыми сертификатами необходимо установить Visual Studio Express, ибо других способов получения этих утилит я не нашел. Перечень необходимых утилит: makecert - средство создания сертификатов; cert2spc - средство проверки сертификата издателя программного обеспечения; pvk2pfx - средство создания файлов обмена личной информации. Создадим самозаверяющий сертификат, который будет использоваться для шифрования, с указанием поддерживаемого криптопровайдера Microsoft Strong Cryptographic Provider с помощью утилиты makecert.exe: makecert.exe -r -n "cn=1centerprise8.blogspot.com" -sp "Microsoft Strong Cryptographic Provider" -sky exchange -sv C:\test_cert\1centerprise.pvk C:\test_cert\1cente...

Конвертация строковых данных в строку формата base64. Способ N2.

Изображение
Как конвертировать строковые данные в строку формата base64 с помощью стандартных средств платформы 1С описано в этом сообщении: Конвертация строковых данных в строку формата base64 . Плюс данного решения - это использование стандартных средств, то есть ничего устанавливать дополнительно не надо. Минус - это наличие файловой операции, которая занимает определенное время выполнения. Имеется второй вариант решения данной задачи - прибегнуть к использованию библиотеки CAPICOM. Как регистрировать библиотеку и почему её использование не рекомендуется описано в этой статье: Вычисление хэш-сумм MD, SHA при помощи CAPICOM .

Вычисление хэш-суммы по алгоритму MD5

Изображение
Вычисление хэш-сумм MD, SHA при помощи CAPICOM Вычисление хэш-суммы по алгоритму ГОСТ Р 34.11-94 Вычисление хэш-суммы по алгоритму SHA-512 Как вычислять хэш-сумму по алгоритму SHA-512 описано в этой статье . SHA-512 применяется для защиты информации и считается довольно устойчивой хэш-функцией. Но не стоит забывать о старом добром MD5 , который имеет 128 битную хэш-сумму, выполняется быстрее чем SHA-1, SHA-2 и отлично подходит для создания "отпечатков" большого объема данных. Для вычисления хэш-суммы по алгоритму MD5 воспользуемся COM-объектами, нам потребуется объект с ProgID -  System.Security.Cryptography.MD5CryptoServiceProvider . Он имеет метод ComputeHash, который возвращает хэш-сумму в виде 16-байтового массива.

Добавление поддержки VBScript и JScript - расширяем возможности 1С

Изображение
Поиск подходящего COM-объекта Необходимо было получить текущее время на сервере с точностью до миллисекунд. К сожалению платформа 1С вообще не знает что такое миллисекунды, у неё там свои моменты времени. Подходящего COM-объекта я не обнаружил, но на сайте MSDN нашел интересную технологию MS Script Control . Данная технология позволяет исполнять код в своем приложении на языке Visual Basic или JavaScript, то есть в 1С у нас развязываются руки и мы получаем инструмент для работы с системной информацией операционной системы WINDOWS: получить информацию о железе компьютера, записать параметр в реестр и т.д.

Использование регулярных выражений в 1С. Да-да, это возможно!

Изображение
  Регулярное выражение - это шаблон текста, который состоит из обычных символов и/или специальных метасимволов. Поиск необходимого COM-объекта   Потребовалось мне выбрать из строки слова, заключенные в квадратные скобки. Например, имеется строка: "Строка с [Квадратными] скобками для [примера]", результат должен быть: "Квадратными" и "примера". Так как у платформы 1С нету стандартной функции по выполнению регулярного выражения, то сразу же полез на просторы MSDN . Там я нашел класс   System.Text.RegularExpressions . Regex , но создать COM-объект этого класса у меня не получилось :(, думаю, может как-то по-другому создается COM-объект для этого класса и полез в Редактор реестра : VBScript.RegExp в редакторе реестра   Там я обнаружил в ветке HKEY_CLASSES_ROOT имя COM-объекта VBScript.RegExp . Этот объект работает на основе библиотеки vbscript.dll и именуется технологией  VBScript Regular Expressions .

Проверка подписи XMLDSIG на примере СМЭВ

Подготовка SOAP-сообщения перед созданием подписи XMLDSIG на примере СМЭВ Проверка подписи органа власти с помощью сервиса СМЭВ Проверка подписи XMLDSIG (WS-Security) с помощью сервиса СПЭП СМЭВ Для начала, нам необходимо установить КриптоПро CSP  и КриптоПро CADESCOM. Скачать данные продукты можно по этой  ссылке . Если используется клиент-серверный вариант работы платформы 1С, то устанавливаем продукты КриптоПро на тот же компьютер, где установлен сервер 1С:Предприятие. Все ниже используемые API-функции описаны по адресу  вот тут  в разделе КриптоПро ЭЦП. Руководство разработчика .

Сохраняем отчетные данные в формате doc, xls, pdf без COM-объектов

Пришел начальник и сказал: "выведи мне такую-то отчетную информацию, да что б в Excel'е я мог открыть!". Смотрим методы табличного документа и видим метод Записать() . Описание метода Синтаксис:     Записать(<ИмяФайла>, <ТипФайлаТаблицы>) Параметры:     <ИмяФайла> (обязательный)     Тип: Строка .     Имя файла, в котором сохраняется табличный документ.     <ТипФайлаТаблицы> (необязательный)     Тип: ТипФайлаТабличногоДокумента .     Формат, в котором будет сохранен табличный документ.     Значение по умолчанию: MXL Описание:     Записывает табличный документ в файл. Аха, с первым параметром все понятно, а что за второй параметр?