2013-02-22 9 views
5

Używam kodu do przechwytywania tekstu aplikacji.Nie można wkleić żadnego tekstu ani pliku na moim komputerze - Błąd schowka

Po uruchomieniu aplikacji nie mogę skopiować i wkleić żadnego tekstu ani pliku na moim komputerze. Wiem, dlaczego otrzymuję ten błąd, ponieważ schowek jest czyszczony co sekundę lub dwa, ponieważ zachowałem kod w loop.Its duży problem dla mnie i moich klientów, jeśli używają mojej aplikacji na swoim komputerze. Chcę wiedzieć, możemy utworzyć nowy schowek tylko do użytku mojej aplikacji, a nie za pomocą mojego schowka na pulpicie lub może ktoś dostarczyć moje rozwiązanie dla mojego Kod problem.The używam jest

 try 
     { 
      IEnumerator enumerator; 
      MainModule.StrData = ""; 
      try 
      { 
       enumerator = this.chkListbox_odin1.CheckedIndices.GetEnumerator(); 
       IntPtr parentWnd = FindWindow((null), cboWindows.Text); 
       IntPtr mdiClientWnd = FindWindowEx(parentWnd, IntPtr.Zero, "MDIClient", ""); 
       IntPtr marketwatchWnd = FindWindowEx(mdiClientWnd, IntPtr.Zero, null, windowname); 
       while (enumerator.MoveNext()) 
       { 
        object objectValue = enumerator.Current; 
        this.WindowText(marketwatchWnd); 
       } 
       // System.Windows.Forms.SendKeys.SendWait("{ESC}"); 
       // Application.DoEvents(); 
      } 
      finally 
      { 

      } 
      Clipboard.Clear(); 
     } 
     catch (Exception exception1) 
     { 
      // MessageBox.Show(exception1.Message); 
     } 

Oto niektóre obraz mojego problemu

mogę kopii gdy biegnę m y aplikacja. enter image description here

Ale gdy próbuję wkleić

Wklej nie jest podkreślenie, enter image description here

Nie byłoby wielkie uznanie, czy ktoś może mi pomóc.

Dzięki Wcześniej.

+0

Jaki błąd widzisz? – RoelF

+0

to nie jest błąd.Mój problem jest nie mogę skopiować i wkleić, ponieważ schowek jest zajęty w przechwytywaniu innego tekstu aplikacji mam na myśli, kiedy próbuję skopiować i wkleić wklej menustrip nie jest podświetlona. – user1447345

Odpowiedz

0

Zakładam, że będziesz/używasz SendKeys do wykonania operacji kopiowania po znalezieniu lub przyniesieniu fokusu do okna, którego tekst chcesz skopiować. (Twój obecny kod to tylko wyczyszczenie schowka, nie umieszczanie czegokolwiek na nim lub używanie jego danych) Możesz spróbować przyjrzeć się metodzie użytej na this question. Ta metoda pozwoli Ci w ogóle pominąć korzystanie ze schowka i przyniesie dodatkową korzyść, nie wymagając od ciebie zmiany ostrości okna, co może być równie poważnym problemem dla użytkowników końcowych, jak ciągłe czyszczenie schowka. (Ta część zakłada, że ​​używasz SendKeys, aby wpłynąć na schowek, który działa tylko w aktualnie aktywnym oknie, w które wierzę)

Powiązane problemy