Appelle une fonction utilisateur ou interne passée dans le premier paramètre.
Call ( "function" [, param_1 [, param_2 [, param_N]]] )
function | Le nom de la fonction ou la fonction à appeler. |
param | Les arguments qui seront passés à la fonction invoquée. |
Succès: | Retourne la valeur de retour de la fonction appelée. De même @error et @extended peuvent contenir des valeurs si la fonction appelée les renseigne. |
Échec: | Retourne @error = 0xDEAD et @extended = 0xBEEF si la fonction n'existe pas ou si le nombre d'arguments n'est pas correct. |
#include <MsgBoxConstants.au3> Example() Func Example() ; Appelle une fonction acceptant aucun argument. Call("Test1") ; Appelle une fonction acceptant un argument et le passe en argument. Call("Test2", "Message from Call()!") ; Montre comment utiliser le tableau spécial d'arguments. Local $aArgs[4] $aArgs[0] = "CallArgArray" ; Cela est nécessaire, sinon, Call() ne reconnaîtra pas le tableau comme contenant des arguments $aArgs[1] = "This is a string" ; Le premier paramètre est une chaîne $aArgs[2] = 47 ; Le paramètre deux est un nombre Local $aArray[2] $aArray[0] = "Array Element 0" $aArray[1] = "Array Element 1" $aArgs[3] = $aArray ; Le paramètre trois est un tableau ; Nous avons construit le tableau spécial, maintenant, appelons la fonction Call("Test3", $aArgs) ; Test de l'appel d'une fonction qui n'existe pas. Cela montre la bonne façon de tester ensemble ; les deux flags @error et @extended qui contiennent les erreurs documentées. Local Const $sFunction = "DoesNotExist" Call($sFunction) If @error = 0xDEAD And @extended = 0xBEEF Then MsgBox($MB_SYSTEMMODAL, "", "La fonction n'existe pas.") EndFunc ;==>Example Func Test1() MsgBox($MB_SYSTEMMODAL, "", "Hello") EndFunc ;==>Test1 Func Test2($sMsg) MsgBox($MB_SYSTEMMODAL, "", $sMsg) EndFunc ;==>Test2 Func Test3($sString, $nNumber, $aArray) MsgBox($MB_SYSTEMMODAL, "", "La chaîne est: " & @CRLF & $sString) MsgBox($MB_SYSTEMMODAL, "", "Le nombre est: " & @CRLF & $nNumber) For $i = 0 To UBound($aArray) - 1 MsgBox($MB_SYSTEMMODAL, "", "Array[" & $i & "] contient:" & @CRLF & $aArray[$i]) Next EndFunc ;==>Test3