Имя: Пароль:
1C
1С v8
1C и окно Windows
,
0 Kamich
 
27.07.22
14:12
Добрый день.
Существует процесс в котором посредством 1С запускается окно Widnows стороннего приложения.
Необходимо найти это открытое окно Windows, отправить определенные комбинации клавиш.

SendKeys() - тут проблем нет.

А вот как найти нужно нам окно и активизировать это окошко?
1 vde69
 
27.07.22
14:26
>>>в котором посредством 1С запускается окно Widnows

приведи код как именно открывается, имеется в виду это открывается внутри 1с или снаружи
2 Kamich
 
27.07.22
14:36
(1) Если вкратце то так:

1) Имеется система подписи документов ЭЦП;
2) Создается COM объект для подключения к этой библиотеке;
3) На уровне API формируется процесс шифрования и подписи ЭЦП;
4) На последнем этапе требуется ввести пароль ЭЦП ключа;

Вот на этапе 4 выскакивает окошко поверх 1С где необходимо ввести пароль ЭЦП.
Нужно вот именно это окошко найти и отправить комбинацию клавиш для завершения подписи.
3 Garykom
 
гуру
27.07.22
14:47
(2) выкинь COM объект
используй https://www.cryptopro.ru/products/other/cryptcp
4 Garykom
 
гуру
27.07.22
14:53
(3)+ http://pushorigin.ru/cryptopro/scripts
аналогично и под виндой
6 Garykom
 
гуру
27.07.22
14:55
(5) 100% есть утилита командной строки вместо COM объект
7 Kamich
 
27.07.22
14:56
(6) в любом случае требуется ввести пароль через открываемое окошко....
8 Garykom
 
гуру
27.07.22
14:58
(7) Нет. Командная строка предполагает работу в скриптовом режиме без окошек.
11 vde69
 
27.07.22
15:13
попробуй перебрать коллекцию ОкнаКлиентскогоПриложения()

если там нет - то средствами 1с никак не выйдет
12 СеменовСемен
 
27.07.22
15:14
Юзай autoit
13 Kamich
 
27.07.22
16:41
(12) спасибо большое!
Очень помогли!