Tôi đang cố gắng viết một chương trình sẽ lấy một dòng dữ liệu và chuyển nó vào một cửa sổ/quy trình khác.C# Gửi lệnh bàn phím đến một cửa sổ/quy trình khác
Đây là mã tôi có cho đến nay, nhưng tôi đã không thể tìm ra cách tôi sẽ gửi lệnh bàn phím đến quy trình OUTLOOK.
Tôi muốn có thể sử dụng lệnh/phím Tab và phím Enter/phím Enter.
Đây là những gì tôi đã cố gắng cho đến nay
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
using System.Threading;
using System.Runtime.InteropServices;
using System.Diagnostics;
using System.Windows.Forms;
namespace Config
{
class Program
{
[STAThread]
static void Main(string[] args)
{
System.Threading.Thread.Sleep(30);//300000
TextReader tr = new StreamReader("config.txt");
Clipboard.SetText(tr.ReadLine());
tr.Close();
var proc = Process.GetProcessesByName("OUTLOOK").FirstOrDefault();
if (proc != null && proc.MainWindowHandle != IntPtr.Zero)
{
SetForegroundWindow(proc.MainWindowHandle);
//SendKeys.Send("{ENTER}");
// Clipboard.GetText();
}
}
[DllImport("user32")]
private static extern bool SetForegroundWindow(IntPtr hwnd);
}
}
Ty cho câu trả lời nhưng điều này không gửi một lệnh bàn phím như xa như tôi có thể nhìn thấy nó chỉ quá khứ văn bản trong – monkeylumps
Bạn có thể đặt cờ cho các lần nhấn phím. Ví dụ. cho phím tab: 'SendMessage (hwnd, WM_KEYDOWN, VK_TAB, NULL)' – arminb