2010-08-07 17 views
16

Estoy intentando enviar CTRLUn (seleccionar todo a una aplicación en este caso la palabra, pero mucho que lo intentaba no funciona) He probado un buen número de combinaciones pero todo fue en vano, ¿alguna idea?SendKeys Ctrl-A no trabaja

 IntPtr appHandle = FindWindow(null, "Document1 - Microsoft Word"); 
     if (appHandle == IntPtr.Zero) 
     { 
      MessageBox.Show("Specified app is not running."); 
      return; 
     } 

     SetForegroundWindow(appHandle); 
     System.Threading.Thread.Sleep(500); 

     //SendKeys.SendWait("111"); 
     SendKeys.SendWait("^A"); 
     //SendKeys.SendWait("^(A)"); //ctrl a 
     //SendKeys.SendWait("(^A)"); 

Respuesta

4

¿Usted intentó

SendKeys.SendWait("^{A}"); 
+0

trató esto y esto no funciona. Intenta usar alt combinaciones de teclas y tampoco funcionan para mí .... – ALI

4

SendKeys entre mayúsculas y minúsculas. Prueba esto:

SendKeys.Send("^a"); 

No estoy seguro, pero parece que

SendKeys.Send("^A"); 

significa Ctrl +Shift +Un. Al menos funciona de esta manera en algunas aplicaciones.

+0

El código Shift es +, así que si quieres el capital A deberías hacer ("+^a") – Dman

37

Para especificar que cualquier combinación de SHIFT,CTRL, ALT y deberá presionarse mientras que varios otros se pulsan las teclas, encierre el código para esas llaves en paréntesis. Por ejemplo, para especificar mantener presionado SHIFT mientras se presiona E y C, utilice +(EC). Para especificar que mantener pulsada SHIFT mientras E es presionado, seguido por C sin SHIFT, utilice +EC.

respuesta es:

SendKeys.Send("^(a)"); 
+1

Esta es en realidad la mejor respuesta ... lamentable que OP no seleccionó uno. – NotCoffeeTable

+0

Esa no es la respuesta, establece claramente que si solo se necesita una clave con la tecla de control, no hay necesidad de paréntesis. – EliSherer