[Vb2010+] SendKey Mistero Microsoft !!

di il
4 risposte

[Vb2010+] SendKey Mistero Microsoft !!

Salve, sto creando una applicazione che invia, tramite SendKey delle stringhe, ma ho molti problemi per inviare il simbolo "^" , che come indicato da microsoft dice che deve essere inviato tramite le graffe "{^}" in questo modo ma non funziona assolutamente forse sbaglio io, preparando la stringa in questo modo

 Dim S As String = TextBox1.Text.ToString
                Dim SB As New StringBuilder
                For x As Integer = 0 To S.Length - 1
                    Dim Car As String = S(x).ToString
                    Select Case Car
                        Case "+", "^", "%", "~", "(", ")", "{", "}", "[", "]"
                            SB.Append("{" & Car & "}")
                        Case Else
                            SB.Append(Car)
                    End Select
                Next
                Debug.WriteLine(SB.ToString)
                'SendKeys.Send("{(}{^}{^}{^}{)}") 'Stringa Prova
                SendKeys.Send(SB.ToString)
                SendKeys.Send("{ENTER}")
                TextBox1.Text = ""
            Else
               'Ecc..........
            End If
        Catch ex As Exception
           'Ecc............................
            Exit Sub
        End Try
ora se inserisco la stringa "(^^^)" mi viene restituito "(&&&)" ed io ho preparato l'invio con SendKey , tramite codice "{(}{^}{^}{^}{)}" ma come mai non mi invia la stringa come l'ho preparata dove Sbaglio ?
Esiste un Metodo Migliore?

4 Risposte

  • Re: [Vb2010+] SendKey Mistero Microsoft !!

    Microsoft indica *chiaramente* nella documentazione della Sendkeys che possono esserci comportamenti inaspettati con tastiere di diversa lingua (dall'inglese).

    In ogni caso, puoi rimediare con

    "+(ì)"
  • Re: [Vb2010+] SendKey Mistero Microsoft !!

    Ho provato con
    
    Sendkeys.send(+(i))
    SendKeys.Send("{+}{(}ì{)}") '{(}{^}{^}{^}{)}
                    SendKeys.Send(SB.ToString)
                    SendKeys.Send("{ENTER}")
                    TextBox1.Text = ""
    
    
    
    ma non funziona come dovrebbe, inserendo la stringa "(^^^)" nella TextBox
  • Re: [Vb2010+] SendKey Mistero Microsoft !!

    Non +(i) ma +(ì) al posto di {^}
  • Re: [Vb2010+] SendKey Mistero Microsoft !!

    Ho modificato il codice Così
     
    Dim S As String = TextBox1.Text.ToString
                    Dim SB As New StringBuilder
                    For x As Integer = 0 To S.Length - 1
                        Dim Car As String = S(x).ToString
                        Select Case Car
                            Case "^"
                                SB.Append("+(ì)")
                            Case "+", "%", "~", "(", ")", "{", "}", "[", "]"
                                SB.Append("{" & Car & "}")
                            Case Else
                                SB.Append(Car)
                        End Select
                    Next
                    Debug.WriteLine(SB.ToString) 'Se
                    SendKeys.Send(SB.ToString)
                    SendKeys.Send("{ENTER}")
                    TextBox1.Text = ""
    
    si ora funziona, come volevo posto il codice per qualcuno che gli può interessare
    Grazie.
Devi accedere o registrarti per scrivere nel forum
4 risposte