"Захват окон" - ActiveX-компонента для 1С

03.10.09

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

Захватывает открытые окна и помещает их в 1С, так же получает скриншот выбранного окна.

Хотите играть в пасьянс в 1С, смотреть кино или просматривать секретные документы ;)
и не светить эти окна на рабочем столе, тогда эта компонента для Вас :)

Скачать файл

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

Наименование Бесплатно
Полная версия
.1234947992 95,33Kb
254
254 Скачать бесплатно

*** Для работы компоненты потребуется установленный Microsoft .NET Framework 2.0, который можно скачать отсюда.

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

В архиве приложены примеры для 7.7 и 8.1

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

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

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


v8: Меню "Форма" - "Вставить ActiveX..." - Выбрать элемент "Душелов.WinHost1C"

*** Методы:

//ВОССТАНОВИТЬ ВСЕ ЗАХВАЧЕННЫЕ ОКНА:
 
   ВосстановитьОкна();

//ПОЛУЧИТЬ СПИСОК ОТКРЫТЫХ ОКОН (Массив):

   ПолучитьСписокОткрытыхОкон(Фильтр); //фильтр - строка для фильтрации в заголовке 
   //возвращает в виде строки: Заголовок окнаИдентификатор процессаПуть к exe-файлу процесса 

//ПОЛУЧИТЬ СПИСОК ОТКРЫТЫХ ОКОН (Строка с разделителями): 

   ПолучитьСписокОткрытыхОконСтрокой(Фильтр); //фильтр - строка для фильтрации в заголовке 
   //возвращает в виде строки: Заголовок окнаИдентификатор процессаПуть к exe-файлу процесса 

//ЗАХВАТИТЬ ОТКРЫТОЕ ОКНО: 

   ЗахватитьОкно(ЗаголовокОкна);
   ЗахватитьОкноПоPID(PID);

//СКРИНШОТ ОКНА: Скриншот(ЗаголовокОкна, ПутьКФайлу);

   СкриншотПоPID(PID, ПутьКФайлу);

//МЕНЮ:
  
   ПоказатьМеню();
   СкрытьМеню();

//АКТИВАЦИЯ ОКНА:

   АктивироватьОкно(ЗаголовокОкна);
   АктивироватьОкноПоPID(PID);

//ЗАКРЫТЬ ОКНО:

   ЗакрытьОкно(ЗаголовокОкна);
   ЗакрытьОкноПоPID(PID);

//ВОССТАНОВИТЬ ОКНО:

   ВосстановитьОкно(ЗаголовокОкна);
   ВосстановитьОкноПоPID(PID);

См. также

Разработка внешних компонент WEB-интеграция Программист Платформа 1С v7.7 Конфигурации 1cv7 Платные (руб)

Компонента HttpSrv7 позволяет создавать веб-сервисы в среде 1С 7.7 и даже, используя файлы HTML, несложные веб-сайты. С помощью нее можно обеспечить доступ к данным 1С 7.7 из браузера. Дополнительно используя компоненту HTTP_Async или синхронный клиент HTTP для 1С 7.7 (публикация № 1152364) можно наладить обмен данными между удаленными информационными базами. С помощью компоненты HTTP_Async можно сначала послать несколько запросов к сайтам, веб-сервисам (в т.ч. к HttpSrv7), а затем обрабатывать данные по мере их поступления. Компонента GISMT в дополнение к HTTP_Async имеет функцию цифровой подписи и, таким образом, имеет все возможности для работы с API ГИС МТ "Честный знак" непосредственно из среды 1С 7.7.

2000 руб.

27.05.2022    8785    23    17    

34

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

