none
Ajuda com teclas? RRS feed

  • Pergunta

  • Olá, primeiramente feliz natal!

    Segundamente, eu sou iniciante no Visual Basic, eu queria que vocês me ajudassem numa coisa bem simples mesmo... quando a tecla ALT for pressionada, as teclas V E L fossem pressionadas também, resumindo, apertei ALT e meu computador aperta sozinho VEL, teria como me ajudar?

     

     

    Obrigado.

    quinta-feira, 24 de dezembro de 2015 22:15

Respostas

  • Feliz Natal pra vc tambem amigo ! Bom pra vc aperta uma tecla e ela funfa em um determinado objecto como o bloco de notas vc teria que enviar um comando para o pc falando que essa tecla deve ser aperta em determinado programa bom pra isso vc teria que usa a Dll do Sistema que seria a user32.dll bom um codigo pra te mostra exatamente pra vc eu nao tenho ! mais tenho um projecto de um teclado virtual vc poderia da uma olhada nele talvez seja o que procura

    Download do projecto completo do teclado virtual = https://drive.google.com/file/d/0ByTP_tX3Lc7PemRNbDlGLVNGemc/edit

    Espero ter ajudado vc ! :)

    +um Ex = https://msdn.microsoft.com/pt-br/library/ms171548%28v=vs.110%29.aspx?f=255&MSPPError=-2147217396

     Codigo caso seja isso q vc queira 

    Public Class Form1
    
        Private Declare Function GetAsyncKeyState Lib "user32.dll" (ByVal vKey As Int32) As Int16 'dll user32
    
        Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
            Timer2.Interval = 100
            Timer2.Start()
        End Sub
    
        Private Sub Timer2_Tick(sender As Object, e As EventArgs) Handles Timer2.Tick
            If GetAsyncKeyState(Keys.Q) Then 'quando a tecla q for precionada indepedente de onde for precionada o enter e precionado tambem
                SendKeys.Send("{ENTER}")
            End If
        End Sub
    End Class
    

    Espero ter ajudado bom botei varios ex pois nao entendi bem o que vc quer fazer se der certo por favor avise  :) 

    sexta-feira, 25 de dezembro de 2015 22:57
  • Aqui amigo um pequeno exemplo 

    Codigo

    Public Class Form1
    
        Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
            Shell("Notepad", vbNormalFocus) 'abri o Notepad
            AppActivate("Sem Título - Bloco de notas")  'Notepad Sem Título
            SendKeys.Send("Isto é um teste{ENTER}") 'excrever no Notepad e aperta enter
            SendKeys.Send("teste2{f}") 'excrever +uma linha e aperta a tecla f
        End Sub
    End Class
    

    Foto

    • Marcado como Resposta Marcos SJ sexta-feira, 25 de dezembro de 2015 11:49
    sexta-feira, 25 de dezembro de 2015 03:16

