[Moscow.pm] Win32::GuiTest Open Context Menu Key

Akzhan Abdulin akzhan.abdulin на gmail.com
Пн Фев 27 06:47:57 PST 2012


Насколько я помню (10 лет прошло), тебе не надо эмулировать интерфейс.
Пошли окну WM_SYSCOMMAND<http://msdn.microsoft.com/en-us/library/windows/desktop/ms646360(v=vs.85).aspx>
.

27 февраля 2012 г. 18:39 пользователь Nikolay Mishin <mi на ya.ru> написал:

> Дим, привет, докопал сырцы putty  (
> http://tartarus.org/~simon/putty-snapshots/?C=M;O=A)
>
> в WINDOW.C есть 804 строка:
>            AppendMenu(m, MF_ENABLED, IDM_COPYALL, "C&opy All to
> Clipboard");
>
>          case IDM_COPYALL:
>            term_copyall(term);
>            break;
>
> есть еще 47 строка
> #define IDM_COPYALL   0x0170
>
> далее пишем
> use Win32::GuiTest qw(:ALL);
> SendKeys("%{F4}");
> SendKeys("mishnik");
> SendKeys("{ENTER}");
>
> как мне послать ему сигнал   0x0170 ?
> или как-нибуль так сделать ?
> (добраться до системного меню ctrl+space)
>  MenuSelect("System meny|C&opy All to Clipboard");  # this is also
> language dependent !
> ?
>
> или
>
>   #!/usr/bin/perl
>    #
>
>    use Win32::GuiTest qw(:FUNC :VK);
>
>    while (1) {
>        SendRawKey(VK_DOWN, KEYEVENTF_EXTENDEDKEY);
>        SendKeys "{PAUSE 200}";
>    }
>
> читаю
> http://msdn.microsoft.com/en-us/library/windows/desktop/ms646267(v=vs.85).aspx
> читаю и никак не пойму?
>
> 02.12.2011, 12:13, "Dmitry Karasik" <dmitry на karasik.eu.org>:
> >>  у программ MDI  интерфейс и внутри окна есть и другие, дочерние окна,
> до которых и
> >>  не удается добраться
> >
> > когда-то давно в состав ms dev studio входила утилита spyxx.exe которой
> можно было смотреть
> > иерархию окон в интерактиве, может поможет она, или ее более современные
> аналоги
> >
> >>  правда я сейчас понял, что это можно сделать через меню
> >>  "Copy All to Сlipboard"
> >>  правда, чтобы работал ALT-space
> >>  да, и как послать ALT+space
> >>  так SendKeys("%{SPACE}");
> >>  не проходит
> >
> > можно порыться в сырцах putty и посмотреть какое сообщение посылает
> "Copy All To Clipboard",
> > скорее всего какое нибудь WM_USER+666 или около того. И попробовать его
> послать самому.
> >
> > --
> > Sincerely,
> > Dmitry Karasik
> >
> > --
> > Moscow.pm mailing list
> > moscow-pm на pm.org | http://moscow.pm.org
>
> --
> Nikolay Mishin
> --
> Moscow.pm mailing list
> moscow-pm на pm.org | http://moscow.pm.org
>
----------- следущая часть -----------
Вложение в формате HTML было извлечено…
URL: <http://mail.pm.org/pipermail/moscow-pm/attachments/20120227/38c127ba/attachment.html>


Подробная информация о списке рассылки Moscow-pm