Аддон "Структура Обмена" (ExchangeStruc) - это компонента, которая обеспечивает доступ к разделяемым процессом структурам, аналогичным структурам 1С. Обеспечивает прозрачную передачу данных примитивных типов, в том числе Двоичных данных, в режиме Реального времени между разными контекстами (формами) или потоками одного процесса. В перспективе функционал будет расширен для обмена между процессами, даже разных версий платформ. Совместим с версиями Windows рабочих станций и серверов, с платформами 1С разных версий и релизов в режиме Native начиная с 8.2, и в режиме COM начиная с версий 7.7. По скорости чтения и записи лишь немногим уступает стандартной структуре 1С. НОВОЕ: Добавлен функционал регистрации компоненты COM в качестве OLE Auto (COMОбъект) для поддержки её работы в серверах старых версий 1С: 8.0 и 8.1, где работа с компонентами исключена. Теперь можно коммуникацию с Фоновыми заданиями на этих версиях проводить.

7200 руб.

19.04.2023    5237    1    0    

3

Работа с интерфейсом Логистика, склад и ТМЦ Системный администратор Программист Пользователь Платформа 1С v7.7 1С:Торговля и склад 7.7 Оптовая торговля, дистрибуция, логистика Управленческий учет Платные (руб)

Решение для разработчика и конечного пользователя для работы с фотографиями номенклатуры: систематизация, хранение, отображение, а также выгрузка на Яндекс-Диск и FTP (кроме версии лайт). Поддерживаются графические форматы: bmp, jpg, gif, tiff, а также png - не поддерживаемый штатными средствами 1С. Выполнено без использования внешних компонент (кроме функции выгрузки на FTP). Поставляется как в виде пустой конфигурации с набором объектов и модулей для работы с фото, так и в виде обновления к 1С:Торговля и склад 7.7. Выполнено в двух версиях: "полная" и "лайт".

5000 руб.

18.10.2022    5845    1    45    

4

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

Компонента для выбора значения из больших списков значений.

1200 руб.

02.12.2021    6211    2    19    

4

Разработка внешних компонент WEB-интеграция Программист Платформа 1С v7.7 Абонемент ($m)

Компонента позволяет использовать различные веб-сервисы интернет-ресурсов, например работать с онлайн-кассой через API, предоставленное ее разработчиком. Тестировалась на платформе 1С релиза 7.70.027.

1 стартмани

14.11.2019    19163    103    mdbruyfn    104    

18

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

Программа "Компонента приёма веса для 1С, версия 3.0" позволяет принимать и заносить вес с весов непосредственно в программу "1С" - то есть, прием веса осуществляется целиком и полностью из программы "1С".

26400 руб.

09.04.2019    16444    2    8    

5

Разработка внешних компонент ККМ Кассовые операции Системный администратор Программист Оперативный учет 7.7 1С:Торговля и склад 7.7 Абонемент ($m)

Внешняя компонента - оболочка для работы в среде 1С 7.7 или 1С 8.1 с последними версиями драйверов ККМ от АТОЛ. Поддерживаются драйвера x32 начиная с версии 9.11. Присутствует внешняя обработка для полноценной работы с данными драйверами (поддержка ревизий 2.0, 2.1, 2.2, поддержка протокола ОФД 1.0, 1.0.5, 1.1).

1 стартмани

09.08.2017    54336    348    asdfghgghjdhg    141    

18
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Душелов 4018 20.11.08 14:27 Сейчас в теме
Вообщем, режим "АнтиБосс" ;)
2. coder1cv8 3477 20.11.08 14:35 Сейчас в теме
Прикольно! Но бесполезно... )
А можешь сделать ВК что-бы она выбранное окно принтскринила?... )
3. Душелов 4018 20.11.08 14:38 Сейчас в теме
(2) Ну почему же бесполезно? Я на позапрошлом месте работы использовал аналог для сокрытия оперы, а то когда подходили к компу - много чего левого можно было в заголовках окон увидеть ;)))