Todas as Respostas

  • Aqui amigo um pequeno exemplo 

    Codigo

    Public Class Form1
    
        Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
            Shell("Notepad", vbNormalFocus) 'abri o Notepad
            AppActivate("Sem Título - Bloco de notas")  'Notepad Sem Título
            SendKeys.Send("Isto é um teste{ENTER}") 'excrever no Notepad e aperta enter
            SendKeys.Send("teste2{f}") 'excrever +uma linha e aperta a tecla f
        End Sub
    End Class
    

    Foto

    • Marcado como Resposta Marcos SJ sexta-feira, 25 de dezembro de 2015 11:49
    sexta-feira, 25 de dezembro de 2015 03:16
  • Olá amigo, feliz natal! obrigado por responder. Eu consegui fazer a aplicação com essa base, eu desenvolvi a minha própria.

    Só que eu tenho uma dúvida ainda. Essa aplicação de teclas eu fiz um macro para me ajudar em um programa que eu administro, pra facilitar minha vida, sabe? Então... minha dúvida é, eu aperto ALT e automaticamente a aplicação aperta VEL com SendKeys, até ai tudo bem... Só que no programa o ALT quando eu aperto não acontece nada, só vai funcionar se eu apertar ALT no programa do VBA, queria que esse ALT fosse mais ou menos global, quando eu apertasse ele em qualquer lugar ou em qualquer programa funcionasse, como faço pra resolver isso? parece estar meio confuso, se você não conseguir entender direito eu posso explicar novamente.

    Obrigado e abraços!

    sexta-feira, 25 de dezembro de 2015 19:24
  • Feliz Natal pra vc tambem amigo ! Bom pra vc aperta uma tecla e ela funfa em um determinado objecto como o bloco de notas vc teria que enviar um comando para o pc falando que essa tecla deve ser aperta em determinado programa bom pra isso vc teria que usa a Dll do Sistema que seria a user32.dll bom um codigo pra te mostra exatamente pra vc eu nao tenho ! mais tenho um projecto de um teclado virtual vc poderia da uma olhada nele talvez seja o que procura

    Download do projecto completo do teclado virtual = https://drive.google.com/file/d/0ByTP_tX3Lc7PemRNbDlGLVNGemc/edit

    Espero ter ajudado vc ! :)

    +um Ex = https://msdn.microsoft.com/pt-br/library/ms171548%28v=vs.110%29.aspx?f=255&MSPPError=-2147217396

     Codigo caso seja isso q vc queira 

    Public Class Form1
    
        Private Declare Function GetAsyncKeyState Lib "user32.dll" (ByVal vKey As Int32) As Int16 'dll user32
    
        Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
            Timer2.Interval = 100
            Timer2.Start()
        End Sub
    
        Private Sub Timer2_Tick(sender As Object, e As EventArgs) Handles Timer2.Tick
            If GetAsyncKeyState(Keys.Q) Then 'quando a tecla q for precionada indepedente de onde for precionada o enter e precionado tambem
                SendKeys.Send("{ENTER}")
            End If
        End Sub
    End Class
    

    Espero ter ajudado bom botei varios ex pois nao entendi bem o que vc quer fazer se der certo por favor avise  :) 

    sexta-feira, 25 de dezembro de 2015 22:57
  • Amigo, esse código que você me forneceu, me ajudou perfeitamente, MUITO obrigado por sua ajuda!

    Eu não sei se é permitido de acordo com as regras, postar outra questão no mesmo tópico, porém eu vou tentar, desejaria saber se é possível, quem usasse o programa, tivesse o IP arquivado na internet, eu sei que é complexo e envolve conexões com banco de dados, mas eu pensei numa coisa mais simples, pegar o IP de quem ta usando o programa e enviar para um arquivo de texto na internet, isso é possível com VBA ou eu estou realmente "brisando"? rs


    @edit: Resumindo: entrar no meu site da internet praticamente e guardar o IP.
    Obrigado :D


    sexta-feira, 25 de dezembro de 2015 23:34
  • E possível sim amigo 
    sábado, 26 de dezembro de 2015 00:54
  • Não consegui achar nada parecido com isso semelhante, só conexão via banco de dados mysql que não é meu caso... poderia me mandar uns links de referência? Obrigado e feliz ano novo.
    domingo, 27 de dezembro de 2015 21:59
  • Vc pode fazer uma coisa mais basica e muito eficaz vc pode criar um arquivo de txt em um site de hospedagem e fazer com que seu programa escrevesse nele todo os ips dos conectados

    ex 

    192.168.100:pc de fulano01

    192.168.101:pc de fulano02

    E assim erra so vc ir ate sua conta e ver os ips que la foi escrito pra isso vc teria que ter uma ideia de html em vb.net      

    Veja se estes links te ajuda em algo 

    01 = http://www.macoratti.net/mysql_vb.htm

    02 = https://www.youtube.com/watch?v=zW0c77XgTIU


    segunda-feira, 28 de dezembro de 2015 16:26
  • Não há nenhuma outra maneira de se fazer isso sem Mysql / conexão com banco de dados? não tem nada mais primitivo rs?

    @edit: Não existe nenhum parametro no Visual Basic que pelo menos concecte no site? só de entrar no site eu consigo fazer um sistema em PHP que pega o IP, isso seria fácil tbm, seria possível isso?

    Obrigado!


    segunda-feira, 28 de dezembro de 2015 22:18
  • E como eu disse so com Mysql  banco de dados e usando hospedagem via html pagina web 
    segunda-feira, 28 de dezembro de 2015 22:35
  • Okay, obrigado pela sua ajuda amigo, irei estudar aqui, abraços!
    segunda-feira, 28 de dezembro de 2015 23:01