Я пытаюсь отправить F-ключи в приложение из приложения C #, которое я пишу. Когда я посылаю любую F-клавишу, она отображается как Ÿ (trema Y). Я согласился бы на .NET программным нажатием нужной F-клавиши, как только я привел нужную вдову в фокус.
Когда я запускаю код на моей машине для разработки, F-клавиши интерпретируются правильно. Компьютер, интерпретирующий их как trema Y, является клиентом Windows 7 .NET 4 64 бит.
Я пробовал SendKeys.SendWait("{F2}")
и SendKeys.Send("{F2}")
. У меня есть следующий код в app.config:
<appSettings>
<add key="SendKeys" value=" JournalHook"/>
</appSettings>
Вот мой пример кода:
void PopTargetApp()
{
try
{
string TargetWindowTitle;
TargetWindowTitle = "notepad";
int iHandle = NativeWin32.FindWindow(null, TargetWindowTitle);
NativeWin32.SetForegroundWindow(iHandle);
SendKeys.SendWait("{F2}");
SendKeys.Flush();
//Thread.Sleep(1000);
SendKeys.SendWait(currentInteraction.Account + "{Enter}");
SendKeys.Flush();
toolStripStatusLabel1.Text = String.Format("{0} {1}", TargetWindowTitle, iHandle.ToString());
}
catch (System.Exception ex)
{
MessageBox.Show(String.Format("Method: {0} \nError: {1} ", MethodInfo.GetCurrentMethod().Name, ex.Message));
}
}