Ну запринтскринить -то можно, если оно открыто, а если закрыто другим приложением, тогда врядли....
4. coder1cv8 3477 20.11.08 14:44 Сейчас в теме
(3) В смысле принтскринить в файл, пофиг, с активизацией окна!...
Типа так:
ВК.ПринтскринВФайл(ПИДПроцессаОкна, ПутьКФайлу)
Но это я так, мечтаю... Кроме плюса предложить нечего )
А со всякими существующими длл-ками, типа V7ICQ.dll у меня лично, проблемы...
5. Душелов 4018 20.11.08 17:16 Сейчас в теме
(4) Да в целом можно.... Так же по заголовку, активировать его, определить координаты и запринскринить выбранный диапазон.
10. Hadgehogs 493 23.11.08 00:58 Сейчас в теме
(4) Чего, Нетленку уже отменили?
coder1cv8; +1 Ответить
11. Душелов 4018 23.11.08 01:13 Сейчас в теме
6. luns 20.11.08 18:26 Сейчас в теме
(0) Ай молодец, сколько интересных идей...
7. CheBurator 2712 20.11.08 18:34 Сейчас в теме
Душелов жжот!
+1
.. а закладочки в 7-ке тоже будут?
.. чат - дорабатывается?
8. Душелов 4018 20.11.08 18:37 Сейчас в теме
(7) С чатом пока взял перерыв... То, на практике его использовал, а чисто теоретически дорабатывать - не интересно...
Скрин 7.7 сейчас сделаю и выложу.
9. Душелов 4018 20.11.08 18:54 Сейчас в теме
(7) Добавил скрин из 7-ки
12. Душелов 4018 23.11.08 01:54 Сейчас в теме
Добавил функцию получения скриншота. Пока в таком виде...
coder1cv8; +1 Ответить
13. coder1cv8 3477 23.11.08 08:08 Сейчас в теме
(12) Спасибо. Но, лично мне, по PID-у нужно... )
(10) Будем смотреть! )
14. Душелов 4018 23.11.08 13:13 Сейчас в теме
(13) Добавил:
- Получение списка открытых окон - возвращает в виде строки: <title>Заголовок окна</title><pid>Идентификатор процесса</pid><path>Путь к exe-файлу процесса</path>
- ЗахватитьОкноПоPID(PID);
- СкриншотПоPID(PID, ПутьКФайлу);
coder1cv8; +1 Ответить
15. coder1cv8 3477 23.11.08 13:22 Сейчас в теме
(14) Класс! Спасибо огромное!!!
16. Душелов 4018 23.11.08 13:27 Сейчас в теме
(15) Единственное, с чем я не стал заморачиваться - когда окон развернутое на весь экран, я просто делаю полный скриншот, не вычисляю размер окна.
17. skom 74 25.11.08 13:26 Сейчас в теме
)))) вот это прикол под конец раб дня.....
Антибосс))
клева...
тока скачал. сегодня присоединить уже не успею. завтра побалуюсь.
но идейка зачет
19. skom 74 25.11.08 13:26 Сейчас в теме
сорри за дубль...два раза даванул. модеры - убейте дубль и этот мессаг плиз
20. cleaner_it 209 28.11.08 10:43 Сейчас в теме
Когда располагаю на другом в закладке - фокус не устанавливается. Хотя окно "живое" - то есть отображаются все действия. А мышкой тыкнуть не моги. Еще помучаюсь, может у меня косяк
21. cleaner_it 209 28.11.08 10:44 Сейчас в теме
(20) на другом слое, конечно. в 7.7
25. Душелов 4018 09.12.08 11:19 Сейчас в теме
(20) что 7-ка, что 8-ка таким образом перехватывают окна, так что победить эту проблему не могу. На других платформах этой проблемы нет.
22. Душелов 4018 28.11.08 10:55 Сейчас в теме
(20-21) Ок, сейчас при себе исходников нет, дома посмотрю. Проблему воспроизвел.
23. Froloid 66 05.12.08 00:34 Сейчас в теме
Добрался наконец-то до нужной странички. Душелову однозначно +
24. Душелов 4018 05.12.08 00:35 Сейчас в теме
26. HotShot 2 15.12.08 09:57 Сейчас в теме
Очень удобная компонента. Каким методом можно автоматически перейти на вновь захваченное окно?
27. Душелов 4018 15.12.08 09:58 Сейчас в теме
(26) Т.е. активировать нужную закладку?
29. Solemn 15.12.08 10:04 Сейчас в теме
(27) ага, и мне тож это нужно очень
28. HotShot 2 15.12.08 10:04 Сейчас в теме
Необходимо автоматически активировать закладку с захваченным окном... и скрыть закладку меню, что бы не вводить пользователя в заблуждение.
30. Душелов 4018 15.12.08 11:00 Сейчас в теме
Добавлено:

