por net mail enviar correo con asp archivo adjunto adjuntar c# sendkeys

net - C#usando la función Sendkey para enviar una clave a otra aplicación



enviar pdf por correo c# (1)

Si el bloc de notas ya está iniciado, debe escribir:

// import the function in your class [DllImport ("User32.dll")] static extern int SetForegroundWindow(IntPtr point); //... Process p = Process.GetProcessesByName("notepad").FirstOrDefault(); if( p != null) { IntPtr h = p.MainWindowHandle; SetForegroundWindow(h); SendKeys.SendWait("k"); }

GetProcessesByName devuelve una serie de procesos, por lo que debe obtener el primero (o encontrar el que desee).

Si desea iniciar el notepad y enviar la clave, debe escribir:

Process p = Process.Start("notepad.exe"); p.WaitForInputIdle(); IntPtr h = p.MainWindowHandle; SetForegroundWindow(h); SendKeys.SendWait("k");

La única situación en la que el código puede no funcionar es cuando el notepad se inicia como Administrador y su aplicación no.

Quiero enviar una clave específica (por ejemplo, k) a otro programa llamado bloc de notas, y debajo está el código que usé:

void sendkey () { [DllImport ("User32.dll")] static extern int SetForegroundWindow(IntPtr point); Process p = Process.GetProcessesByName("notepad")[0]; IntPtr pointer = p.Handle; SetForegroundWindow(pointer); SendKeys.Send("k"); }

Pero el código no funciona, ¿qué hay de malo con el código?

Editado: ¿Es posible que envíe la "K" al bloc de notas sin que el bloc de notas sea la ventana activa? (por ejemplo, ventana activa = "Google Chrome", el bloc de notas está en el fondo, lo que significa enviar una clave a una aplicación en segundo plano)