Страница 1 из 1

простейшая эмуляция в WPF ????

Добавлено: 20.02.2012 13:34
Гость
вопрос, вдруг кто знает.
дано: wpf приложение, есть InputBinding F1
Естесственно, по F1 выполняется требуемая команда.
если из другого проложения послать тот же самый Message, то Gesture не срабатывает(но message ловится).
вроде, посылаетcя то же самое, что вижу в по нажатии F1
Кто-нибудь подобное делал? Или, может быть, есть идеи/подсказки?!!!

Re: простейшая эмуляция в WPF ????

Добавлено: 21.02.2012 13:58
revelador
Ничего не понял, какое сообщение посылается и как должен сработать Gesture (неужели F1 должно самонажаться)?

Re: простейшая эмуляция в WPF ????

Добавлено: 21.02.2012 14:43
F1F1
revelador писал(а):Ничего не понял, какое сообщение посылается и как должен сработать Gesture (неужели F1 должно самонажаться)?
System.Diagnostics.Process[] p = System.Diagnostics.Process.GetProcessesByName(...
...
SendMessage(p[0].MainWindowHandle,
0x100,
(IntPtr)(0x71),
(IntPtr)0x003B0001);

Re: простейшая эмуляция в WPF ????

Добавлено: 21.02.2012 15:12
revelador
Если я что-то понял и правильно понял, то предполагаю, что связывание Gestures работает только для UI приложения - то есть надо эмулировать нажатие батона F1.

Re: простейшая эмуляция в WPF ????

Добавлено: 21.02.2012 15:25
f1f1
revelador писал(а):Если я что-то понял и правильно понял, то предполагаю, что связывание Gestures работает только для UI приложения - то есть надо эмулировать нажатие батона F1.
да, из эмулятора послать f1 основному wpf-приложению. У него есть команда, которая привязана к f1.

по gesture f1 команда срабатывает в основном приложении, eсли полать key_down f1 из эмулятора - нет.

Re: простейшая эмуляция в WPF ????

Добавлено: 21.02.2012 15:35
Гость
Вообще-то 0x71 - это F2

Re: простейшая эмуляция в WPF ????

Добавлено: 21.02.2012 15:48
F1F2
Гость писал(а):Вообще-то 0x71 - это F2
ну, это в корне меняет дело :)

привязка в программе есть на все функ клавиши, эмулятор посылает соответственно нажатие всех.
Но толку вот мало.

Re: простейшая эмуляция в WPF ????

Добавлено: 22.02.2012 10:26
revelador
The official guidance from the WPF team is to go through the operating system and either add a reference to System.Windows.Forms.dll to use SendKeys or directly use the SendInput API to mock the keyboard.

http://blogs.msdn.com/b/kirillosenkov/a ... n-wpf.aspx" onclick="window.open(this.href);return false;

Re: простейшая эмуляция в WPF ????

Добавлено: 22.02.2012 11:10
FFFF
revelador писал(а):The official guidance from the WPF team is to go through the operating system and either add a reference to System.Windows.Forms.dll to use SendKeys or directly use the SendInput API to mock the keyboard.

http://blogs.msdn.com/b/kirillosenkov/a ... n-wpf.aspx" onclick="window.open(this.href);return false;
спасиб, нагуглено было с самого начала, честно говоря, там мало чего полезного обнаружено было. может надо повнимательнее посмотреть. Не смотрится как коммуникация между двумя процессами. Т.е обыграна наиблее легкая часть в приемнике.
В любом случае спасибо.
(У меня уже наполовину написано, и даже на треть работает :) )