Код
//МЕНЮ:
  
   ПоказатьМеню();
   СкрытьМеню();

//АКТИВАЦИЯ ОКНА:

   АктивироватьОкно(ЗаголовокОкна);
   АктивироватьОкноПоPID(PID);
Показать полностью
31. HotShot 2 15.12.08 11:05 Сейчас в теме
Спасибо... Буду пробовать.
32. Solemn 15.12.08 11:15 Сейчас в теме
33. HotShot 2 16.12.08 11:10 Сейчас в теме
Добрый день.
Дополнительные методы сильно упростили задачу разработки.
Однако, встала проблема программного закрытия приложения... Возможно ли интегрировать метод закрытия захваченного приложения по PID?
34. Душелов 4018 16.12.08 11:16 Сейчас в теме
Спасибо в стакан не нальешь ;)

(33) Сейчас напишу метод закрытия окна с восстановлением или без.
35. Душелов 4018 16.12.08 11:48 Сейчас в теме
Написать-то написал... Вот только обновить разработку не могу... :(
36. Душелов 4018 16.12.08 11:59 Сейчас в теме
Добавлено:

Код
//ЗАКРЫТЬ ОКНО:

   ЗакрытьОкно(ЗаголовокОкна);
   ЗакрытьОкноПоPID(PID);

//ВОССТАНОВИТЬ ОКНО:

   ВосстановитьОкно(ЗаголовокОкна);
   ВосстановитьОкноПоPID(PID);
Показать полностью


Скачать пока тут: http://dushelov.ru/1c/WinHost.zip
37. trdm 23.01.09 17:46 Сейчас в теме
А можно на каком-нить менее ресурсоемком фраймверке сделать?
А то не очень хочется на серваке фраймверки городить?
Или хоть подсказку какую для имплементации?
38. Душелов 4018 26.01.09 12:06 Сейчас в теме
(37) > можно на каком-нить менее ресурсоемком фраймверке сделать?
На каком?
39. trdm 26.01.09 14:04 Сейчас в теме
(37)>> можно на каком-нить менее ресурсоемком фраймверке сделать?
(38)>На каком?
WTL/ATL например?
40. trdm 26.01.09 14:04 Сейчас в теме
Хоть они и не фраймверки :)
41. Душелов 4018 13.02.09 19:34 Сейчас в теме
Для получения демо-версии или покупки обращайтесь по контактам, указанным в профиле.
42. Душелов 4018 18.06.09 17:53 Сейчас в теме
Снова в бесплатном доступе :)
43. liooo 04.08.09 01:34 Сейчас в теме
Как определить программно что приложение захвачено компонентой???
45. Душелов 4018 04.08.09 11:03 Сейчас в теме
(43) Храните список захваченых приложений.

