Il s'agit simplement de la méthode de passage de paramètres à vos fonctions. Toutefois celà est surtout utilisé dans la déclaration d'API (Application Programming Inteface) , ces fonctions utilisées pour intéragir avec système votre d'exploitation.
Ex d'une api rarement utile en VB (:
Public Declare Function MessageBox Lib "user32" Alias "MessageBoxA" (ByVal hwnd As Long, ByVal lpText As String, ByVal lpCaption As String, ByVal wType As Long) As Long
Pour les débutants je vais vous expliquer tout les termes un
Public => cette fonction sera accessible dans toute l'application
Declare => Signifie que cette fonction est définie dans un fichier Externe (ici : user32.dll)
Function => La déclaration est une fonction (çà renvoit donc une valeur)
Lib=>Le fichier est une librairie (oui j'ai fait des études)
Alias=>Nom d'externalisation de la fonction dans la DLL
Ce qui nous interresse :
ByVal => Cela signifie que l'on passe notre argument par 'valeur' , c'est à dire que la fonction appelée ne travaillera pas directement sur la variable que tu lui passes en paramètre mais sur un clone de celle-ci.
Cela signifie que si le cas écheant la variable est modifiée par la fonction de la DLL ,cela n'aura pas de repercussion sur la variable originale de votre programme.
ByRef=> Ce coup-ci la variable est passée par Référence.
La fonction appelée par l'api reçoit l'adresse de la variable utilisée dans le programme (un genre de pointeur en C pour ceux qui connaissent). Par conséquence si la fonction modifie la variable elle sera aussi modifiée dans le programme si tu la réutilises.
Pas la peine de spécifier que le as Long et le type de la valeur retournée par la fonction (API).
P.S : ByRef est l'accès par défaut si ByVal ou ByRef n'est pas spécifié !)
::TheS@ib::