Я пытаюсь написать в текстовое поле и отображать сообщения в блокноте с помощью HwndSource C#
Я не очень понимаю, как использовать HwndSource, но насколько я понимаю, вы можете "регистрировать" любые сообщения, которые вы вводите в текстовое поле, в блокнот. Это где я с моим кодом. Любая помощь с благодарностью. Надеюсь, я это выясню в ближайшие 6 часов...
public MainWindow()
{
InitializeComponent();
notePadFound.Text = "Unable to find NotePad";
}
IntPtr WndProc(IntPtr hwnd, int msg, IntPtr wParam, IntPtr lParam, ref bool handled)
{
// Handle messages...
return IntPtr.Zero;
}
private void Button_Click(object sender, RoutedEventArgs e)
{
Process[] processName = Process.GetProcessesByName("notepad");
HwndSource source = PresentationSource.FromVisual(textBox) as HwndSource;
base.OnSourceInitialized(e);
source.AddHook(WndProc);
if (processName.Length == 0)
{
OpenNotePad(processName);
}
else
{
textBox.Focus();
notePadFound.Text = "Notepad already open. Start Typing!";
}
}
private void OpenNotePad(Process[] processName)
{
notePadFound.Text = "Notepad Located. Start Typing!";
Process.Start("notepad.exe");
Thread.Sleep(50);
IntPtr myWindowHandler = Process.GetCurrentProcess().MainWindowHandle;
SetForegroundWindow(myWindowHandler);
textBox.Focus();
if (processName == null)
{
notePadFound.Text = "Unable to find Notepad.";
}
}