VBcoders Guest



Don't have an account yet? Register
 


Forgot Password?



Windows API and DLLs-Part-I

by Deepanjan Datta (3 Submissions)
Category: Windows API Call/Explanation
Compatability: Visual Basic 5.0
Difficulty: Intermediate
Date Added: Wed 3rd February 2021
Rating: (8 Votes)

An introduction to Windows API and DLLs!!! Part II on VBC!!! Part III coming soon

Rate Windows API and DLLs-Part-I


Windows
API


 


Full form : API --- Application Programming
Interface


                  
DLL --- Dynamic Link Library


 


The Windows API is a collection of routines available to you,
the Visual Basic programmer. In a way, these API routines are like internal
functions of Visual Basic.


 So many Windows API routines exist that just about
anything you can do from Windows, you can do from a Visual Basic application by
calling the appropriate Windows API routine.


All Windows API routines are stored in files called DLLs.
Several thousand API routines are available for use.


 


Note : Most DLL files have '.DLL' extension.


Any program you write has access to the Windows DLLs.


 


Following are the three most common DLLs :



     

  •  USER32.DLL --- Contains functions that control the
     Windows environment and the user's interface, such as cursors, menus,
     windows etc.

  •  

  •  GDI32.DLL --- Contains functions that control output
     to the screen and other devices.

  •  

  •  KERNEL32.DLL --- Contains functions that control the
     internal Windows hardware and software interface.


There are other DLLs such as COMDLG.DLL, MAPI32.DLL,
NETAPI32.DLL, WINMM.DLL etc.


 


Using the 'Declare'
statement


Calling Windows API routines requires a statement called
'Declare'.


The 'Declare' statement performs the following tasks :



     

  •  Specifies where the API function is located

  •  

  •  Identifies arguments needed by the API function by number
     and data type

  •  

  •  Specifies whether or not the API function returns a value


The following format describes the subroutine procedure version
of the 'Declare' statement :



 
 Declare Sub procName Lib
 "libName" [Alias "alias"] [([ByVal] var1 [As dataType]
 [, [ByVal] var2 [As dataType]] ... [, [ByVal] varN [As dataType])]
 

 Here are two examples :



 
 Declare Function GetWindowsDirectory Lib
 "kernel32" Alias "GetWindowsDirectoryA"_
 

(ByVal lpBuffer As String, ByVal nSize As Long) As
 Long
 


 
 Declare Sub GetSystemInfo Lib
 "kernel32" (lpSystemInfo As SystemInfo)
 

Here is an example for calling a simple API routine:


This example sounds the speaker



 
 Private Declare Function MessageBeep Lib "user32"
 (ByVal wType As Long) As Long
 

Private Sub cmdBeep_Click() 'You need to have a command button named
 cmdBeep for this example to work


 

Dim Beeper As Variant


 

Beeper=MessageBeep(1)


 

End Sub
 


Download this snippet    Add to My Saved Code

Windows API and DLLs-Part-I Comments

No comments have been posted about Windows API and DLLs-Part-I. Why not be the first to post a comment about Windows API and DLLs-Part-I.

Post your comment

Subject:
Message:
0/1000 characters