您好我正在c#中开发一个应用程序(A),它将使用在后台以try模式运行的其他应用程序(B)。我想通过按应用程序(A)上的按钮从应用程序(A)向应用程序(B)发送一些快捷命令。我在按钮后面有以下代码:
[DllImport("user32.dll")]
public static extern IntPtr FindWindow(string lpClassName, string lpWindowName);
[DllImport("user32.dll")]
// public static extern IntPtr FindWindowEx(IntPtr handleParent, IntPtr handleChild, string className, string WindowName);
[DllImport("user32.dll")]
public static extern int SendMessage(IntPtr hWnd, uint Msg, int wParam, int lParam);
public const int WM_SYSCOMMAND = 0x0112;
public const int SC_CLOSE = 0xF060;
public const int WM_KEYDOWN = 0x0102;
public const int VK_SHIFT=10;
public const int VK_A = 0x41;
public void sendShortcutsToOneScreenConnect()
{
Process[] process1 = Process.GetProcessesByName("NameOfTheProcess");
process1[0].WaitForInputIdle();
IntPtr handler = FindWindow(null,"Tittle Of The Window ");
SendMessage(handler, WM_KEYDOWN, VK_A, VK_SHIFT);
}
我得到" 0"这个窗口的处理程序。有人可以告诉我这是对这件事的正确方法吗?我不想将应用程序(B)窗口带到前台。