Имя: Пароль:
1C
 
Wscript.Shell вопрос по имитации нажатия клавиш
0 oslokot
 
13.04.17
10:23
Добрый день.
Как имитировать нажатия на клавиши дополнительной цифровой клавиатуры Ctrl + Num+?

WshShell = Новый COMОбъект("Wscript.Shell");
WshShell.SendKeys("^{Num+}");
не работает, пишет "Произошла исключительная ситуация (0x80070057)"
1 oslokot
 
13.04.17
12:13
Up
Есть мысли?
2 DrZombi
 
гуру
13.04.17
12:26
В системе "1С:Предприятие" часто возникает ситуация, когда нужно закрыть окно сообщений, появляющееся при вызове метода Сообщить. Стандартно это окно закрывается при нажатии комбинации клавиш <Ctrl>+<Shift>+<Z>, но можно сделать это и программно.

https://helpf.pro/faq/view/1006.html

...
ваш код очень отличается от примера :)
3 DrZombi
 
гуру
13.04.17
12:28
4 DrZombi
 
гуру
13.04.17
12:40
+ Нарыл...

Numlock    {NUMLOCK}    Send a Num Lock keystroke

https://ss64.com/vb/sendkeys.html

(0) у вас "Num+", вы откуда это взяли?

Тут оговаривают...
http://www.vbforums.com/showthread.php?347527-Using-SendKeys-to-Send-Number-Pad-Numbers

И тут чего
http://www.devx.com/vb2themax/Tip/19094
5 oslokot
 
13.04.17
12:46
(4) {NUMLOCK} это же отправить нажатие клавиши Num Lock
6 DrZombi
 
гуру
13.04.17
12:46
7 DrZombi
 
гуру
13.04.17
12:46
(5) Попрыгай по ссылкам, может чего понравится :)
8 oslokot
 
13.04.17
12:46
(4) "у вас "Num+", вы откуда это взяли? "
да я уж экспериментирую методом научного тыка)
9 oslokot
 
13.04.17
12:47
(7) что то неоткрывается... ща
10 oslokot
 
13.04.17
13:04
(3) В мануале по ссылке https://msdn.microsoft.com/ru-ru/library/system.windows.forms.sendkeys(v=vs.110).aspx написано:
Клавиша сложения (+) на дополнительной (цифровой) клавиатуре {ADD}

Пробую:
WshShell = Новый COMОбъект("Wscript.Shell");
WshShell.SendKeys("{ADD}");

пишет "Произошла исключительная ситуация (0x80070057)"

всё, приехали? :)
11 Неверный Параметр И
 
13.04.17
13:09
(10) Ты смотришь не в тот мануал. На странице ясно написано: "Класс SendKeys .NET Framework (current version)". Какой нафик COMОбъект("Wscript.Shell") ?
12 oslokot
 
13.04.17
13:16
(11) чего?
13 1dvd
 
13.04.17
13:22
попробуй

WshShell.SendKeys("^{Pad+}");
14 1dvd
 
13.04.17
13:24
NUMPAD+
15 1dvd
 
13.04.17
13:24
NUMPADADD
16 oslokot
 
13.04.17
13:55
(15) перепробовал уже все варианты - вываливается в исключение