Visual Basic.NET - Ejecutar API

   
Vista:

Ejecutar API

Publicado por Lunnaticoo (17 intervenciones) el 18/06/2008 22:48:05
Holas...

He estado buscando y no encuentro la forma de ejecutar una API por codigo, encontre 2 paginas q hablan del manejo de API, pero no se como aplicarlas a un boton, q al darle click esta se ejecute.

http://www.elguille.info/vb/API/deshabilitarAltTab.asp
http://www.forosdelweb.com/f69/manual-como-bloquear-ctrl-alt-sup-alt-tab-otros-con-visual-basic-win-xp-235884/

Espesificamente necesito que se ejecute la API de las teclas (ALT + TAB)..

Porfis.. ayuuuuudaaaaaaaa...
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

yo no puedo mandar alt+a

Publicado por neto (19 intervenciones) el 24/07/2008 22:31:29
tambien ando batallando, ya logre meter letras en el bloc de notas (te pongo el codigo), con lo que estoy batallando es como mandarle alt+a, si lo resolviste lo del alt+tab te agradeceria que lo pusieras por aqui.

'--Declaración del Api keybd_event para la presión de tecla
Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Integer
Private Declare Function SetForegroundWindow Lib "user32" Alias "SetForegroundWindow" (ByVal hwnd As Integer) As Integer

Sub Pulsar_Tecla(ByVal Tecla As Long)
Call keybd_event(Tecla, 0, 0, 0)
Call keybd_event(Tecla, 0, KEYEVENTF_KEYUP, 0)
End Sub

Sub SendKeysToApplication(ByVal appTitle As String, ByVal keys As String)
'--Encontrar la aplicación
Dim hWnd As Integer = FindWindow(Nothing, appTitle)
'--Salir si no se encuentra
If (hWnd <= 0) Then
MsgBox("Aplicación no encontrada")
Exit Sub
End If
'--Convertirla en aplicación activa.
SetForegroundWindow(hWnd)
'--Enviar las teclas y esperar.
'--SendKeys.SendWait(keys)
Call Pulsar_Tecla(CType(TextBox1.Text, Long))
End Sub

Const KEYEVENTF_KEYUP = &H2
Const KEYEVENTF_EXTENDEDKEY = &H1

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
'--Make Calculator the foreground application and send it
'--a set of calculations.
SendKeysToApplication("Sin título - Bloc de notas", "VB~")
'--SendKeysToApplication("Calculadora", "1+1=")
End Sub
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:yo no puedo mandar alt+a

Publicado por neto (19 intervenciones) el 24/07/2008 22:53:01
me falto informacon, necesitas un boton y una caja de texto, y ya en la ejecucion a la caja de texto le metes el numero del ascii y ese caracter al darle al boton te lo manda al bloc de notas, si pongo 48 en el texto me manda "0" al bloc de notas, si pongo 65 pues me manda una "a" al bloc de notas, como te mencionaba me falta saber al igual que tu como mandar el alt+a
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

como mandar alt+a

Publicado por neto (19 intervenciones) el 20/08/2008 18:46:49
se presiona el alt
keybd_event(&H12, 0, 0, 0)
se presiona la tecla a
keybd_event(&H41, 0, 0, 0)

se suelta la tecla a
keybd_event(&H41, 0, KEYEVENTF_KEYUP, 0)
se suelta la tecla alt
keybd_event(&H12, 0, KEYEVENTF_KEYUP, 0)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar