ActiveX компонент DynamicWrapperX 2.2 расширенный. Работает в том числе под 64-разрядной Windows 10

14.04.19

Разработка - Разработка внешних компонент

DynamicWrapperX — это ActiveX компонент (СОМ-сервер), созданный по мотивам DynamicWrapper, как попытка более полной реализации идеи. Он предоставляет возможность в скриптах на JScript и VBScript регистрировать в качестве методов объекта и затем вызывать функции, экспортируемые dll-библиотеками, в частности функции Windows API. Версия 1 работает под Windows 98. С версии 2 также возможна регистрация функции по её адресу в памяти и регистрация машинного кода функции, представленного в виде хекс-строки. Этот компонент не является модификацией оригинального кода DynamicWrapper, он написан с нуля на языке ассемблера GoAsm. Версия 2.2 тестировалась под Windows XP SP3, Windows 7 SP2, Windows 8.1, Windows 10.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Dynwrapx2.2.0.0_32.zip
.zip 10,81Kb
20
20 Скачать (1 SM) Купить за 1 850 руб.
Dynwrapx2.2.0.0_64.zip
.zip 11,55Kb
49
49 Скачать (1 SM) Купить за 1 850 руб.
Dynwrapx2.1.1.1_32.zip
.zip 10,86Kb
69
69 Скачать (1 SM) Купить за 1 850 руб.
Dynwrapx2.1.1.1_64.zip
.zip 11,68Kb
115
115 Скачать (1 SM) Купить за 1 850 руб.
Dynwrapx1.0.0.zip
.zip 6,07Kb
2
2 Скачать (1 SM) Купить за 1 850 руб.
HELP.zip
.zip 31,52Kb
78
78 Скачать (1 SM) Купить за 1 850 руб.

При решении одной задачи столкнулся с трудностью, в 64-разрядной версии Windows 8.1 никак не получалось зарегистрировать библиотеку dynwrap.dll.

Благо нашел отличную разработку от Юрия Попова

DynamicWrapperX 2.2

 

Распространяется с согласия автора абсолютно бесплатно.

Лицензия: freeware.

Корректно работает в том числе под 64-разрядной Windows 10.

Версия 2.2 тестировалась под Windows XP SP3, Windows 7 SP2, Windows 8.1, Windows 10.

Версия 1.0 работает под Windows 98.

Нововведения в версии 1.0.0.0 по отношению к DynamicWrapper:

  • Добавлена возможность регистрации компонента в системе для текущего пользователя. Это может пригодиться, если у пользователя нет прав администратора.
  • Расширен набор типов входных параметров и возвращаемых значений.
  • Добавлены выходные параметры.
  • Унифицирована работа со строками в JScript и VBScript.
  • Реализован обратный вызов (callback), т.е. возможность для функций API в свою очередь вызывать функции скрипта. Последнее нужно для использования таких API-функций, как EnumWindows.
  • Под Windows 98 отпала необходимость создавать отдельный объект для каждой используемой функции.
  • Добавлены методы NumGet, NumPut, StrPtr, StrGet, Space.

 

Изменения в версии 2 по отношению к версии 1:

  • Компонент не тестировался под Windows 98 и официально её не поддерживает.
  • Доступны два варианта: x86 и x64.
  • Изменён CLSID компонента.
  • При установке и удалении проверяется наличие 1-й версии; дальнейшее зависит от результатов проверки (см. раздел Регистрация в системе).
  • Расширен набор типов параметров и возвращаемых значений: добавлены типы m (Int64), q (UInt64), v (VARIANT).
  • Количество callback-функций теперь неограничено.
  • Расширены возможности метода Register (регистрация функции по ординалу, регистрация под другим именем, добавлен флаговый параметр "f=").
  • Добавлены встроенные методы RegisterAddr, RegisterCode, StrPut, ObjPtr, ObjGet, ArrPtr, VarPtr, MemAlloc, MemFree, Bitness, Version.
  • В методах StrPtr, StrGet, StrPut вместо типа строки можно прямо указать её кодировку.

Изменения в версии 2.1 по отношению к версии 2.0:

  • Добавлено: методы LastError, MemZero, MemCopy, MemRead, MemWrite.
  • Добавлено: необязательный параметр Offset для StrGet и StrPut.
  • Добавлено: возможность использования имён кодировок — "utf-8" и т.п. — в StrPtr, StrGet и StrPut.
  • Изменено: необязательный параметр Offset в NumGet и NumPut может опускаться из середины списка параметров.
  • версия 2.1.1.0 собрана без сжатия компрессором Mpress для избежания ложных срабатываний некоторых антивирусов.
  • в версии 2.1.1.1 исправлена ошибка в методе LastError, вызывавшая исключение при его вызове с аргументом 1, если описание для кода ошибки не было найдено.

