Вход | Регистрация
 

AHK SendKeys в 1С 8.3?

AHK SendKeys в 1С 8.3?
Я
   Гений 1С
 
02.05.20 - 19:39
Автоматизация через AHK и AutoIt не работает в 1С, кто знает почему и как побороть?

hwnd := WinExist("Бухгалтерия")
;hwnd := WinExist("Безымянный") ;Для блокнота работает

if %hwnd% {
  WinActivate

  Send, ABCD
  dllcall("keybd_event", int, 27, int, 1, int, 0, int, 0) ;не работает ни для Блокнота, ни для 1С
  ControlSend , , MMM

  MsgBox, "HWND MY is:" . %hwnd%
    
}
else
  MsgBox, "HWND none" . %hwnd%
 
 Партнерская программа EFSOL Oblako
   acht
 
1 - 02.05.20 - 20:57
Гггг. Проще студенту на KWORK заказать
   Волшебник
 
Модератор
2 - 02.05.20 - 21:04
(1) Вот ему и заказали...
   acht
 
3 - 02.05.20 - 21:06
   Сияющий в темноте
 
4 - 03.05.20 - 16:47
у 1с разные и сложные окна и все работает,если с правильной стороны подходить.
   Serginio1
 
5 - 03.05.20 - 18:38
Ну всегда можно посмотреть какие окна присутсвют http://www.manhunter.ru/underground/1035_programmi_dlya_raboti_s_oknami_prilozheniy.html
Ну и ты же гений. Всегда же есть под рукой .Net а там по имени процесса можно найти все окна процесса https://www.cyberforum.ru/csharp-beginners/thread621647.html
https://stackoverflow.com/questions/8605147/c-sharp-sending-keyboard-commands-to-another-window-process
   Гений 1С
 
6 - 12.05.20 - 10:39
(5) и че? Окно я нахожу, 1С не воспринимает клавиши от него через AHK
   Serginio1
 
7 - 12.05.20 - 11:16
(6) А ты его сделал активным  SetForegroundWindow(MainWindowHandle);
   Гений 1С
 
8 - 12.05.20 - 12:55
(7) Обижаешь, разумеется. Я же пишу - на блокноте протестировал. НА 1с не работает.
   Serginio1
 
9 - 12.05.20 - 13:54
Ну значит не то окно. В любом случае можно проверить через SendMessage
https://stackoverflow.com/questions/11368648/using-postmessage-sendmessage-to-send-keys-to-c-sharp-ie-webbrowser
   Гений 1С
 
10 - 12.05.20 - 16:02
(9) окно то, просто 1с игнорит ввод через ахк
   Гений 1С
 
11 - 12.05.20 - 16:03
Окно то, потому что визуально на него переключается
   Serginio1
 
12 - 12.05.20 - 16:19
(10) Проверь через SendMessage в том числе через клик мыши. Там пример есть.
Можкешь на VB.Net проверить
   Wern
 
13 - 12.05.20 - 18:43
А не лучше сделать через автоматическое тестирование? Там же можно и окна проверить и кнопки понажимать и тексты посмотреть и в поля что нибудь повводить. Почти тот же AHK только встроенный. Делал недавно выгрузку из 7.7 в 8 зарплаты. начисления там всякие и прочее. Чтоб не заморачиваться с правильным заполнением скрытых реквизитов в документах сделал через автоматическое тестирование.

Список тем форума
 
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.