(44) :) иногда надо скрывать лишние окна ;)
44. Abadonna 3968 04.08.09 03:15 Сейчас в теме
(0)"Хотите играть в пасьянс в 1С, смотреть кино или просматривать секретные документы ;)"
Вась, а что, пасьянс внутри 1С пасьянистее становится? ;))))
Как проггер понимаю, как юзер - на ... оно надо?
46. Abadonna 3968 04.08.09 11:53 Сейчас в теме
Стал быть примерно так?:
procedure TMiracleClass.CaptureAimp;
var wnd:hwnd;
begin
wnd:=FindWindow('TAIMP2Main',nil);
if isWindow(wnd) then begin
SetParent(wnd,h1C);
end;
end;
Могу приватно подарить коды WM_COMMAND для управления Aimp прям из 1С ;)
Для особых извращенцев :)))))))))
55. liooo 06.08.09 01:54 Сейчас в теме
Abadonna
(46) подари коды WM_COMMAND для управления Aimp прям из 1С
47. liooo 04.08.09 12:24 Сейчас в теме
Abadonna
Я такой извращенец, а точнее руководство!!! Необходимо запустить эту прогу http://www.thebrain.com/ на форме списка справочника и показать графические связи элементов, а потом изменить данные в 1С, если изменили связи в этой приблуде, так что коды WM_COMMAND для управления Aimp -- это для меня ;)
dushelov
У меня нет списка захваченных, я запускаю приложение и пытаюсь его захватить, но захват отрабатывает до открытия этой проги, поэтому надо организовать цикл проверки захвата, а ни один метод по захвату не возвращает никакого значения
48. Душелов 4018 04.08.09 12:28 Сейчас в теме
А что он должен возвращать?
50. Abadonna 3968 04.08.09 14:20 Сейчас в теме
(48)>А что он должен возвращать?
По уму - хэндл ;)))))
51. Душелов 4018 04.08.09 14:29 Сейчас в теме
(50) Скорее ПИД, хэндл для 1С-ы не нужен.
52. Abadonna 3968 04.08.09 14:34 Сейчас в теме
(51) Зато его наличие гарантирует, что захват произошел.
А на хрена 1С-е PID? Мочить при выходе?
53. Душелов 4018 04.08.09 14:35 Сейчас в теме
(52) У меня методы есть, которые по пиду работают ;)
54. Abadonna 3968 04.08.09 14:36 Сейчас в теме
(53) Хэндл ВСЕГДА PID даст, а вот по PIDу хэндл - сложнее ;)))
49. liooo 04.08.09 12:57 Сейчас в теме
решил все циклом с получением списка запущенных и нахождением в списке нужного, спасибо
56. cool.vlad4 2 10.02.11 14:08 Сейчас в теме
(0) Вопрос возник...как это все работает не разбирался...хочется сделать следующую штуку - надоело работать с консолью кода без подсказок. Возникла мысль сделать захват конфигуратора, затем перехват кода, текста и передача в консоль. Поможет ли мне эта ActiveX?
57. yoyoman 16.03.12 10:00 Сейчас в теме
У меня зависает при использовании нескольких вкладок. Если на второй вкладке добавить этот элемент управления, сделать захват. И переключиться на первую вкладку - все вылетает :(
58. DimaP 64 14.08.12 16:05 Сейчас в теме
А можно-ли этой компонентой ловить окна внутри самой 1С?
Например, стандартные формочки (список значений, ввод значения и т.д.)
59. alyuev 204 17.12.12 20:03 Сейчас в теме
Вопрос. Как сделать открытие приложения внутри самой 1С? Запомнить ПИДы запущенных приложений до запуска нужного и после запуска найти новое открытое?
60. alyuev 204 01.04.13 18:37 Сейчас в теме
Я воспользовался твоей компонентой захвата окон - захватываю по имени файла. Работает отлично. Но не могу найти свойство закрытия вкладки програмно. Буду очень признателен за помощь. Спасибо.
61. smaharbA 01.04.13 19:08 Сейчас в теме
мальчоник если чо эта фигня реализовывается и без вк
62. alyuev 204 01.04.13 23:21 Сейчас в теме
(61) Сотрясение воздуха не приветствуется, а конструктив - да.
63. dagroma 117 29.07.16 21:27 Сейчас в теме
А кто-нибудь может поделиться последней версией компоненты?
64. Alex_Legacy 29.09.17 11:15 Сейчас в теме
Мало с какими окнами работает
65. leha1904 15.02.18 12:04 Сейчас в теме
Добрый день. У кого-нибудь есть последняя версия компоненты? Заранее премного благодарен.
Почта - pohomoff@mail.ru
66. user1375266 20.01.23 14:59 Сейчас в теме
Как установить компоненту
Оставьте свое сообщение