"WebCam" — ActiveX-компонента для 1С


Компонента работает с устройствами, поддерживающими Twain32 драйвер (вебкамеры, фотоаппараты и др.)

*** Для работы компоненты потребуется установленный Microsoft .NET Framework 2.0, который можно скачать отсюда.
http://www.microsoft.com/downloads/details.aspx?displaylang=ru&FamilyID=0856eacb-4362-4b0d-8edd-aab15c5e04f5

Чтобы зарегистрировать компоненту в Windows — запустить reg.bat
(для удаления информации о компоненте в Windows — запустить unreg.bat)
или использовать совместно с хранилищем внешних компонент: //infostart.ru/projects/2863/

*** Приложены демо-примеры для 1С 7.7 и 8.1

*** Добавление на форму 1С:

v7: Использовать 1С++:

Перем Вебкамера;

Процедура ПослеОткрытия()
Вебкамера = СоздатьОбъект("АктивИкс");
Вебкамера.УстановитьАтрибут(Форма, "АктХ");
//"АктХ" - идентификатор элемента диалога, на месте которого будет создан элемент ActiveX.
//только для реквизитов диалога типа "Текст".
Вебкамера.СоздатьЭУ("Душелов.WebCam");
Вебкамера.УстановитьФокус();
КонецПроцедуры

Процедура АктХ_ПослеСохраненияКартинки(Файл)
Сообщить(Файл);
КонецПроцедуры

v8: Меню «Форма» — «Вставить ActiveX…» — Выбрать элемент «Душелов.WebCam»

*** Методы:

  • Запустить видео:
    Старт();
  • ОСТАНОВИТЬ ВИДЕО:
    Стоп();
  • ПОЛУЧИТЬ КАРТИНКУ
    СохранитьКартинку(Файл, Текст);

*** События:

  • ПослеСохраненияКартинки(Файл);