В версию 2.2 добавлен флаговый параметр в метод RegisterCallback для указания соглашения вызова callback-функции.

В прикрепленных файлах версия 32-разрядная, 64-разрядная и мануал по установке и использованию от разработчика на английском и русском языках.

 

dynwrap.dll dynwrap Windows 7 8 8.1 10 DynamicWrapper DynamicWrapperX 2.0 2.1 2.2

См. также

Разработка внешних компонент POS терминал Рабочее место Розничная торговля Программист Пользователь Платформа 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Управление торговлей 10 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Розничная и сетевая торговля (FMCG) Рестораны, кафе и фаст-фуд Реклама, PR и маркетинг Управленческий учет Платные (руб)

Медиадисплей покупателя может отображать текущую покупку на кассовом месте, показывать видеорекламу, баннеры, во время простоя разворачивать рекламу на весь экран. Экран можно использовать в качестве графического меню-борда в кафе и видеовывески. В качестве устройства отображения можно использовать Android-планшеты, смарт-телевизоры с Android, мониторы или проекторы под управлением Windows или Linux-компьютера. Linux-версия успешно запускается на одноплатных компьютерах Raspberri Pi и Orange Pi. Настраивается ЛЮБОЙ ДИЗАЙН экрана при помощи встроенного графического редактора! Решение можно масштабировать от одного экрана до тысяч экранов с централизованным управлением.

18000 руб.

30.05.2017    54042    9    69    

46

Разработка внешних компонент Программист Платформа 1С v8.3 Конфигурации 1cv8 1С:Управление торговлей 11 Платные (руб)

Внешняя компонента для конвертации PDF файлов в картинки без использования дополнительных программ. Работает на сервере и в тонком клиенте.

2400 руб.

25.06.2024    1127    3    4    

3

Разработка внешних компонент Телефония, SIP Программист Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

Внешняя компонента выполнена по технологии Native API для 1С 8.х, обеспечивает доступ к программным АТС Asterisk (FreePBX, Elastix) через AMI интерфейс. Через него можно управлять многими функциями Asterisk (определение номеров, перевод звонков, набор телефона и т. д.)

2400 руб.

04.05.2018    47298    124    66    

67

Разработка внешних компонент Программист Платформа 1С v8.3 Платформа 1C v8.2 Платные (руб)

Внешняя компонента, позволяющая посылать команды и получать ответы по GraphQL протоколу из 1С.Может быть использована при интеграции. В 1С работает на стороне "клиента".

4600 руб.

27.06.2023    3598    3    0    

5

Разработка внешних компонент Программист Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

Позволяет автоматизировать работу с картинками. С помощью компоненты можно измерять размер изображений, поворачивать их, наносить водяные знаки, конвертировать из одного формата в другой. Будет очень полезна для интернет-магазинов и всех, кому постоянно требуется работать с различными графическими форматами. Выполнена по технологии NativeAPI. Работает с форматами: jpg (jpeg), png, bmp, gif, tif

3600 руб.

02.09.2010    77516    72    257    

191

Разработка внешних компонент Программист Платформа 1С v8.3 Конфигурации 1cv8 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия 3.0 Платные (руб)

Внешняя компонента позволяет работать c TWAIN-совместимым оборудованием (сканерами, камерами) . Полностью совместима со стандартной TWAIN-компонентой из БСП и может применяться как ее замена без изменения вызовов, при этом может работать с 64-разрядной платформой, а так же имеет расширенную функциональность, например, сохранение результата непосредственно в PDF без использования сторонних утилит. Прекрасно работает на сервере, тонком клиенте и веб-клиенте (проверена работа в браузерах Google Chrome, Mozilla Firefox и Microsoft Internet Explorer).

3000 руб.

12.05.2020    28656    138    100    

91

Разработка внешних компонент Системный администратор Программист Стажер Бесплатно (free)

Библиотека для работы с базами SQLite из 1С на основе внешней компоненты. Для Linux и Windows, бесплатно и с открытым исходным кодом!

14.01.2025    1850    bayselonarrend    10    

44

Разработка внешних компонент Программист Платформа 1С v8.3 Конфигурации 1cv8 Россия Бесплатно (free)

В статье описывается приложение-конструктор внешних компонент (native API). Конструктор упрощает процесс разработки за счет удобного добавления всех нужных функций и процедур в графическом режиме, с указанием их параметров и типов параметров. На выходе приложение генерирует готовый код на С++ и Rust и позволяет сразу приступить к реализации, без настройки API компоненты вручную.

04.12.2024    4723    kovalevdmv    26    

