[INDICE]
* Sleep
* Findwindow
* Shellexecute
* ShFileOperation
* Copyfile
* SetwindowPost
* Exitprocess
* GetCurrentProcess
* URLDownloadToFile
* GetLogicalDrives
* Keybd_Event
* DoFileDownload
* MoveFile
* TextOut
* GetParent
* SetCursorPos
* BlockInput
* ExitWindowsEx
* GetLogicalTime
* GetCursorPos
* SetWindowText
* GetForegroundWindow
* GetWindowText
* mouse_event
Nombre: Sleep
Declaracion:
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Explicacion: Se usa para generar un retardo.+
Ejemplo de su uso:
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
private sub form_load()
sleep(5000)
msgbox "ya pasaron 5 segundos"
end sub
Nombre: Findwindow
Declaracion:
Private Declare Function FindWindow _
Lib "user32" _
Alias "FindWindowA" ( _
ByVal lpClassName As String, _
ByVal lpWindowName As String) As Long
Explicacion de esta api: Sirve para saber si una ventana esta activa, entre otras cosas.
Ejemplo de su uso:
Private Declare Function FindWindow _
Lib "user32" _
Alias "FindWindowA" ( _
ByVal lpClassName As String, _
ByVal lpWindowName As String) As Long
private sub command1_click()
Dim hola As Long
hola = FindWindow(clase, vbNullString)
If hola<> 0 Then
MsgBox "está abierta"
Else
Nombre: Shellexecute
Declaracion:
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" _
(ByVal hWnd As Long, ByVal lpOperation As String, ByVal _
lpFile As String, ByVal lpParameters As String, ByVal _
lpDirectory As String, ByVal nShowCmd As Long) As Long
Explicacion: Lo que ace esta api es ejecutar archivos.
Ejemplo de su uso: ( este code es de mr.blood, Gracias amigo)
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" _
(ByVal hWnd As Long, ByVal lpOperation As String, ByVal _
lpFile As String, ByVal lpParameters As String, ByVal _
lpDirectory As String, ByVal nShowCmd As Long) As Long
Public Function Archivos(ByVal rute As String, hWnd As String, VBHide As Boolean)
Dim num As Integer
If VBHide = False Then
num = 1
Else
If VBHide = True Then
num = 0
End If
End If
Call ShellExecute(hWnd, "Open", rute, "", "", num)
End Function
es un ejemplo de una dll, para reproducir musica.
Nombre: ShFileOperation
Declaracion:
Private Declare Function SHFileOperation Lib "shell32.dll" Alias "SHFileOperationA" (lpFileOp As SHFILEOPSTRUCT) As Long
Explicacion: Esta api sirve para eliminar un archivo.
Ejemplo de su uso:
Private Declare Function SHFileOperation Lib "shell32.dll" Alias "SHFileOperationA" (lpFileOp As SHFILEOPSTRUCT) As Long
Private Sub Form_Load()
Dim Operacion As SHFILEOPSTRUCT
Dim file As String
file = "c:\Nuevo Documento de texto.txt"
With Operacion
.wFunc = 3
'Este el Path al archivo a eliminar
.pFrom = App.Path & "\" & file
.fFlags = 64
End With
SHFileOperation Operacion
End Sub
Nota: el archivo se elimina en esta linea:
SHFileOperation Operacion
Operacion es el path del archivo a eliminar.
Nombre: Copyfile
Declaracion:
Private Declare Function CopyFile Lib "kernel32" Alias "CopyFileA" (ByVal lpExistingFileName As String, ByVal lpNewFileName As String, ByVal bFailIfExists As Long) As Long
Explicacion: Sirve para copiar un archivo.
Ejemplo de su uso:
Private Declare Function CopyFile Lib "kernel32" Alias "CopyFileA" (ByVal lpExistingFileName As String, ByVal lpNewFileName As String, ByVal bFailIfExists As Long) As Long
Dim Copiar As Long
Copiar = CopyFile(App.Path & "\Drinky.crack", "C:\Drinky.crack", 1)
gracias drinky :D
saludos!
Nombre: SetwindowPost
Declaracion:
Public Declare Function SetWindowPos Lib "user32" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
Explicacion: Sirve para acer uqe este siempre visible una ventana, entre otras cosas.
Ejemplo de su uso:
Public Declare Function SetWindowPos Lib "user32" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
Private Const HWND_TOPMOST = -1
Private Sub Form_Load()
Me.ScaleMode = vbPixels
SetWindowPos Me.hwnd, HWND_TOPMOST, Me.ScaleLeft, Me.ScaleTop, Me.ScaleWidth, Me.ScaleHeight, 0
End Sub
Nombre: Exitprocess
Declaracion:
Private Declare Sub ExitProcess Lib "kernel32" ( _
ByVal uExitCode As Long)
Private Declare Function GetExitCodeProcess Lib "kernel32" ( _
ByVal hProcess As Long, _
lpExitCode As Long) As Long
Explicacion: Sirve para matar un proceso.
Ejemplo de su uso:
Private Declare Sub ExitProcess Lib "kernel32" ( _
ByVal uExitCode As Long)
Private Declare Function GetExitCodeProcess Lib "kernel32" ( _
ByVal hProcess As Long, _
lpExitCode As Long) As Long
ExitProcess GetExitCodeProcess(GetCurrentProcess, 0)
Nota: Esta api va dada de la mano con la api GetCurrentProcess ( explicada mas abajo. si no leen su uso no entenderan tampoco esta api, ya explicada.
Nombre: GetCurrentProcess
Declaracion:
Private Declare Function GetCurrentProcess Lib "kernel32" () As Long
Explicacion: Lee los procesos que hay abiertos.
Ejemplo de su uso: Igual que la api Exitprocess, pero declarando esta. Ya dije antes que estas apis van dadas de la mano.
Cualquier duda sobre ellas pregunten.
Nombre: URLDownloadToFile
Declaracion:
Private Declare Function URLDownloadToFile _
Lib "urlmon" _
Alias "URLDownloadToFileA" ( _
ByVal pCaller As Long, _
ByVal szURL As String, _
ByVal szFileName As String, _
ByVal dwReserved As Long, _
ByVal lpfnCB As Long) As Long
Explicacion: Sirve para descargar archivos.
Ejemplo de su uso:
Private Declare Function URLDownloadToFile _
Lib "urlmon" _
Alias "URLDownloadToFileA" ( _
ByVal pCaller As Long, _
ByVal szURL As String, _
ByVal szFileName As String, _
ByVal dwReserved As Long, _
ByVal lpfnCB As Long) As Long
private sub command1_click()
Call URLDownloadToFile(0, Url, App.Path & "\nombre.drinkyf", 0, 0)
Nota: el primer parametro es la url y el segundo donde se guarda.
Nombre: Keybd_Event
Declaracion:
Se declra de la siguiente forma:
Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, _
ByVal bScan As Byte, _
ByVal dwFlags As Long, _
ByVal dwExtraInfo As Long)
y acen falta dos constantes:
Código:
Const KEYEVENTF_KEYUP = &H2
Const KEYEVENTF_EXTENDEDKEY = &H1
Explicacion: Sirve para simular la pulsacion de teclas.
Ejemplo de su uso:
Const KEYEVENTF_KEYUP = &H2
Const KEYEVENTF_EXTENDEDKEY = &H1
Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, _
ByVal bScan As Byte, _
ByVal dwFlags As Long, _
ByVal dwExtraInfo As Long)
Sub Pulsar_Tecla(Tecla As Long)
Call keybd_event(Tecla, 0, 0, 0)
Call keybd_event(Tecla, 0, KEYEVENTF_KEYUP, 0)
End Sub
Private Sub Timer1_Timer()
Call Pulsar_Tecla(vbKeyTab)
End Sub
Nombre: DoFileDownload.
Declaración:
Declare Function DoFileDownload Lib "shdocvw.dll" (ByVal lpszFile As String) As Long
Explicación: Abre una ventana de descarga {Descarga Archivos}
Ejemplo de Uso:
Private Declare Function DoFileDownload Lib "shdocvw.dll" (ByVal lpszFile As String) As Long
Private Sub Form_Load()
Call DoFileDownload(StrConv("http://foro.portalhacker.net/index.php", vbUnicode))
End Sub
Nombre: MoveFile {Alias MoveFileA}.
Declaración API:
Declare Function MoveFile Lib "kernel32.dll" Alias "MoveFileA" (ByVal lpExistingFileName As String, ByVal lpNewFileName As String) As Long
Explicación: Mueve archivos.
Ejemplo de Uso:
Private Declare Function MoveFile Lib "kernel32.dll" Alias "MoveFileA" _
(ByVal lpExistingFileName As String, ByVal lpNewFileName As String) As Long
Private Sub Form_Load()
Call MoveFile("C:\AutoExec.bat", "D:\AutoExec.bat")
End Sub
Nombre: TextOut {Alias TextOutA}.
Declaración :
Declare Function TextOut Lib "gdi32.dll" Alias "TextOutA" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal lpString As String, ByVal nCount As Long) As Long
Explicación: Dibuja un Texto en un dispositivo a través de su hDC.
Ejemplo de Uso:
Private Declare Function TextOut Lib "gdi32.dll" Alias "TextOutA" _
(ByVal hdc As Long, ByVal x As Long, ByVal y As Long, _
ByVal lpString As String, ByVal nCount As Long) As Long
Private Sub Comman1_Click()
Call TextOut(Form1.hDC, 0, 0, "Hola Mundo!!!", Len("Hola Mundo!!!")
End Sub
Nombre: GetParent.
Declaración:
Declare Function GetParent Lib "user32.dll" (ByVal hwnd As Long) As Long
Explicación: Devuelve en Handle de la ventana Padre de otro Objeto o ventana.
Ejemplo de Uso:
Private Declare Function GetParent Lib "user32.dll" (ByVal hwnd As Long) As Long
Private Sub Form_Load()
MsgBox "El Handle Parent del Form1 es: " & GetParent (Me.hWnd)
End Sub
Nombre: GetLogicalDrives
Declaracion:
Private Declare Function GetLogicalDrives Lib "kernel32" () As Long
Explicacion: Sirve para obtener las unidades del sistema.
Ejemplo de su uso:
Private Declare Function GetLogicalDrives Lib "kernel32" () As Long
Private Sub Command1_Click()
Dim Ret As Long
Dim i As Long
Dim Las_Unidades As String
Ret = GetLogicalDrives
Las_Unidades = "Drives disponibles: "
For i = 0 To 25
If (Ret And 2 ^ i) <> 0 Then
Las_Unidades = Las_Unidades & " " + Chr$(65 + i)
End If
Next i
MsgBox Las_Unidades, vbInformation
End Sub
Private Sub Form_Load()
Command1.Caption = " Obtener los Drives "
End Sub
Nombre:
SetCursorPos
Declaracion:
Public Declare Function SetCursorPos Lib "user32" Alias "SetCursorPos" (ByVal x As Long, ByVal y As Long) As Long
Explicacion:
Mueve el cursor
Ejemplo de uso:
Private Sub Command1_Click()
SetCursorPos 1000, 1000 'Pasa las coordenadas en X y en Y
End Sub
Nombre:
BlockInput
Declaracion:
Public Declare Function BlockInput Lib "user32" (ByVal fBlock As Long) As Long
Explicacion:
Bloquea mouse y teclado
Ejemplo:
Private Sub Command1_Click()
BlockInput True 'O false para desbloquear
End Sub
Nombre:
ExitWindowsEx
Declaracion:
Private Declare Function ExitWindowsEx& Lib "user32" (ByVal uFlags&, ByVal dwReserved&)
Explicacion
Apaga, Reinicia y Cierra sesion.
Ejemplo:
Dim I as integer
Private Sub CmdApagar_Click()
i = ExitWindowsEx(1, 0&) 'Apaga
End Sub
Private Sub CmdCerrar_Click()
i = ExitWindowsEx(0, 0&) 'Cierra sesion
End Sub
Private Sub CmdReiniciar_Click()
i = ExitWindowsEx(2, 0&) 'Reinicia
End Sub
Nombre:
GetLocalTime
Declaracion:
Private Declare Sub GetLocalTime Lib "kernel32" (lpSystemTime As SYSTEMTIME)
Explicacion:
Sirve para obtener la hora,el año, los segundos, etc
Ejemplo de uso:
Option Explicit
Private Declare Sub GetLocalTime Lib "kernel32" (lpSystemTime As SYSTEMTIME)
Private Type SYSTEMTIME
Año As Integer
Mes As Integer
Dia_de_la_semana As Integer
Dia As Integer
Hora As Integer
Minuto As Integer
Segundo As Integer
Milisegundo As Integer
End Type
Private Sub Timer1_Timer()
Dim S As SYSTEMTIME
GetLocalTime S
Me.LblAño = S.Año
Me.LblMes = S.Mes
Me.LblDiaDe = S.Dia_de_la_semana
Me.LblDia = S.Dia
Me.LblHora = S.Hora
Me.LblMinuto = S.Minuto
Me.LblSegundo = S.Segundo
Me.LblMilisegundo = S.Milisegundo
End Sub
Nombre:
GetCursorPos
Declaracion:
Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
Explicacion:
Esta api sirve para obtener las coordenadas del mouse.
Ejemplo de uso:
Option Explicit
Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
Private Type POINTAPI
x As Long
y As Long
End Type
Public Function Coordenadas() As String
Dim Coor As POINTAPI
GetCursorPos Coor
Coordenadas = "Coordenada en x: " & Coor.x & "Cordenada en y: " & Coor.y
End Function
Private Sub timer1_timer()
Me.Caption = Coordenadas
End Sub
Nombre:
SetWindowText
Declaracion:
Private Declare Function SetWindowText Lib "user32" Alias "SetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String) As Long
Explicacion:
Esta api sirve para cambiar el texto de una ventana
Ejemplo de uso:
Option Explicit
Private Declare Function SetWindowText Lib "user32" Alias "SetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String) As Long
Private Sub CmdCambiarTexto_Click()
SetWindowText Me.hwnd, "Aca_va_el_texto"
End Sub
GetForegroundWindow
Declaracion:
Private Declare Function GetForegroundWindow Lib "user32.dll" () As Long
Explicacion:
Devuelve el Handler de la ventana activa.
Ejemplo de uso:
Option Explicit
Private Declare Function GetForegroundWindow Lib "user32.dll" () As Long
Private Declare Function GetAsyncKeyState Lib "user32.dll" (ByVal vKey As Long) As Integer
Private Sub Timer1_Timer()
If GetAsyncKeyState(1) = -32767 Then
MsgBox GetForegroundWindow
End If
End Sub
En este caso hemos utilizado esta api en conjunto con GetAsyncKeyState(), para que en elmomento que se haga un click izquierdo, nos muestre el hWnd (Handler) de la ventana activa
Nombre:
mouse_event
Declaracion:
Private Declare Sub mouse_event Lib "user32.dll" (ByVal dwFlags As Long, ByVal dx As Long, ByVal dy As Long, ByVal cButtons As Long, ByVal dwExtraInfo As Long)
Explicacion:
simula las pulsaciones del mouse.
Ejemplo de uso:
Option Explicit
Private Declare Sub mouse_event Lib "user32.dll" (ByVal dwFlags As Long, ByVal dx As Long, ByVal dy As Long, ByVal cButtons As Long, ByVal dwExtraInfo As Long)
Private Sub Command1_Click()
Call mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)
End Sub
Algunas constantes son:
* Private Const MOUSEEVENTF_LEFTDOWN As Long = &H2
* Private Const MOUSEEVENTF_LEFTUP As Long = &H4
* Private Const MOUSEEVENTF_MIDDLEDOWN As Long = &H20
* Private Const MOUSEEVENTF_MIDDLEUP As Long = &H40
* Private Const MOUSEEVENTF_MOVE As Long = &H1
* Private Const MOUSEEVENTF_RIGHTDOWN As Long = &H8
* Private Const MOUSEEVENTF_RIGHTUP As Long = &H10
* Private Const MOUSEEVENTF_VIRTUALDESK As Long = &H4000
* Private Const MOUSEEVENTF_WHEEL As Long = &H800
* Private Const MOUSEEVENTF_XDOWN As Long = &H80
* Private Const MOUSEEVENTF_XUP As Long = &H100