69 Comments

  1. Душелов

    Ах да, требуется директ-икс, не ниже 8.1

    Reply ↓
  2. coder1cv8

    Класс!

    Reply ↓
  3. CheBurator

    зачет!

    Reply ↓
  4. artem666

    На сколько помню вебкамеру можно подхатить через COM… но все равно клево!

    Reply ↓
  5. luns

    Прикольно. Фотки в базу добавлять..

    Reply ↓
  6. MaxiSoft

    Супер как можно получить добро на использование компоненты в своей разработке, довольно удобно вводить фотографий клиентов в базу, достаточно просто подключить камеру и сделать снимок! Большой респект за разработку.!!!

    Reply ↓
  7. Душелов

    (6) все мои разработки можно использовать в своих разработках. можно где-нить в коде в комменте меня упомянуть и все 🙂

    Reply ↓
  8. gavril

    Зачет.

    Так же новый товар можно добавлять 😉

    Reply ↓
  9. Дуб

    А видео оно показывает? В своё время прикручивал систему ввода в БД фотографий пользователей. Прикрутил, работает, но в режиме видео не пашет. Т.е. чтобы «прицелиться», использую отдельную программку (запускается из 1С, но как Active-X не прикрутить её никак), а потом уже перехватываю камеру ВК и ловлю снимок..

    Reply ↓
  10. Душелов

    (9) Пример советую посмотреть. Видео в левом окошке, скриншот полученный — в правом.

    Reply ↓
  11. alexpa2005

    Что-то не скачивается. :(( Может, ссылку удалили, или с сервером проблемы. Пишет — «не удается загрузить download.php». Попробую завтра. А плюсик ставлю сегодня!!!

    Reply ↓
  12. kabanoff

    Молодца! Интересная разработка.

    Reply ↓
  13. Дуб

    (10) посмотрел. Прикольно. Но через раз выдаёт «Не удалось настроить графические параметры. Значение не попадает в ожидаемый диапазон». В принципе, если 1С (Предприятие) перезапустить — то запускается.

    В целом — мне понравилось. Тем более, что до этого искал — ничего похожего не находил.

    Reply ↓
  14. Fisherru

    Наверное, возможно такое прикрутить к ЧеБурашкиной «[КОНТРОЛЬ] Охрана 1.0 — пропускной пункт»

    Она бы тогда ещё и сотояние сотрудников на вползании/выползании фиксировала. :)))))

    Reply ↓
  15. pioneex

    Интересно! Вопрос: как мне добавить в произвольной форме элемент управления «Душелов.WebCam», кроме копирования с демо примера?

    Reply ↓
  16. JohnyDeath

    (15) наверное так: v8: Меню «Форма» — «Вставить ActiveX…» — Выбрать элемент «Душелов.WebCam»

    Reply ↓
  17. pioneex

    Спасибо. Всё получилось!

    Reply ↓
  18. pioneex

    Всё хорошо, но второй раз в одной сессии v8 открыть не получается…

    Reply ↓
  19. seermak

    я тоже уже прикрутил обработку в программу — а ошибку (18) нельзя никак исправить?!

    Reply ↓
  20. Душелов

    Я посмотрю, почему второй раз нельзя открыть, видимо придется добавить команду очистки буфера и отключения от девайсов, и вызывать ее при закрытии обработки.

    Reply ↓
  21. Душелов

    (18) Ошибку воспроизвести не удалось. При закрытии формы точно вызываете команду Стоп(); ?

    Reply ↓
  22. seermak

    Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка)

    Если НЕ ВебКамера = Неопределено Тогда

    ВебКамера.Стоп();

    КонецЕсли;

    КонецПроцедуры

    (21) — из программы

    Reply ↓
  23. Душелов

    А мой пример как отрабатывает?

    Reply ↓
  24. seermak

    (23) специально еще раз поставил — одинаково Картинку выложил: http://infostart.ru/projects/2817/ рис 4 — тоже самое и на Вашей обработке

    Reply ↓
  25. Душелов

    (24) Давай конфигурацию, посмотрю 😉

    Reply ↓
  26. seermak

    (25) обработка на : http://infostart.ru/projects/2817/ — еще заметил что после закрытия обработки камера остается подключенной и больше ни на какие программы работы с камерой не реагирует, отключается только тогда, когда закрываешь сессию. я на viste, но (по комментариям) проблема не в ней. Дрова: Sonix / 24.04.2007 / 5.7.28.500 /Acer Crystal Eye webcam

    Reply ↓
  27. Душелов

    (26) Скачал, посмотрю. А мой детектор движений как с камерой твоей работает? Там технология другая используется.

    Reply ↓
  28. Душелов

    (26) Твоя обработка у меня нормально работает, закрыл, открыл, заново запустил — все ок.

    Ладно, попробую пошаманить в «Остановить()»…

    Reply ↓
  29. seermak

    (27) ага, во всяком случае, закрывается и стартует без ошибок.

    Reply ↓
  30. Душелов

    (29) Попробуйте теперь, и тест камеры тоже. Как это работает? (в тесте камера запускается 2 кнопкой слева, останавливается 3-ей)

    Reply ↓
  31. seermak

    (30) по TestCam — по 2 кнопке — подключается +, по 3 — выключается, но только изображение с камеры, сама же камера остается включенной (сигнализирует светодиод возле камеры) Камера полностью отрубается только тогда, когда «положу» Form1. Ну и, соответственно, пример демо работает также. Ладно, Василь, видать так мой бук работает. 🙁 (Хотя детектор движения работает же нормально — а нельзя никак туда слить нужные функции?). У меня в конторе еще пока не купили камеру, (может на их камере пойдет без затыков) так что время терпит. Все равно, большое спасибо!

    Reply ↓
  32. Gens76

    СУПЕР !!!

    Reply ↓
  33. arjuna

    Реально ли сделать просмотр видео из файла???

    Reply ↓
  34. Душелов

    (33) Берем АктивХ Windows Media Player и вперед.

    Reply ↓
  35. arjuna
  36. dmam

    У меня тоже выскакивает ошибка при повторном открытии обработки и запуске.

    Сделал то-же самое с помощью wiaaut.dll:

    Перем ВебКамера;

    Процедура ПослеОткрытия()

    ВебКамера = СоздатьОбъект(«АктивИкс»);

    ВебКамера.УстановитьАтрибут(Форма, «АктХ»);

    ВебКамера.СоздатьЭУ(«WIA.VideoPreview»);

    КонецПроцедуры

    //******************

    Процедура ПолучитьКартинку()

    Item = ВебКамера.Объект.Device.ExecuteCommand(«{AF933CAC-ACAD-11D2-A093-00C04F72DC3C}»);

    Image = Item.Transfer(«{557CF401-1A04-11D3-9A73-0000F81EF32E}»);

    Если ФС.СуществуетФайл(«C:WebCam.jpg») = 1 Тогда

    ФС.УдалитьФайл(«C:WebCam.jpg»);

    КонецЕсли;

    Image.SaveFile(«C:WebCam.jpg»);

    КартинкаКамеры.Загрузить(«C:WebCam.jpg»);

    КонецПроцедуры

    Reply ↓
  37. Душелов

    Для получения демо-версии или покупки обращайтесь по контактам, указанным в профиле.

    Reply ↓
  38. Martyn

    Плюс ставлю чичас — смотрю потом! Долго искал нечто подобное…. Автору БОЛЬШОЙ респект!

    Reply ↓
  39. ev-kov

    Компонента WIA не использует случаем ?

    Reply ↓
  40. Душелов

    Что есть WIA ?

    Reply ↓
  41. ev-kov

    Душелов

    WIA это Microsoft® Windows® Image Acquisition (WIA) Automation Library version 2.0

    какая то ошибочка есть в ВК скрин ошибки(http://slil.ru/27461401). на тестовом примере и ловится, после того как получили картинку и закрыли форму обработки в 1с, открываем по новой обработку, жмем старт, в появившемся активиксе выбираем параметры потока, нажимаем ОК и дальше не работает ничего — ошибка.

    Хотелось бы ускорить отладку ошибки, плюс есть некоторые вопросы, не бесплатно, можно обсудить в асе (62-387-523).

    Reply ↓
  42. Душелов

    Эту компоненту я более не развиваю.

    Reply ↓
  43. ev-kov

    (42) очень жаль, а как насчет исходников ?

    Reply ↓
  44. Skobelev

    Классно, хочу прикрутить к системе пропусков

    Reply ↓
  45. Jejer

    Супер, спа.

    А можно сделать, чтобы при старте каждый раз не появлялось окно Properties?

    Reply ↓
  46. CAIN

    У меня при запуске выдал ошибку: «не удалось нгастроить графические параметры»

    Reply ↓
  47. anig99

    Такая же фигня что и у многих с повторным стартом после остановки. Пробовал на ноуте со встроенной камерой на XP. Если выбирать прямой драйвер к камере, то повторно запустить не получается. Если же выбирать virtual driver (ноут asus поставляется с утилитами, в т.ч. и драйвером для пост-обработки), то стартует заново нормально.

    Reply ↓
  48. Душелов

    Еще раз повторюсь (42)

    Reply ↓
  49. anig99

    (49) но это не значит, что другие ими не пользуются и не читают комменты?

    Reply ↓
  50. mirco

    А под 8.2 существует способ использовать компоненту ?

    Reply ↓
  51. Душелов

    (51) Управляемые формы? Читайте мою статью.

    Reply ↓
  52. rus_2403

    Компонента работает в демо-режиме или нет.Если да то в чем он выражается.Спасибо

    Reply ↓
  53. Lokky

    Автору БОЛЬШУЩЕЕ СПАСИБО!!

    Только вопрос.. А можно ли как-нибудь при старт() чтоб она запускалась не спрашивая настройки камеры?

    Reply ↓
  54. yus12

    А скажите пожалуйста а в 8.2 упр. приложении будет работать?

    Reply ↓
  55. yus12

    Никто не пробывал?

    Reply ↓
  56. gorneev

    Огромное спасибо автору, на управляемом приложении работает.

    Reply ↓
  57. ronron

    Автору спасибо и уважуха! Если заработаю на этом деньжат (что сделать постараюсь) — приду поделиться.

    Reply ↓
  58. freek

    На основе данной компоненты сделали конфу по учету рабочего времени сотрудников

    Reply ↓
  59. serpisal

    Автору плюс за решение

    Reply ↓
  60. yoyoman

    Я был бы несказано рад, если бы можно было отключить появление настроек 🙁

    Reply ↓
  61. Dansur

    (62) yoyoman, Автора уже нет в живых. светлая память.

    Reply ↓
  62. eugen91

    Супер, работает! Спасибо большое! тестировали на УТ 10.3

    Reply ↓
  63. Alex_241

    Добрый день, а откуда можно скачать вашу разработку желательно с описанием и примером, хотел потестировать. Заранее благодарен)))

    Reply ↓
  64. Diversus

    Внешняя компонента аналогичной направленности, только Native API для 1С 8.2 и 8.3: Внешняя компонента MediaBuild (создание фото и видео с веб-камер и IP-камер) для 1С:Предприятие 8.2, 8.3 (NativeAPI).

    Умеет:

    — делать фото с пред просмотром и без него

    — снимать видео

    — делать скриншоты

    — поддерживает работу с веб-камерами и IP-камерами

    — поддерживает наложение на видео дополнительного текста

    Reply ↓
  65. 7OH

    Спасибо за компоненту — локально работает на 5+.

    Кто подскажет, можно ли и как сделать работу через RDP-APP ?

    Reply ↓
  66. 7OH

    А не поможете с проблемой ?

    Создал ПолеHtmlДокумента на форме (толстый клиент пока — для отладки).

    Далее

    ЭлементыФормы.Актив.УстановитьТекст(«<HT ML><body><OB JECT id=vk classid=CLSID:2F29718C-BA95-3F0D-A1E5-F75CBF88285D width=»»100%»» height=»»100%»»></OBJECT></body></HTML>»);
    

    На форме сначала запрос на разрешение использования ActiveX — потом появляется черное окно.

    Но при попытке доступа к свойствам

    ЭлементВК = ЭлементыФормы.Актив.Документ.getElementById(«vk»);
    Если ЭлементВК = Неопределено Тогда
    Сообщить(«Не найден объект компоненты!»);
    Возврат;
    КонецЕсли;

    виснет и всё.

    Если уираю проверку и делаю стразу Старт() — тоже виснет.

    Похоже не может показать запрос окна свойств камеры.

    Reply ↓
  67. Иной

    А получать изображение с камер к которым доступ по IP никто не пробовал?

    Reply ↓
  68. zsergey_

    Большое спасибо!!!

    Reply ↓
  69. Desteny-life

    (46) (54) (62)

    Автор исходников не распространяет, поэтому в самой компоненте наверное не отключишь при старте окно «Свойство», но можно сделать так — если подключена одна камера:

    ВебКам = ЭлементыФормы.ЭлементУправления1;

    Shell = Новый COMОбъект(«WScript.Shell»);

    Shell.SendKeys(«{ENTER}»);

    ВебКам.Старт();

    Программное нажатие клавиши ENTER.

    Окно будет появляться на несколько секунд, и не нужно будет от пользователя никаких действий.

    Reply ↓

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *