Call Api by Name
Posted: 2003-06-01
By: ArchiveBot
Viewed: 87
Filed Under:
No attachments for this post
Call an api by its name without Declare. Usefull for Sripts or if u dont know if the Machine is XP or 95...
Original Author: Scythe
Code
Private Declare Function LoadLibrary Lib "kernel32" Alias "LoadLibraryA" (ByVal lpLibFileName As String) As Long
Private Declare Function GetProcAddress Lib "kernel32" (ByVal hModule As Long, ByVal lpProcName As String) As Long
Private Declare Function CallWindowProc Lib "user32" Alias "CallWindowProcA" (ByVal lpPrevWndFunc As Long, ByVal hWnd As Long, ByVal Msg As Any, ByVal wParam As Any, ByVal lParam As Any) As Long
Private Declare Function FreeLibrary Lib "kernel32" (ByVal hLibModule As Long) As Long
Private Sub Form_Load()
Dim Libary As Long
Dim PrcAdress As Long
On Error GoTo NoApi
'Load the Libary
Libary = LoadLibrary("user32")
'Find the procedure we want
Procadress = GetProcAddress(Libary, "MessageBoxA")
'Call the Api
CallWindowProc Procadress, Me.hWnd, "My Message", "Api without Declare", &H0&
'Unload the libary
FreeLibrary Libary
NoApi:
End Sub
Comments on this post
No comments have been added for this post.
You must be logged in to make a comment.