75
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. CaSH_2004 373 21.06.15 20:35 Сейчас в теме
За то что не поленился и скопировал сюда с сайта автора описание - спасибо :) Ну а где пример как использовать в 1С?
3. 1sig 251 26.06.15 12:50 Сейчас в теме
(2) CaSH_2004, применений множество. сделай поиск - Новый COMОбъект("DynamicWrapper",
как реализовать функцию Sleep в 1С например и т.д.
4. tormozit 7245 30.12.16 18:26 Сейчас в теме
Можно ли выложить исходники (например на github)?
5. 1sig 251 09.01.17 00:59 Сейчас в теме
6. tormozit 7245 13.06.17 10:24 Сейчас в теме
Появилась новая версия DynamicWrapperX2 с новыми методами (например MemRead). Можно ли обновить описание?
8. 1sig 251 01.07.17 12:38 Сейчас в теме
(6)обновлено до версии 2.1.
7. tormozit 7245 17.06.17 10:51 Сейчас в теме
У новой версии функция Version возвращает 2.1.4.1 . Хотелось бы знать версию компоненты из этой публикации.
9. 1sig 251 01.07.17 12:38 Сейчас в теме
10. tormozit 7245 18.10.18 22:40 Сейчас в теме
WIndows defender теперь стал определять ее как HackTool
Прикрепленные файлы:
11. kote 537 21.10.18 16:10 Сейчас в теме
(10)

Инструменты разработчика не могу запустить из за этого :((
Доступа админского нет на этом компьютере.. побороть не могу

Можете что-то посоветовать?
13. tormozit 7245 21.10.18 21:57 Сейчас в теме
(11) Выпущена исправленная версия ИР.
12. tormozit 7245 21.10.18 19:11 Сейчас в теме
(10) Советую подождать выхода новой версии ИР.
14. kote 537 22.10.18 02:11 Сейчас в теме
(12) А Дефендер все, навсегда будет ругаться на эту тулзу?

Может это ошибка - все таки тулза подписана, да и инструменты Рассиновича для винды (кажется такая фамилия) тоже были достаточно "хактулзными" - но ничего, не ругается на них..

PS .. и странно - 32-битный ДинамикВраппер не определяется как хактулз..
15. tormozit 7245 22.10.18 07:07 Сейчас в теме
16. chessman 193 25.10.18 09:13 Сейчас в теме
(14)
Коллега, а Вы какой 1C-й клиент используете x32 или х64? С каким из них проблемы?
17. kote 537 25.10.18 16:09 Сейчас в теме
(16) Проблема с x64 компонентой, клиенты используем и те и эти..
.. но версия компонента не от клиента, а от разрядности ОС зависит
(по моему так, не?).
18. chessman 193 25.10.18 18:30 Сейчас в теме
(17) "(по моему так, не?). " не, не так, как раз от клиента.
Теперь по сути вопроса. У меня defender не ругается ни на ту, ни на другую версии, может это связано с установленным AVG.
Предлагаю провести следующий эксперимент: сделать копию Dll, взять winhex, найти там CLSID и исправить его в двух местах. Сохранить и проверить дефендером, будет ли ругань.
Прикрепленные файлы:
19. SleeperVlz 29.11.22 10:55 Сейчас в теме
Добрый день.
Пытаюсь использовать эту компоненту для того, чтобы подключить в скрипт стороннюю библиотеку (не стандартную виндовую, которые описаны в хелпе). В параметрах метода Register передаю полный путь к библиотеки вида «C:\Program Files (x86)\MyProg Ver 831\bin\MyFile.dll». В результате получаю ошибку «Не удалось найти или загрузить DLL». Вопрос: так все-таки не удалось найти или загрузить? Т.е. может оно пути с пробелами не любит или путь нужно как-то хитро писать?
Прикрепленные файлы:
20. 1sig 251 05.12.22 09:00 Сейчас в теме
(19) уточните у автора компоненты, такие манипуляции с dll все таки выходят за рамки типового поведения Платформы 1С и ее взаимодействия с ОС)
21. Serg2000mr 760 18.12.22 22:02 Сейчас в теме
Из-за кода
uint = 0;
format = "\0";
cchMaxCount = 10;

Wrap = Новый COMОбъект("DynamicWrapperX.2");

Wrap.Register("user32", "GetClipboardFormatNameA", "i=uSl", "r=l");
Wrap.Register("user32", "CloseClipboard");

res = Wrap.OpenClipboard(0);
	
ptr = Wrap.VarPtr(format);
fName	= Wrap.GetClipboardFormatNameA(uint, ptr, cchMaxCount);
Показать


Вываливается из 1С без всяких окон на последней строке.
22. 1sig 251 19.12.22 05:09 Сейчас в теме
(21) сообщите автору об ошибке, быть может поможет разобраться в чем причина: ошибки в dll или что то не так на уровне ОС с правами. Поддержку работы с буфером обмена обещали на платформе 8.3.24
Оставьте свое сообщение